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

MS-SQL driver closes prepared statements on endRequest but Ironjacamar cache still produces them #737

Open
Rich-a-davis opened this issue Sep 23, 2021 · 2 comments

Comments

@Rich-a-davis
Copy link

Rich-a-davis commented Sep 23, 2021

Discovered in WIldFly 24.0.1 (ironjacamar 1.4.35) with ms-sql JDBC drivers jre11 variants of versions 7.4.1, 8.4.1 and 9.2.1.

Application code calls prepareStatement() then immediately executeQuery and gets error
com.microsoft.sqlserver.jdbc.SQLServerException: The statement is closed.

What I think is going on is that the application has got a connection, used it as above, closed it, then later got the same connection again from the pool to use as above. When the application closes the connection Ironjacamar calls endRequest() on the connection which calls com.microsoft.sqlserver.jdbc.SQLServerConnection.endRequestInternal(), which closes all the open prepared statements on the connection.

If the problem is as above I would not be able to say which side, Ironjacamar or ms-sql JDBC, is doing the right thing.

@tadamski
Copy link
Contributor

Hi,

Thanks for reporting this problem. I have created https://issues.redhat.com/browse/JBJCA-1434 to trace it.

@JohnSchneider
Copy link

Issue cloned by: https://issues.redhat.com/browse/WFLY-15493

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants