You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexandr Kuramshin (JIRA)" <ji...@apache.org> on 2017/12/02 14:54:00 UTC

[jira] [Updated] (IGNITE-7095) JdbcConnection hard linked in IgniteH2Indexing preventing old connections from closing

     [ https://issues.apache.org/jira/browse/IGNITE-7095?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexandr Kuramshin updated IGNITE-7095:
---------------------------------------
    Attachment: IndexClientTest.java
                IndexTest.java

Simple reproducer. Start IndexTest then start IndexClientTest.

After message 'All queries done' on the client the heap will contain the number of JdcbConnection and related objects.

> JdbcConnection hard linked in IgniteH2Indexing preventing old connections from closing
> --------------------------------------------------------------------------------------
>
>                 Key: IGNITE-7095
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7095
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>    Affects Versions: 2.3
>            Reporter: Alexandr Kuramshin
>             Fix For: 2.4, 2.5
>
>         Attachments: IndexClientTest.java, IndexTest.java
>
>
> Every time a new thread performs {{SqlFieldsQuery}} the new {{org.h2.jdbc.JdbcConnection}} will be created and added to the {{org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing#conns}}.
> Such hard link prevents from the {{org.h2.util.CloseWatcher}} to be enqueued and old connections will remain in heap even after the thread exits.
> After some number of SQL queries the {{java.lang.OutOfMemoryError}} will occur.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)