Bug 893591 - Topic node type must be specified in order to create node/link binding
Summary: Topic node type must be specified in order to create node/link binding
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-java
Version: Development
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: ---
Assignee: messaging-bugs
QA Contact: MRG Quality Engineering
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-01-09 14:43 UTC by Petr Matousek
Modified: 2020-11-04 22:29 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 860011 0 high CLOSED JMS client: node binding not created for topic node 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 870030 0 low NEW "not allowed" error while creating node binding for a default topic node 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 1249659 0 low ASSIGNED not-allowed error while creating binding for a default topic node 2021-11-14 22:29:21 UTC

Internal Links: 860011 870030 1249659

Description Petr Matousek 2013-01-09 14:43:49 UTC
Description of problem:

# java -cp ${CLSSPATH} org.apache.qpid.example.Spout "amq.direct;{create: always,node:{x-bindings: [{ exchange: 'amq.direct', queue: 'q'}]}}"
<snip/>
ExecutionException(errorCode=NOT_ALLOWED, commandId=1, classCode=7, commandCode=1, fieldIndex=0, description=not-allowed: Exchange declared to be of type direct, requested topic
<snip/>

Until qpid-java-*-0.18-5 it was not possible to create node bindings for topic node (Bug 860011). This issue was fixed in qpid-java-*-0.18-5 and the binding was successfully created with the above command.

Starting from qpid-java-*-0.18-6 it is still possible to create bindings for topic node, BUT now the topic type must be specified if the topic type is different from default (type: topic). This applies for both node and link bindings.

So the following command can be used to solve this issue:
# java -cp ${CLSSPATH} org.apache.qpid.example.Spout "amq.direct;{create: always,node:{x-declare:{type:direct},x-bindings: [{ exchange: 'amq.direct', queue: 'q'}]}}"

This issue was also present on previous versions, BUT only if assert was used in the address string, please see Bug 870030.

From my point of view, this is a minor issue as workaround exists, feel free to fix in next version.

Version-Release number of selected component (if applicable):
qpid-java-*-0.18-6

How reproducible:
100%

Steps to Reproduce:
1. qpid-config add queue q
2. java -cp ${CLSSPATH} org.apache.qpid.example.Spout "amq.direct;{create: always,node:{x-bindings: [{ exchange: 'amq.direct', queue: 'q'}]}}"
3. not-allowed exception 
  
Actual results:
The topic type must be specified on creating binding on topic node

Expected results:
It is not necessary to specify the topic type creating binding


Note You need to log in before you can comment on or make changes to this bug.