[ https://issues.apache.org/jira/browse/IGNITE-8841?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16759866#comment-16759866 ]
Igor Seliverstov commented on IGNITE-8841: ------------------------------------------ [~Pavlukhin] 1) Probably it makes sense, I left it like this not to change callers. Anyway we need to do some cleanup of involved classes, I've planned it as a separate task. 2) This is a special case, there can be active queries which survived several exchanges and there was no coordinator (no applicable for a coordinator node filter nodes) before new node have joined. We need to track such queries too. > MVCC TX: Read transactions remap when coordinator fails. > -------------------------------------------------------- > > Key: IGNITE-8841 > URL: https://issues.apache.org/jira/browse/IGNITE-8841 > Project: Ignite > Issue Type: Bug > Components: mvcc, sql > Reporter: Roman Kondakov > Assignee: Igor Seliverstov > Priority: Major > Labels: failover > Time Spent: 50m > Remaining Estimate: 0h > > At the moment read transactions that don't acquire topology lock will be > forcibly rolled back on topology change as read tx can be in fly while > topology being change. > This is done to prevent having active transaction with stale snapshots on > new topology in cases of TX coordinator or Near node were lost. > > It would be nice to remap it somehow until they locked a topology or at least > throw some meaningful exception to user. > For example, it is possible to obtain a new "write" mvcc version from the > new coordinator and use this version for all further writes while using "old" > version for reads. In this case we need to change visibility rules a little: > "old" version should see "own" updates made by "new" "write" version. -- This message was sent by Atlassian JIRA (v7.6.3#76005)