[Pidgin] #9015: Incorrect Implementation of XMPP Ping

Pidgin trac at pidgin.im
Wed May 20 23:49:36 EDT 2009


#9015: Incorrect Implementation of XMPP Ping
-------------------------+--------------------------------------------------
 Reporter:  niraj19july  |        Owner:  deryni 
     Type:  defect       |       Status:  closed 
Milestone:               |    Component:  XMPP   
  Version:  2.5.5        |   Resolution:  invalid
 Keywords:               |  
-------------------------+--------------------------------------------------
Changes (by deryni):

  * status:  new => closed
  * resolution:  => invalid


Comment:

 The openfire issue is a *serious* bug in openfire (it was dropping IQ
 stanzas without response, that is explicitely not allowed by the XMPP
 RFCs, so working around that is not a compelling reason to do anything in
 pidgin).

 Yes, the pidgin ping behaviour is far from optimal. We ping too
 frequently, we fail too quickly and, we fail too hard. All of those are
 things which should be fixed (and for which patches would be very very
 welcome), none of those are things that not using XMPP Ping correctly
 fixes.

 Assuming that the server will eventually handle your request means pidgin
 can never consider a connection 'dead' and drop it (without waiting for
 the TCP connection itself to timeout, which is a very long wait). The
 entire point of these pings is to let pidgin notice the connection failure
 sooner, disconnect sooner, and reconnect sooner to minimise the negative
 effects of a connection issue. Moving away from them is asking to bring
 back long disconnection delays and long "I think I'm online, but I'm not
 really" periods, something no user actually likes.

 It seems your complaint is that you use some servers which either fail to
 respond to pings (and desperately need to be fixed) or are overloaded to
 the point of missing our ping window. As I said, I feel no need to do
 anything to make the former work better but I am more than willing to
 accept patches or discuss ways to make the latter work better.

 Given that I'm going to close this ticket as invalid because it is, if you
 wish to discuss the timeout length and the way we handle the timeout
 please file a new ticket on that topic. If you feel I still have not
 understood your argument feel free to continue trying to make me
 understand here.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/9015#comment:7>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list