Cayenne
  1. Cayenne
  2. CAY-1680

Get rid of shared locks in DataDomain metadata lookups

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.1M3
    • Fix Version/s: 3.1B1
    • Component/s: Core Library
    • Labels:
      None

      Description

      We can improve performance by using concurrent collections instead of synchronizing the HashMap. This includes:

      DataDomain.properties
      DataDomain.nodes
      DataDomain.nodesByDataMapName

      Also instead of reindexing on failed lookups, we can simply lazy-fill collection from a given DataMap

        Activity

        Andrus Adamchik created issue -
        Andrus Adamchik made changes -
        Field Original Value New Value
        Summary DataDomain.lookupNode - use concurrent collection instead of synchronizing the HashMap Get rid of shared lock - DataDomain.lookupNode
        Andrus Adamchik made changes -
        Summary Get rid of shared lock - DataDomain.lookupNode Get rid of shared locks in DataDomain metadata lookups
        Description We can improve performance by using a concurrent collection for DataDomain.lookupNode instead of synchronizing the HashMap. Also instead of reindexing on failed lookups, we can simply lazy-fill collection from a given DataMap We can improve performance by using concurrent collections instead of synchronizing the HashMap. This includes:

        DataDomain.properties
        DataDomain.nodes
        DataDomain.nodesByDataMapName

        Also instead of reindexing on failed lookups, we can simply lazy-fill collection from a given DataMap
        Andrus Adamchik made changes -
        Status Open [ 1 ] Closed [ 6 ]
        Fix Version/s 3.1M4 [ 12317958 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Andrus Adamchik
            Reporter:
            Andrus Adamchik
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development