Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-3611

ConnectionQueryService cache should expire LRU entries

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.8.0, 4.9.0
    • 4.10.0
    • None
    • None

    Description

      Currently the cache of ConnectionInfo/ConnectionQueryServicesImpl can hold its entries forever. This can potentially lead to orphan cache entries, and since each ConnectionQueryServicesImpl object has an HConnection, it can also lead to leaked connections.

      Due to the way that ConnectionInfo hashing works (see PHOENIX-3126 and PHOENIX-3607), this is particularly likely on a secure cluster.

      The cache should be changed into an LRU-style cache with a fixed size and gradual expiration.

      Attachments

        1. PHOENIX-3611.patch
          10 kB
          Geoffrey Jacoby
        2. PHOENIX-3611-v2.patch
          10 kB
          Geoffrey Jacoby
        3. PHOENIX-3611-v3.patch
          10 kB
          Geoffrey Jacoby
        4. PHOENIX-3611-v4.patch
          4 kB
          Geoffrey Jacoby

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            gjacoby Geoffrey Jacoby
            gjacoby Geoffrey Jacoby
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment