
|
If you were logged in you would be able to see more operations.
|
|
|
|
File Attachments:
|
|
|
Environment:
|
Primarily when connection pooling and statement caching are used.
|
|
| Bug behavior facts: |
Performance
|
| Resolution Date: |
30/Jun/08 12:43 PM
|
|
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.
|
|
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. |
Show » |
made changes - 20/Jun/08 02:17 PM
|
Derby Info
|
|
[Patch Available]
|
| Repository |
Revision |
Date |
User |
Message |
| ASF |
#671128 |
Tue Jun 24 11:09:02 UTC 2008 |
kristwaa |
DERBY-3723: Reset current schema to default (user name) when creating a new logical connection in the client driver.
Resets the schema to the associated user name for the physical connection when creating a new logical connection (which is currently implemented as resetting the physical connection).
Also made 'Connection.user_' final.
Patch file: DERBY-3723-1a-client_schema_reset.diff
|
| Files Changed |
MODIFY
/db/derby/code/trunk/java/client/org/apache/derby/client/am/Connection.java
|
made changes - 24/Jun/08 11:15 AM
|
Derby Info
|
[Patch Available]
|
|
made changes - 30/Jun/08 12:43 PM
|
Resolution
|
|
Fixed
[ 1
]
|
|
Status
|
Open
[ 1
]
|
Resolved
[ 5
]
|
made changes - 10/Jul/08 09:47 AM
|
Status
|
Resolved
[ 5
]
|
Closed
[ 6
]
|
made changes - 04/Aug/08 08:24 PM
|
Fix Version/s
|
10.4.1.4
[ 12313112
]
|
|
|
Fix Version/s
|
|
10.4.2.0
[ 12313345
]
|
made changes - 04/May/09 06:21 PM
|
Fix Version/s
|
10.5.0.0
[ 12313010
]
|
|
|
Fix Version/s
|
|
10.5.1.1
[ 12313771
]
|
|
Regression tests passed with Solaris 10 and Sun JDK 1.6.
Patch ready for review.