Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
0.7
-
None
Description
Numeric values in address parameters are incorrectly interpreted as strings. The following address, run on the c++ client, causes the problem:
my-queue;{create:always,node:{type:queue,x-declare:{arguments:{'qpid.max_count':60}}}}
Reproducer:
$ drain "my-queue;{create:always,node:{type:queue,x-declare:{arguments:{'qpid.max_count':60}}}}"
$ qpid-config queues
Queue Name Attributes
======================================================================
my-queue Failed: TypeError: %d format: a number is required, not str
No only does qpid-config misinterpret the value of the 'qpid.max_count' field, but the broker does as well (i.e. the limit on the queue remains the default).
Note that this works properly when using the Python API. It is an inconsistency in the way addresses are parsed and encoded with Python doing it correctly.
Attachments
Issue Links
- is duplicated by
-
QPID-2908 Creating a ring queue with c++ address strings does not work.
- Closed