Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
10.3.2.1, 10.4.1.3, 10.5.1.1
-
None
Description
If the client creates a result set containing LOB locator columns and iterates through it without actually accessing the LOB columns, the locators are not released.
The amount of locators and their associated LOB objects causes the server to consume large amounts of memory and it eventually gets an OOME.
There are a few workarounds for this bug:
a) Access and/or properly close the LOBs (i.e. Blob.free).
This is partly dependent on DERBY-2892.
b) Invoke Connection.commit (or rollback) periodically, which causes all locators on the connection to be released.
Attachments
Attachments
Issue Links
- relates to
-
DERBY-2892 Closing a resultset after retrieving a large > 32665 bytes value with Network Server does not release locks
- Closed
-
DERBY-3575 Optimize client side LOB release mechanism by reducing the number of round-trips
- Closed
-
DERBY-3601 Optimize LOBStateTracker for non-locator servers
- Closed