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: CLOSED UPSTREAM
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: 2025-02-10 03:27 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2025-02-10 03:27:14 UTC
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 CLOSED "not allowed" error while creating node binding for a default topic node 2025-02-10 03:20:59 UTC
Red Hat Bugzilla 1249659 0 low CLOSED not-allowed error while creating binding for a default topic node 2025-02-10 03:47:57 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

Comment 4 Red Hat Bugzilla 2025-02-10 03:27:14 UTC
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.


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