Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-17179

Thin 3.0: SQL metadata caching

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

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 3.0.0-alpha5
    • 3.1
    • thin client
    • Docs Required, Release Notes Required

    Description

      We send query metadata to the client with every request (IGNITE-17052). It is a waste of resources when the same query is executed frequently.

      • Cache metadata on server, generate unique ID
      • Return the ID to the client
      • Client retrieves cached metadata from server when not known, caches it locally

      However, some queries can be one-off and unique. The cache can grow too big over the lifetime of the application.

      • Use the cache only for queries that have executed N times (detect this on the server)
      • Limit cache size, use LRU eviction (client and server)

      Do not use query text as cache key - column types can change. Use the entire metadata content to check cache entry equality.

      Attachments

        Issue Links

        Activity

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

          People

            ptupitsyn Pavel Tupitsyn
            ptupitsyn Pavel Tupitsyn

            Dates

              Created:
              Updated:

              Slack

                Issue deployment