[
https://issues.apache.org/jira/browse/DERBY-3354?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anurag Shekhar updated DERBY-3354:
----------------------------------
Attachment: derby-3354_preview.diff
In this patch I have introduced a WeakHashMap to hold lob objects.
The WeakHashMap has lob objects as key and null as values.
The existing lobMapping is used only if a locater is requested (ie when
accessed from client driver).
With this patch the attached test case (LocLeak.java) runs without getting out
of memory exception (without free call from LocLeak).
This patch has changes related to Clob only and I havn;t run any test other
that attached LocLeak. I will submit a complete patch shortly.
> Select from large lob table with embedded gives OutOfMemoryError
> ----------------------------------------------------------------
>
> Key: DERBY-3354
> URL: https://issues.apache.org/jira/browse/DERBY-3354
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.3.1.4, 10.3.2.1, 10.4.0.0
> Reporter: Kathey Marsden
> Assignee: Anurag Shekhar
> Attachments: derby-3354.diff, derby-3354_preview.diff, LocLeak.java
>
>
> Retrieving from a large table with lobs gives an OutOfMemoryException, even
> if free() is explictly called on the lob. I believe this is because
> EmbedConnection.addLobMapping is called for every lob creation but is never
> cleared until commit or rollback, even if the lob is freed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.