You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ra...@apache.org on 2010/09/17 04:51:23 UTC
svn commit: r997965 -
/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
Author: rajith
Date: Fri Sep 17 02:51:22 2010
New Revision: 997965
URL: http://svn.apache.org/viewvc?rev=997965&view=rev
Log:
QPID-2861
Added a simple null check to eliminate acting on a result that is no longer valid.
I am also adding a log message at "WARN" level if we receive a result for a command that is no longer in our map.
Modified:
qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java?rev=997965&r1=997964&r2=997965&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java Fri Sep 17 02:51:22 2010
@@ -767,7 +767,17 @@ public class Session extends SessionInvo
{
future = results.remove(command);
}
- future.set(result);
+
+ if (future != null)
+ {
+ future.set(result);
+ }
+ else
+ {
+ log.warn("Broker sent a result in response to a command" +
+ " that's no longer valid on the client side." +
+ " [ command id : %s , result : %s ]",command, result);
+ }
}
void setException(ExecutionException exc)
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org
Re: svn commit: r997965 - /qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
Posted by Gordon Sim <gs...@redhat.com>.
On 09/17/2010 03:51 AM, rajith@apache.org wrote:
> Author: rajith
> Date: Fri Sep 17 02:51:22 2010
> New Revision: 997965
>
> URL: http://svn.apache.org/viewvc?rev=997965&view=rev
> Log:
> QPID-2861
> Added a simple null check to eliminate acting on a result that is no longer valid.
> I am also adding a log message at "WARN" level if we receive a result for a command that is no longer in our map.
>
> Modified:
> qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
>
> Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
> URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java?rev=997965&r1=997964&r2=997965&view=diff
> ==============================================================================
> --- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java (original)
> +++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java Fri Sep 17 02:51:22 2010
> @@ -767,7 +767,17 @@ public class Session extends SessionInvo
> {
> future = results.remove(command);
> }
> - future.set(result);
> +
> + if (future != null)
> + {
> + future.set(result);
> + }
> + else
> + {
> + log.warn("Broker sent a result in response to a command" +
> + " that's no longer valid on the client side." +
> + " [ command id : %s , result : %s ]",command, result);
I don't believe this is actually what is occurring here. The broker is
not sending responses to commands issued prior to failover, I believe
the client is getting confused in some other way.
I have no issue with the null check, but I think the warning is incorrect.
> + }
> }
>
> void setException(ExecutionException exc)
>
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project: http://qpid.apache.org
> Use/Interact: mailto:commits-subscribe@qpid.apache.org
>
>
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org