You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
our project do some batch process which has a very long transcation.In the transcation,we use Cursor to traversal the resultSet. The Cursor may be used in a loop.We found that cursor.close() will not release all the resource,so it result in full gc.
we found that in the DefaultSession class, it holds a list of Cursor.When call cursor.close(),the resultSet can be closed ,but the cursor object can not removed from the list hold by DefaultSession.So,when cursor be opened many times,the list will result in full gc
Expected result
cursor.close() should remove cursor object from the list hold by DefaultSession
Actual result
The text was updated successfully, but these errors were encountered:
MyBatis version
3.5.6
Database vendor and version
mysql 8
Test case or example project
our project do some batch process which has a very long transcation.In the transcation,we use Cursor to traversal the resultSet. The Cursor may be used in a loop.We found that cursor.close() will not release all the resource,so it result in full gc.
the example like below
Steps to reproduce
use jmeter to test the code ,it result in full gc
we found that in the DefaultSession class, it holds a list of Cursor.When call cursor.close(),the resultSet can be closed ,but the cursor object can not removed from the list hold by DefaultSession.So,when cursor be opened many times,the list will result in full gc
Expected result
cursor.close() should remove cursor object from the list hold by DefaultSession
Actual result
The text was updated successfully, but these errors were encountered: