Issue Details (XML | Word | Printable)

Key: JDBC-557
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Mark Rotteveel
Reporter: Mark Rotteveel
Votes: 0
Watchers: 0

If you were logged in you would be able to see more operations.
Jaybird JCA/JDBC Driver

Limit statements cached in DatabaseMetaData

Created: 07/Oct/18 01:45 PM   Updated: 25/May/19 10:03 AM
Component/s: JDBC driver
Affects Version/s: Jaybird 3.0.0, Jaybird 3.0.1, Jaybird 3.0.2, Jaybird 3.0.3, Jaybird 3.0.4, Jaybird 3.0.5, Jaybird 4
Fix Version/s: Jaybird 3.0.6, Jaybird 4

 Description  « Hide
We're currently caching the prepared metadata statements for reuse, but we have not put any limits on the number of statements cached. Statements are only cleaned if the connection is closed, or DatabaseMetaData is 'closed' through the Jaybird specific FirebirdDatabaseMetaData.close() method. As some forms metadata methods may generate multiple statements depending on the values passed, this may grow.

We should change this to some form of LRU cache that only caches a limited number of statements, and closes statements if that limit is reached.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Mark Rotteveel added a comment - 07/Oct/18 01:46 PM
Consider backporting to Jaybird 3.

Mark Rotteveel added a comment - 26/Oct/18 04:22 PM
Also in 3.0.6