Re: Jabber Presence and Roster Issue - Client connections not closing on database?

Stephen Marquard <[email protected]> Thu, 06 Jan 2005 20:00:19 +0200
Newsgroups gmane.network.jabber.admin,gmane.network.jabber.exodus.user
Message-ID <[email protected]>
DeMena, Ronald wrote:
> I am sending this to both lists as I feel the problem may exist as a
> combination of factors unknown yet.
> 
> Before this morning, I had the following configuration:
> 
> Solaris 9 OE
> Jabberd 2.0s6 (with IDN, SSL, MYSQL)
> 	libidn 0.5.4
> 	OpenSSL 0.9.7c 30 Sep 2003
> 	mysql  Ver 12.22 Distrib 4.0.20, for sun-solaris2.9 (sparc)
> 
> 101 Users Registered
> Average Roster Size is 45 JID's
> 
> 1st Problem Description: Presence problems are being reported across all
> users, some subscriptions are not showing presence or always pending.
> 2nd Problem Description: 4 Users are using the Exodus 0.9.0.0 Client and
> lose their rosters every time they login and have to re-create them.
> 
> Problem 1 appeared to take care of itself when I updated to JabberD
> 2.0s6 this morning.  The presence information between myself and several
> other users are working again the way we would expect such to.
> 
> Problem 2 is not resolved.  At this time we have found that the rosters
> they generated before the JabberD update were not writing to the MySQL
> database.  Now after we flush the user information for the particular
> use from the database they write out again to the tables.  It appears to
> be independent of the client because if he uses another users client his
> list does not come up there either.
> 
> I am curious what this bug is really about and if it causes a problem on
> the server:
> http://jabberstudio.org/projects/exodus/bugs/view.php?id=479
> 
> And I am curious if the SM or C2S may be part of the problem as I have
> come across some possibilities at:
> http://www.marquard.net/jabber

None of the current patches to 2.0s6 are issues that would cause the 
behaviour you describe.

> Also I read an interesting item which makes me wonder if the server is
> not connecting to the MySQL DB and addressing the DB properly as in:
> http://jabberstudio.org/projects/jabberd2/bugs/view.php?id=4666

That one is about the mysql default timeout period, which is normally 
quite high but can be set by the db admin to a lower setting. You'd 
perhaps see problems if you had a short mysql timeout and long periods 
of inactivity on the jabber server, but it's supposed to reconnect anyway.

> Thinking about MySQL, the DB had not been restarted so I did.  (Brought
> JabberD down, the MySQL down, MySQL up, JabberD up) Now the
> roster-items.MYI file is in use can not be accessed by MySQL
...
> If so is there a bug for this already or feature request?  Client
> connections are not closing out properly...is my final theory, but
> where.

Client connections not closing properly (e.g. laptops going to sleep) 
again would maybe cause some users to show as present who aren't, but 
otherwise shouldn't be an issue wrt roster updates, as those are written 
out to the db immediately.

> I am sorry I don't have debug enabled on my server otherwise I would run
> it for you all.
> 
> Any advice from other Jabber Administrators? Developers? Exodus
> Developers? Branders?

At a guess it's something wrong with the mysql db or setup. You could 
try exporting the db from mysql, deleting and recreating it.

If you can track down the problem to a specific operation from a 
specific client, you could try enabling debug on the server to see 
what's happening, or enable the XML debug view on the client to see if 
the client is doing something unusual.

Regards
Stephen

_______________________________________________
jadmin mailing list
[email protected]
http://mail.jabber.org/mailman/listinfo/jadmin
FAQ: http://www.jabber.org/wiki/index.php/FAQ-JADMIN