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] [Created] (IGNITE-15396) TableManager#table(UUID) could return null value even though the required table is already created.

Vyacheslav Koptilin created IGNITE-15396:
--------------------------------------------

             Summary: 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
             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)