You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rajith Attapattu (JIRA)" <ji...@apache.org> on 2011/03/31 23:25:06 UTC

[jira] [Created] (QPID-3177) JMS Failover Not Working

JMS Failover Not Working
------------------------

                 Key: QPID-3177
                 URL: https://issues.apache.org/jira/browse/QPID-3177
             Project: Qpid
          Issue Type: Bug
    Affects Versions: 0.10
            Reporter: Rajith Attapattu
            Assignee: Rajith Attapattu
            Priority: Blocker
             Fix For: 0.10


The JMS failover is not working due to a regression introduced in rev 1071631.
More specifically the reason is the following line being removed.

@@ -257,12 +256,14 @@
         ConnectionClose close = exc.getClose();
         if (close == null)
         {
+            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
+            
             try
             {
                 if (_conn.firePreFailover(false) && _conn.attemptReconnection())
                 {
                     _conn.failoverPrep();
-                    _qpidConnection.resume();   ---- > This line is removed in this comment.
+                    _conn.resubscribeSessions();
                     _conn.fireFailoverComplete();
                     return;
                 }

On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
It if it was, then what was the reason behind it? 

The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3177) JMS Failover Not Working

Posted by "Andrew Kennedy (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014840#comment-13014840 ] 

Andrew Kennedy commented on QPID-3177:
--------------------------------------

I thought Rajith was responsible for the broker component changes?

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3177) JMS Failover Not Working

Posted by "Justin Ross (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014834#comment-13014834 ] 

Justin Ross commented on QPID-3177:
-----------------------------------

This issue is still awaiting review by a component maintainer.  I'll go ahead and give my approval for 0.10, conditioned upon favorable said review, so that this can be committed promptly.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Assigned] (QPID-3177) JMS Failover Not Working

Posted by "Andrew Kennedy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy reassigned QPID-3177:
------------------------------------

    Assignee: Robbie Gemmell  (was: Rajith Attapattu)

Can you review this fix, for potential inclusion in the 0.10 releaase, please?

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Robbie Gemmell
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3177) JMS Failover Not Working

Posted by "Andrew Kennedy (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014817#comment-13014817 ] 

Andrew Kennedy commented on QPID-3177:
--------------------------------------

Yes, this is accidental. Thank's for spotting it. I had intended to refactor this more completely, and part of that involved moving the connection resume to resubscribeSessions, which is called indirectly. I have replaced this call.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.10
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3177) JMS Failover Not Working

Posted by "Justin Ross (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014843#comment-13014843 ] 

Justin Ross commented on QPID-3177:
-----------------------------------

This is close enough to the end that I'd like to get Rob or Robbie to weigh in as well.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Updated] (QPID-3177) JMS Failover Not Working

Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rajith Attapattu updated QPID-3177:
-----------------------------------

      Description: 
The JMS failover is not working due to a regression introduced in rev 1071631.
More specifically the reason is the following line being removed.

@@ -257,12 +256,14 @@
         ConnectionClose close = exc.getClose();
         if (close == null)
         {
+            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
+            
             try
             {
                 if (_conn.firePreFailover(false) && _conn.attemptReconnection())
                 {
                     _conn.failoverPrep();
-                    _qpidConnection.resume();   ---- > This line is removed in this commit.
+                    _conn.resubscribeSessions();
                     _conn.fireFailoverComplete();
                     return;
                 }

On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
It if it was, then what was the reason behind it? 

The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
However I'd like to look at more information regarding the context of the above change before making a final decision.

  was:
The JMS failover is not working due to a regression introduced in rev 1071631.
More specifically the reason is the following line being removed.

@@ -257,12 +256,14 @@
         ConnectionClose close = exc.getClose();
         if (close == null)
         {
+            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
+            
             try
             {
                 if (_conn.firePreFailover(false) && _conn.attemptReconnection())
                 {
                     _conn.failoverPrep();
-                    _qpidConnection.resume();   ---- > This line is removed in this comment.
+                    _conn.resubscribeSessions();
                     _conn.fireFailoverComplete();
                     return;
                 }

On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
It if it was, then what was the reason behind it? 

The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
However I'd like to look at more information regarding the context of the above change before making a final decision.

    Fix Version/s:     (was: 0.11)
                   0.10

The failover issue was noticed before (due to test failures) and it was on my todo list to investigate.
But there was a steady stream of issues that I had to deal with, hence the delay in getting to it.

I have spent a lot of time working on the failover/transport code for several bugs Ex. QPID-3043, QPID-3042, QPID-2876,QPID-2861, QPID-2808, QPID-2994 ..etc
The failover code is probably one of more fragile areas in the code base to say the least.
Some of these issues cannot be tested with automated test cases due to various limitations, hence difficult to catch certain regressions.
I need to get the python testkit working properly as it's a lot more flexible than the ant tests seems to be able to reproduce a few of the client and broker bugs we had in the past.

I plan to retest the failover area manually for some of the above issues. Post release I am planning to get the testkit running more frequently.
I have tested this particular fix, but also plan more comprehensive tests around this area.


> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Robbie Gemmell
>            Priority: Blocker
>             Fix For: 0.10
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this commit.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Resolved] (QPID-3177) JMS Failover Not Working

Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rajith Attapattu resolved QPID-3177.
------------------------------------

    Resolution: Fixed

Committed the fix to the 0.10 release branch.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Robbie Gemmell
>            Priority: Blocker
>             Fix For: 0.10
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this commit.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3177) JMS Failover Not Working

Posted by "Robbie Gemmell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015321#comment-13015321 ] 

Robbie Gemmell commented on QPID-3177:
--------------------------------------

The change looks to restore the original behaviour and so seems ok from that perspective, however I am concerned it took around 6 weeks to notice it wasn't working though; can we really be sure it is working after the change in that case?

The JIRA needs updated with a fix-for of 0.10 if it is backported.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Robbie Gemmell
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Issue Comment Edited] (QPID-3177) JMS Failover Not Working

Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015409#comment-13015409 ] 

Rajith Attapattu edited comment on QPID-3177 at 4/4/11 1:45 PM:
----------------------------------------------------------------

The failover issue was noticed before (due to test failures) and it was on my todo list to investigate.
But there was a steady stream of issues that I had to deal with, hence the delay in getting to it.

I have spent a lot of time working on the failover/transport code for several bugs Ex. QPID-3043, QPID-3042, QPID-2876,QPID-2861, QPID-2808, QPID-2994 ..etc
The failover code is probably one of more fragile areas in the code base to say the least.
Some of these issues cannot be tested with automated test cases due to various limitations, hence difficult to catch certain regressions/bugs.
I need to get the python testkit working properly as it's a lot more flexible than the ant tests. It also seems to be able to reproduce a few of the client and broker bugs we had in the past.

I plan to retest the failover area manually for some of the above issues. Post release I am planning to get the testkit running more frequently.
I have tested this particular fix, but also plan more comprehensive tests around this area.


      was (Author: rajith):
    The failover issue was noticed before (due to test failures) and it was on my todo list to investigate.
But there was a steady stream of issues that I had to deal with, hence the delay in getting to it.

I have spent a lot of time working on the failover/transport code for several bugs Ex. QPID-3043, QPID-3042, QPID-2876,QPID-2861, QPID-2808, QPID-2994 ..etc
The failover code is probably one of more fragile areas in the code base to say the least.
Some of these issues cannot be tested with automated test cases due to various limitations, hence difficult to catch certain regressions.
I need to get the python testkit working properly as it's a lot more flexible than the ant tests seems to be able to reproduce a few of the client and broker bugs we had in the past.

I plan to retest the failover area manually for some of the above issues. Post release I am planning to get the testkit running more frequently.
I have tested this particular fix, but also plan more comprehensive tests around this area.

  
> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Robbie Gemmell
>            Priority: Blocker
>             Fix For: 0.10
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this commit.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Reopened] (QPID-3177) JMS Failover Not Working

Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rajith Attapattu reopened QPID-3177:
------------------------------------


Andrew thanks for putting the missing method call back into the code.

I am reopening the JIRA until we port the fix to 0.10 release branch.

At this point I am treating this as a blocker for the 0.10 release as the JMS failover is a critical piece and is obviously a regression from our previous release.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Resolved] (QPID-3177) JMS Failover Not Working

Posted by "Andrew Kennedy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3177?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy resolved QPID-3177.
----------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 0.10)
                   0.11

Fixed on trunk. As this is a regression, it should be ported to the 0.10 branch as well.

> JMS Failover Not Working
> ------------------------
>
>                 Key: QPID-3177
>                 URL: https://issues.apache.org/jira/browse/QPID-3177
>             Project: Qpid
>          Issue Type: Bug
>    Affects Versions: 0.10
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>            Priority: Blocker
>             Fix For: 0.11
>
>
> The JMS failover is not working due to a regression introduced in rev 1071631.
> More specifically the reason is the following line being removed.
> @@ -257,12 +256,14 @@
>          ConnectionClose close = exc.getClose();
>          if (close == null)
>          {
> +            _conn.getProtocolHandler().setFailoverLatch(new CountDownLatch(1));
> +            
>              try
>              {
>                  if (_conn.firePreFailover(false) && _conn.attemptReconnection())
>                  {
>                      _conn.failoverPrep();
> -                    _qpidConnection.resume();   ---- > This line is removed in this comment.
> +                    _conn.resubscribeSessions();
>                      _conn.fireFailoverComplete();
>                      return;
>                  }
> On the surface this seems like a unintended omission. However I'd like to investigate it further and find out if this was intentional.
> It if it was, then what was the reason behind it? 
> The obvious fix is to re-introduce this line. I have done so and preliminary tests indicates that it will resolve the issue. I haven't seen any other issues.
> However I'd like to look at more information regarding the context of the above change before making a final decision.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org