You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Igor Seliverstov (JIRA)" <ji...@apache.org> on 2018/08/17 14:26:00 UTC

[jira] [Commented] (IGNITE-9310) SQL: throw exception when missing cache is attempted to be created inside a transaction

    [ https://issues.apache.org/jira/browse/IGNITE-9310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16584002#comment-16584002 ] 

Igor Seliverstov commented on IGNITE-9310:
------------------------------------------

Attached test shows there is no hang on attempt to create missing client cache in the middle of transaction. However the thrown exception isn't descriptive, I think we need to include more details into it (whether it is missing client cache or there is no such cache at all, which table in the query requires the cache, cache name, etc)

[~vozerov], your thoughts?

> SQL: throw exception when missing cache is attempted to be created inside a transaction
> ---------------------------------------------------------------------------------------
>
>                 Key: IGNITE-9310
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9310
>             Project: Ignite
>          Issue Type: Task
>          Components: sql
>    Affects Versions: 2.6
>            Reporter: Vladimir Ozerov
>            Assignee: Igor Seliverstov
>            Priority: Minor
>             Fix For: 2.7
>
>         Attachments: CacheCreationItTransactionSelfTest.java
>
>
> See \{{org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing#prepareStatementAndCaches}}. This method might be called inside a transaction (both MVCC and non-MVCC modes). If we do not have any protective mechanics (need to check), then this call may lead to cache creation on a client, which in turn will wait for all TXes to finish, including current one, leading to a deadlock.
>  # Create tests confirming the problem
>  # If hang is reproduced - add a check for ongoing transaction and throw an exception



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)