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/14 17:09:29 UTC
[jira] Created: (QPID-3143) session.createQueue is neither spec
compliant nor backwards compatible
session.createQueue is neither spec compliant nor backwards compatible
----------------------------------------------------------------------
Key: QPID-3143
URL: https://issues.apache.org/jira/browse/QPID-3143
Project: Qpid
Issue Type: Bug
Components: Java Client
Affects Versions: 0.8
Reporter: Rajith Attapattu
Assignee: Rajith Attapattu
Priority: Minor
Fix For: 0.11
According to the JMS API documentation, the createQueue method should not create a physical queue in the broker.
Currently if just a queue name is passed, then the current implementation will create a queue if the destination is used by a consumer or producer.
Before this change was made in rev 964984, an AMQQueue object was created with durable true and a queue was created in the broker when the destination object was used by a consumer.
Therefore current behaviour is neither spec complaint nor backwards compatible.
Suggested improvement would be to just create a destination object with "create" set to "never". When a producer or consumer is created using this destination it will try to resolve if the queue is present, and if not will throw an exception.
Therefore the default behaviour would be spec compliant.
If a user needs to override this behaviour they could easily do so by specifying the correct create option (i.e one of receiver/sender/always).
A user could also use any valid addressing string to create a more customized destination as well.
--
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-3143) session.createQueue is neither spec
compliant nor backwards compatible
Posted by "Robbie Gemmell (Resolved) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/QPID-3143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robbie Gemmell resolved QPID-3143.
----------------------------------
Resolution: Fixed
Resolving, patch applied from a year ago.
> session.createQueue is neither spec compliant nor backwards compatible
> ----------------------------------------------------------------------
>
> Key: QPID-3143
> URL: https://issues.apache.org/jira/browse/QPID-3143
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: 0.8
> Reporter: Rajith Attapattu
> Assignee: Rajith Attapattu
> Priority: Minor
> Fix For: 0.11
>
> Attachments: QPID-3143.patch, QPID-3143.test.patch
>
>
> According to the JMS API documentation, the createQueue method should not create a physical queue in the broker.
> Currently if just a queue name is passed, then the current implementation will create a queue if the destination is used by a consumer or producer.
> Before this change was made in rev 964984, an AMQQueue object was created with durable true and a queue was created in the broker when the destination object was used by a consumer.
> Therefore current behaviour is neither spec complaint nor backwards compatible.
> Suggested improvement would be to just create a destination object with "create" set to "never". When a producer or consumer is created using this destination it will try to resolve if the queue is present, and if not will throw an exception.
> Therefore the default behaviour would be spec compliant.
> If a user needs to override this behaviour they could easily do so by specifying the correct create option (i.e one of receiver/sender/always).
> A user could also use any valid addressing string to create a more customized destination as well.
--
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
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org
[jira] Updated: (QPID-3143) session.createQueue is neither spec
compliant nor backwards compatible
Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/QPID-3143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rajith Attapattu updated QPID-3143:
-----------------------------------
Attachment: QPID-3143.test.patch
Modified the existing test case to test the both default case and the explicit create case.
> session.createQueue is neither spec compliant nor backwards compatible
> ----------------------------------------------------------------------
>
> Key: QPID-3143
> URL: https://issues.apache.org/jira/browse/QPID-3143
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: 0.8
> Reporter: Rajith Attapattu
> Assignee: Rajith Attapattu
> Priority: Minor
> Fix For: 0.11
>
> Attachments: QPID-3143.patch, QPID-3143.test.patch
>
>
> According to the JMS API documentation, the createQueue method should not create a physical queue in the broker.
> Currently if just a queue name is passed, then the current implementation will create a queue if the destination is used by a consumer or producer.
> Before this change was made in rev 964984, an AMQQueue object was created with durable true and a queue was created in the broker when the destination object was used by a consumer.
> Therefore current behaviour is neither spec complaint nor backwards compatible.
> Suggested improvement would be to just create a destination object with "create" set to "never". When a producer or consumer is created using this destination it will try to resolve if the queue is present, and if not will throw an exception.
> Therefore the default behaviour would be spec compliant.
> If a user needs to override this behaviour they could easily do so by specifying the correct create option (i.e one of receiver/sender/always).
> A user could also use any valid addressing string to create a more customized destination as well.
--
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-3143) session.createQueue is neither spec
compliant nor backwards compatible
Posted by "Rajith Attapattu (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/QPID-3143?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rajith Attapattu updated QPID-3143:
-----------------------------------
Attachment: QPID-3143.patch
The attached patch just removes the line which sets create to 'always'.
The default value for create is 'never'.
> session.createQueue is neither spec compliant nor backwards compatible
> ----------------------------------------------------------------------
>
> Key: QPID-3143
> URL: https://issues.apache.org/jira/browse/QPID-3143
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: 0.8
> Reporter: Rajith Attapattu
> Assignee: Rajith Attapattu
> Priority: Minor
> Fix For: 0.11
>
> Attachments: QPID-3143.patch
>
>
> According to the JMS API documentation, the createQueue method should not create a physical queue in the broker.
> Currently if just a queue name is passed, then the current implementation will create a queue if the destination is used by a consumer or producer.
> Before this change was made in rev 964984, an AMQQueue object was created with durable true and a queue was created in the broker when the destination object was used by a consumer.
> Therefore current behaviour is neither spec complaint nor backwards compatible.
> Suggested improvement would be to just create a destination object with "create" set to "never". When a producer or consumer is created using this destination it will try to resolve if the queue is present, and if not will throw an exception.
> Therefore the default behaviour would be spec compliant.
> If a user needs to override this behaviour they could easily do so by specifying the correct create option (i.e one of receiver/sender/always).
> A user could also use any valid addressing string to create a more customized destination as well.
--
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