Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-3723

Reset current schema to default (user name) when creating a new logical connection in the client driver

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 10.1.3.1, 10.2.2.0, 10.3.3.0, 10.4.1.3
    • Fix Version/s: 10.4.2.0, 10.5.1.1
    • Component/s: JDBC, Network Client
    • Labels:
      None
    • Environment:
      Primarily when connection pooling and statement caching are used.
    • Bug behavior facts:
      Performance

      Description

      The current schema is used as part of the lookup key for the client side JDBC statement cache. With the current implementation, the schema is explicitly fetched from the server by executing a "VALUES CURRENT SCHEMA" query after a new logical connection has been created. This hurts performance when using the JDBC statement cache, and in some cases it performs worse than running without a client side JDBC statement cache.

      The performance can be improved by resetting the current schema to the default on the client when a new logical connection is created. The user name is used as the default schema in Derby.

      Note that this issue is regarding logical connections. There is no API for changing the user name, or default schema, for a logical connection. This ensures the schema must be set to the associated user name for a newly created logical connection.

        Attachments

          Activity

            People

            • Assignee:
              kristwaa Kristian Waagan
              Reporter:
              kristwaa Kristian Waagan
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: