Qpid
  1. Qpid
  2. QPID-4609

Incorrect lock in the synchronize statement in org.apache.qpid.server.model.adapter.BrokerAdapter

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 0.21
    • Fix Version/s: 0.21
    • Component/s: Java Broker
    • Labels:
      None

      Description

      The getTrustStores() and getKeyStores() methods of the BrokerAdapter class seem use both the _trustStores object as a lock for the sychronize statement:

      @Override
      public Collection<KeyStore> getKeyStores()
      {
      synchronized(_trustStores)

      { return Collections.unmodifiableCollection(_keyStores.values()); }

      }

      @Override
      public Collection<TrustStore> getTrustStores()
      {
      synchronized(_trustStores)

      { return Collections.unmodifiableCollection(_trustStores.values()); }

      }

      Is that a bug? I would assume that the getKeyStores method should use the _keyStores object instead of _trustStores.

        Activity

        Hide
        Alex Rudyy added a comment -

        Hi Jakub,

        You are absolutely right. It is a bug. I committed a fix in revision http://svn.apache.org/r1451243 . Thanks for pointing out the issue.

        Show
        Alex Rudyy added a comment - Hi Jakub, You are absolutely right. It is a bug. I committed a fix in revision http://svn.apache.org/r1451243 . Thanks for pointing out the issue.
        Hide
        Alex Rudyy added a comment -

        Robbie,
        Could you please review the change?

        Show
        Alex Rudyy added a comment - Robbie, Could you please review the change?
        Hide
        Robbie Gemmell added a comment -

        Seems good to me.

        Show
        Robbie Gemmell added a comment - Seems good to me.

          People

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

            Dates

            • Created:
              Updated:
              Resolved:

              Development