Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-2896

Incorrect detection of data types in address parameters - C++ client

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.7
    • 0.7
    • C++ Client
    • 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

          Activity

            People

              jonathan.robie Jonathan Robie
              tross Ted Ross
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: