7 Replies Latest reply on Feb 27, 2003 9:52 AM by Pavan Gattu

    client acknowledge mode not working properly

    eddy Newbie

      I creat an session using CLIENT_ACKNOWLEDGE mode. Then, I use the a JMSListener to receive the message without calling the acknowledge method. I expected the message will redeliver again. However, the message wouldn't redeliver until I restart the server.

      Thanks in advance

        • 1. Re: client acknowledge mode not working properly
          Hiram Chirino Expert

          what version etc. etc..

          • 2. Re: client acknowledge mode not working properly
            eddy Newbie

            Jboss 2.4.1 on window 2000

            • 3. Re: client acknowledge mode not working properly
              eddy Newbie

              Also, I look at the souce code of the SpyConnection class. The recover method is not able to invoke properly, since this method simply calls the rollback method; however, the rollback method can only be invoked, if the transaction is transacted. It contradicts to the recover method.

              And, during a transacted queue session, after a client receive a message and close the session without calling any commit/rollback method, the message will be disappeared until the server get restarted. I think all the messages should rollback after a session is closed.

              • 4. Re: client acknowledge mode not working properly
                eddy Newbie

                I am wrong. If the session close properly, the transaction does rollback.And no message get lost. However, I didn't close the session. I just kill my jms client using ctl-c. Then, the message will get lost until the server get restarted. What I suspected, the JBoss server maintain a pool of jms connections. And the connections doesn't refresh until the server get restarted. I tried to set the IdleTimeOut, GCTimeInterval properties in the jboss.jcml file. However, It doesn't seem to work.

                • 5. Re: client acknowledge mode not working properly
                  Alexander Rabinowitz Newbie

                  I have a problem using JBossMQ.
                  The problem looks to be the same as described in here, or similar to that.

                  I have a transacted queue, not a CLIENT_ACKNOWLEDGE as described in the previous message.
                  I have JBoss 2.4.4 running on my Windows 2000 server computer. The server sends messages to a transacted queue.
                  I also have a remote client, connected to JBoss, which is trying to read JMS messages from this queue, and located on a remote location on the net.

                  Then the network connection is lost.
                  So, the remote client cannot properly close QueueConnection, because a proper network connection is required for that. That is where the problem occurs.
                  When the network connection is reestablished, the client is trying to reread the JMS messages from the queue. However, it looks like the first message is lost. Even though it has never been
                  read and no corresponding transaction is committed, it is lost.
                  All the other messages are accepted OK by the remote client, who has to open new QueueConnection. But not the first one. When I look at the queue with
                  QueueBrowserExample class, this message does not appear. However, when I restart JBoss, it appears back to the queue, and is perfectly delivered to the remote
                  client, who is now able to receive the message.

                  The problem does not have a workaround, and I really do not know what to do with it.
                  Does anybody have any idea what to do?

                  • 6. Re: client acknowledge mode not working properly
                    Alexander Rabinowitz Newbie

                    Actually, I see that the same kind of problem has been noticed by a number of people - it is present here on the forum in the following posts:
                    http://www.jboss.org/modules/bb/index.html?module=bb&op=viewtopic&t=forums/ forgot to mention - I am using Java 1.3.1_06 on both my server computer and my remote client computer.

                    • 7. Re: client acknowledge mode not working properly
                      Pavan Gattu Newbie

                      Did any one find the solution for this or not yet. I am still facing the same problem. I am using JDK1.4, and JBoss3.0.4