Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limit statements cached in DatabaseMetaData [JDBC557] #590

Closed
firebird-automations opened this issue Oct 7, 2018 · 6 comments
Closed

Limit statements cached in DatabaseMetaData [JDBC557] #590

firebird-automations opened this issue Oct 7, 2018 · 6 comments

Comments

@firebird-automations
Copy link

Submitted by: @mrotteveel

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.

Commits: d7c04f3 ad5c487 9d76602 14caaa4

@firebird-automations
Copy link
Author

Commented by: @mrotteveel

Consider backporting to Jaybird 3.

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

Version: Jaybird 3.0.5 [ 10873 ]

Version: Jaybird 3.0.4 [ 10861 ]

Version: Jaybird 3.0.3 [ 10852 ]

Version: Jaybird 3.0.2 [ 10840 ]

Version: Jaybird 3.0.1 [ 10831 ]

Version: Jaybird 3.0.0 [ 10440 ]

Fix Version: Jaybird 4 [ 10441 ]

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

Fix Version: Jaybird 3.0.6 [ 10883 ]

@firebird-automations
Copy link
Author

Commented by: @mrotteveel

Also in 3.0.6

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

@firebird-automations
Copy link
Author

Modified by: @mrotteveel

status: Resolved [ 5 ] => Closed [ 6 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment