[jira] [Created] (QPID-4162) AlternateExchangeTests.test_queue_autodelete occasionally fails with ProtocolViolationException on Java Broker

2012-07-22 Thread Keith Wall (JIRA)
Keith Wall created QPID-4162:


 Summary: AlternateExchangeTests.test_queue_autodelete occasionally 
fails with ProtocolViolationException on Java Broker
 Key: QPID-4162
 URL: https://issues.apache.org/jira/browse/QPID-4162
 Project: Qpid
  Issue Type: Bug
  Components: Java Broker, Python Test Suite
Affects Versions: 0.16, 0.17
 Environment: Ubuntu (Apache CI slaves) and Mac OS X 10.6.8

Reporter: Keith Wall
Assignee: Keith Wall


As exemplified by builds [build 279|builds 
https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/279/] 
and [build 284|builds 
https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/284/], 
test 
qpid_tests.broker_0_10.alternate_exchange.AlternateExchangeTests.test_queue_autodelete
 is occasionally seen to fail against only the Java Broker.

{noformat}
Error during test:  Traceback (most recent call last):
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid-python-test,
 line 340, in run
  phase()
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 231, in test_queue_autodelete
  self.assertEmpty(dlq)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 351, in assertEmpty
  msg = queue.get(timeout=1)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid/queue.py,
 line 55, in get
  raise Closed(self.error)
  Closed: (None, 'connection aborted')
{noformat}








--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Updated] (QPID-4162) AlternateExchangeTests.test_queue_autodelete occasionally fails with ProtocolViolationException on Java Broker

2012-07-22 Thread Keith Wall (JIRA)

 [ 
https://issues.apache.org/jira/browse/QPID-4162?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Keith Wall updated QPID-4162:
-

Description: 
As exemplified by builds [build 
279|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/279/]
 and [build 
284|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/284/],
 test 
qpid_tests.broker_0_10.alternate_exchange.AlternateExchangeTests.test_queue_autodelete
 is occasionally seen to fail against only the Java Broker.

{noformat}
Error during test:  Traceback (most recent call last):
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid-python-test,
 line 340, in run
  phase()
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 231, in test_queue_autodelete
  self.assertEmpty(dlq)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 351, in assertEmpty
  msg = queue.get(timeout=1)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid/queue.py,
 line 55, in get
  raise Closed(self.error)
  Closed: (None, 'connection aborted')
{noformat}








  was:
As exemplified by builds [build 279|builds 
https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/279/] 
and [build 284|builds 
https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/284/], 
test 
qpid_tests.broker_0_10.alternate_exchange.AlternateExchangeTests.test_queue_autodelete
 is occasionally seen to fail against only the Java Broker.

{noformat}
Error during test:  Traceback (most recent call last):
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid-python-test,
 line 340, in run
  phase()
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 231, in test_queue_autodelete
  self.assertEmpty(dlq)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
 line 351, in assertEmpty
  msg = queue.get(timeout=1)
File 
/home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid/queue.py,
 line 55, in get
  raise Closed(self.error)
  Closed: (None, 'connection aborted')
{noformat}










*Background*

Test fails with an assert failure at line 231:

{code:title=alternate_exchange.py}
 self.assertEqual(Three, dlq.get(timeout=2).body)
{code}

the test tries to check for the presence of message Three, but finds the queue 
has already been marked as closed (on the client side by Session#close). The 
queue is being marked as closed in the response to the Broker closing the 
socket *abruptly*. The Broker is closing the socket owning to a 
ProtocolViolationException.

{noformat}
2012-07-21 00:40:06,070 DEBUG [IoReceiver - /127.0.0.1:60612] (Logger.java:54) 
- connection closed: conn:1a9d267d
{noformat}

Exception (not logged):
{noformat}
org.apache.qpid.transport.ProtocolViolationException: Received frames for an 
already detached session
at org.apache.qpid.transport.Connection.dispatch(Connection.java:445)
at 
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
at 
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
at 
org.apache.qpid.transport.MethodDelegate.sessionCompleted(MethodDelegate.java:92)
at 
org.apache.qpid.transport.SessionCompleted.dispatch(SessionCompleted.java:88)
at 
org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
at 
org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
at org.apache.qpid.transport.Method.delegate(Method.java:163)
at org.apache.qpid.transport.Connection.received(Connection.java:379)
at 
org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:212)
at 
org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:56)
at org.apache.qpid.transport.network.Assembler.emit(Assembler.java:97)
at 
org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:183)
{noformat}

*Cause*

Broker generates the ProtocolViolationException in response to a 
SessionCompleted command received from the client *after* it has already 
processed the SessionDetach.

The reason the sporadic nature of the test failure is due to a race.

The Broker sends a SessionFlush at approximately the same time the client is 
closing the session (session2.close() line 225). If the client responds to the 
flush before it sends its SessionDetach all is well.  However, if the client 
sends its 

[jira] [Comment Edited] (QPID-4162) AlternateExchangeTests.test_queue_autodelete occasionally fails with ProtocolViolationException on Java Broker

2012-07-22 Thread Keith Wall (JIRA)

[ 
https://issues.apache.org/jira/browse/QPID-4162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420145#comment-13420145
 ] 

Keith Wall edited comment on QPID-4162 at 7/22/12 11:05 AM:


As the client should be allowed to session.close() whenever it likes 
(regardless of what controls are already on the wire), I see this as a Java 
Broker issue. It does not respect the AMPQ 0.10 spec:

{quote}
The transport MUST be attached in order to use any control other than attach, 
attached, detach, or detached. A peer receiving any other control on a 
detached transport MUST discard it and send a session.detached with the 
not-attached reason code.
{quote}

The _Broker_ gets its current behaviour (throw the PVE) from QPID-2176 (I'm not 
certain if this was intentional as this Jira was resolving a client defect.  I 
think we should change to Broker to conform to the spec i.e. return a 
SessionDetached control with SessionDetachCode.NOT_ATTACHED reason.  The Python 
implementation connection.py line 101 already has the appropriate guards in 
place to safely ignore the 'extra' SessionDetached control.

I tested this change locally, and it appears to resolve the issue.

Any thoughts?




   

  was (Author: k-wall):
As the client should be allowed to session.close() whenever it likes 
(regardless of what commands are already on the wire), I see this as a Java 
Broker issue. It does not respect the AMPQ 0.10 spec:

{quote}
The transport MUST be attached in order to use any control other than attach, 
attached, detach, or detached. A peer receiving any other control on a 
detached transport MUST discard it and send a session.detached with the 
not-attached reason code.
{quote}

The _Broker_ gets its current behaviour (throw the PVE) from QPID-2176 (I'm not 
certain if this was intentional as this Jira was resolving a client defect.  I 
think we should change to Broker to conform to the spec i.e. return a 
SessionDetached control with SessionDetachCode.NOT_ATTACHED reason.  The Python 
implementation connection.py line 101 already has the appropriate guards in 
place to safely ignore the 'extra' SessionDetached control.

I tested this change locally, and it appears to resolve the issue.

Any thoughts?




   
  
 AlternateExchangeTests.test_queue_autodelete occasionally fails with 
 ProtocolViolationException on Java Broker
 --

 Key: QPID-4162
 URL: https://issues.apache.org/jira/browse/QPID-4162
 Project: Qpid
  Issue Type: Bug
  Components: Java Broker, Python Test Suite
Affects Versions: 0.16, 0.17
 Environment: Ubuntu (Apache CI slaves) and Mac OS X 10.6.8
Reporter: Keith Wall
Assignee: Keith Wall

 As exemplified by builds [build 
 279|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/279/]
  and [build 
 284|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/284/],
  test 
 qpid_tests.broker_0_10.alternate_exchange.AlternateExchangeTests.test_queue_autodelete
  is occasionally seen to fail against only the Java Broker.
 {noformat}
 Error during test:  Traceback (most recent call last):
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid-python-test,
  line 340, in run
   phase()
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
  line 231, in test_queue_autodelete
   self.assertEmpty(dlq)
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
  line 351, in assertEmpty
   msg = queue.get(timeout=1)
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid/queue.py,
  line 55, in get
   raise Closed(self.error)
   Closed: (None, 'connection aborted')
 {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Commented] (QPID-4162) AlternateExchangeTests.test_queue_autodelete occasionally fails with ProtocolViolationException on Java Broker

2012-07-22 Thread Keith Wall (JIRA)

[ 
https://issues.apache.org/jira/browse/QPID-4162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13420145#comment-13420145
 ] 

Keith Wall commented on QPID-4162:
--

As the client should be allowed to session.close() whenever it likes 
(regardless of what commands are already on the wire), I see this as a Java 
Broker issue. It does not respect the AMPQ 0.10 spec:

{quote}
The transport MUST be attached in order to use any control other than attach, 
attached, detach, or detached. A peer receiving any other control on a 
detached transport MUST discard it and send a session.detached with the 
not-attached reason code.
{quote}

The _Broker_ gets its current behaviour (throw the PVE) from QPID-2176 (I'm not 
certain if this was intentional as this Jira was resolving a client defect.  I 
think we should change to Broker to conform to the spec i.e. return a 
SessionDetached control with SessionDetachCode.NOT_ATTACHED reason.  The Python 
implementation connection.py line 101 already has the appropriate guards in 
place to safely ignore the 'extra' SessionDetached control.

I tested this change locally, and it appears to resolve the issue.

Any thoughts?




   

 AlternateExchangeTests.test_queue_autodelete occasionally fails with 
 ProtocolViolationException on Java Broker
 --

 Key: QPID-4162
 URL: https://issues.apache.org/jira/browse/QPID-4162
 Project: Qpid
  Issue Type: Bug
  Components: Java Broker, Python Test Suite
Affects Versions: 0.16, 0.17
 Environment: Ubuntu (Apache CI slaves) and Mac OS X 10.6.8
Reporter: Keith Wall
Assignee: Keith Wall

 As exemplified by builds [build 
 279|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/279/]
  and [build 
 284|https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-Python-Java-Test/284/],
  test 
 qpid_tests.broker_0_10.alternate_exchange.AlternateExchangeTests.test_queue_autodelete
  is occasionally seen to fail against only the Java Broker.
 {noformat}
 Error during test:  Traceback (most recent call last):
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid-python-test,
  line 340, in run
   phase()
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
  line 231, in test_queue_autodelete
   self.assertEmpty(dlq)
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/alternate_exchange.py,
  line 351, in assertEmpty
   msg = queue.get(timeout=1)
 File 
 /home/jenkins/jenkins-slave/workspace/Qpid-Python-Java-Test/trunk/qpid/python/qpid/queue.py,
  line 55, in get
   raise Closed(self.error)
   Closed: (None, 'connection aborted')
 {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Closed] (QPID-4161) Move the build system to CMake

2012-07-22 Thread Andrew Stitcher (JIRA)

 [ 
https://issues.apache.org/jira/browse/QPID-4161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Stitcher closed QPID-4161.
-

Resolution: Duplicate

This is a duplicate of QPID-3633

 Move the build system to CMake
 --

 Key: QPID-4161
 URL: https://issues.apache.org/jira/browse/QPID-4161
 Project: Qpid
  Issue Type: Improvement
  Components: Build Tools
Reporter: Darryl L. Pierce

 The Cmake system needs to be updated so that it can replace the existing 
 autotools system.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira



-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org