JabberHTTPBind 1.1.1

A quick one: Just uploaded JabberHTTPBind 1.1.1. It contains a little fix for a problem with connections using DNS SRV records (like connecting to gmail.com).

8 Responses to JabberHTTPBind 1.1.1 »»


Comments

  1. Comment by Madhuri Patwardhan | 2009/01/09 at 06:11:57

    Hi Steve,

    This was the last correspondence we had about a bug in JabberHttpBind, in March 2008.

    ******************************************************************
    #
    Steve Kommentar by Steve | 2008/04/23 at 10:44:23

    Madhuri, you’re totally right, this is a bug. Access to session objects needs to be synchronized at this point. Guess I’ll have to rework this… (explains some strange behavior I’ve been noticing)

    *******************************************************************

    Any update on session object synchronization? I would appreciate if you could let me know status of this one.

    Thanks,
    Madhuri

  2. Comment by Steve | 2009/01/14 at 21:11:44

    Madhuri, I’m very sorry, I still haven’t fixed this issue. Unfortunately I’m still very busy with other things (”all work and no play …”). I’ll do my best to fix this ASAP.
    Cheers, -Steve

  3. Comment by Madhuri Patwardhan | 2009/03/12 at 04:34:49

    Hi Steve,

    Any update? Have you had a chance to fix this?

    Thanks,
    Madhuri

  4. Comment by Madhuri Patwardhan | 2009/03/23 at 10:58:21

    Hi Steve,

    I understand you are very busy, so, I have modified the code to fix this bug. I have modified JabberHttpBind code to make Session objects synchronized. I will send the modified code to your email address. I will be testing it now. If you get a chance please review it and let me know if you want me to check it in svn repository and how should I check it in. One thing I was wondering about was whether we need to make sendNodes(nodeList n1) method is Session.java synchronized.

    Thanks,
    Madhuri

  5. Comment by Mandar Tengse | 2009/05/31 at 19:08:18

    Hi Madhuri,

    Is it possible for you to share the JabberHttpBind code ….

    regds,
    Mandar

  6. Comment by Madhuri Patwardhan | 2009/06/26 at 15:02:53

    Hi Steve,

    I found one more problem with JabberHTTPBind. Under load it is getting blocked. This is what I see in catalina log.

    ***********************
    Jun 25, 2009 9:26:26 PM org.jabber.JabberHTTPBind.JHBServlet dbg
    INFO: key valid for 419241
    Jun 25, 2009 9:26:29 PM org.jabber.JabberHTTPBind.JHBServlet dbg
    INFO: inQueue: <presence xmlns=”jabber:client” …..
    ****************************

    Notice that after 9:26:26 output appears only at 9:26:29. In mod_jk log I see that during that period 404 error is returned for this servlet.
    The logical place where it is blocked after “key valid for 419241″ statement is Session.readFromSocket(). There is a while loop in there with Thread.sleep(READ_TIMEOUT). READ_TIMEOUT is defined as 1 ms. The question is while it is waiting to read from socket for one request why doesn’t it switch to another request during this 1 ms time. Is 1 ms enough for thread switch? Am I missing something? Why is mod_jk returning 404 for this during that time period. I would appreaciate if you can get back.

    Mandar: I will send my code to you once these issues are ironed out.

    Thanks,
    Madhuri

  7. Comment by Maty | 2009/08/01 at 21:11:52

    Speaking of concurrency and clocking threads, is there a special reason why not to use ConcurrentHashMap instead of Hashtable for storing the sessions?

  8. Comment by Steve | 2009/09/22 at 08:54:38

    Maty, besides I don’t know ConcurrentHashMap I’m pretty sure there isn’t :)


Leave a Reply »»