Qpid
  1. Qpid
  2. QPID-4441

[Java broker] queue declare arguments are lost during v6 schema update for the optional bdbstore

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.18
    • Fix Version/s: 0.19, 0.20
    • Component/s: Java Broker
    • Labels:
      None

      Description

      The queue declare arguments are lost during v5 -> v6 store schema update for the optional bdbstore. This will present itself in a variety of ways, such as a DLQ losing the marker argument used to prevent chained DLQ creation, and also in Priority and Sorted queues becoming regular queues.

      As part of the schema update, the old FieldTable binary encoding for the queue arguments is transitioned to a property within the larger JSON ConfiguredObject encoding. This process makes use of an intermediate FieldTable to which it does an addAll() based copy of the original FieldTable and then potentially adds a new description argument. This addAll() fails to copy the previous properties due to a defect in the method, wherby the source FieldTables lack of use after creation from encoded bytes means they have yet to be decoded and this is in effect mistaken as it being an empty FieldTable.

        Activity

          People

          • Assignee:
            Robbie Gemmell
            Reporter:
            Robbie Gemmell
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development