You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vyacheslav Koptilin (Jira)" <ji...@apache.org> on 2021/08/30 19:17:00 UTC

[jira] [Updated] (IGNITE-15396) TableManager#table(UUID) could return null value even though the required table is already created.

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

Vyacheslav Koptilin updated IGNITE-15396:
-----------------------------------------
    Labels: ignite-3  (was: )

> TableManager#table(UUID) could return null value even though the required table is already created.
> ---------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-15396
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15396
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Vyacheslav Koptilin
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-alpha3
>
>
> It seems that the following code introduced by IGNITE-14970 can lead to an error if a required table already exists in the cluster but the current node has not seen this event:
> {code:java}
> if (tbl != null && getTblFut.complete(tbl) || getTblFut.complete(null))
>     removeListener(TableEvent.CREATE, clo, null);
> {code}
>  
> [https://github.com/apache/ignite-3/blob/main/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/TableManager.java#L832]
> Looks like it should be something as follows:
> {code:java}
> if (tbl != null && getTblFut.complete(tbl) || 
>     !isTableConfigured(id) && getTblFut.complete(null))
>     removeListener(TableEvent.CREATE, clo, null);
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)