ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Kovalenko (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-8405) Sql query may see intermediate results of topology changes and perform mapping incorrectly
Date Thu, 26 Apr 2018 17:55:00 GMT

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

Pavel Kovalenko updated IGNITE-8405:
------------------------------------
    Summary: Sql query may see intermediate results of topology changes and perform mapping
incorrectly  (was: Sql query may see intermediate results of topology changes and do mapping
incorrectly)

> Sql query may see intermediate results of topology changes and perform mapping incorrectly
> ------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-8405
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8405
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, sql
>    Affects Versions: 2.4
>            Reporter: Pavel Kovalenko
>            Assignee: Pavel Kovalenko
>            Priority: Major
>
> Affected test: IgniteStableBaselineCacheQueryNodeRestartsSelfTest
> Sql query do mapping in following way:
> 1) If there is at least 1 moving partition query will be mapped to current partition
owners
> 2) In other case affinity mapping will be used.
> In case of first approach query may see not final partition state if mapping happens
during PME. There is "setOwners()" method which does partition movement one-by-one, each time
obtaining topology write lock. If query mapping happens in this time it may see that there
is some moving partition and performed mapping to OWNING partition which will be moved to
MOVING on next "setOwners()" invocation.
> As result we may query from invalid partitions.
> As intermediate solution "setOwners()" method should be refactored in a batch way to
perform ALL partitions state changes to MOVING in one operation.
> As general solution query mapping should be revisited, especially "isPreloadingActive"
method, to take into account given topology version.



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

Mime
View raw message