Kirill Tkalenko created IGNITE-18736:
----------------------------------------

             Summary: Prepare class AbstractPageMemoryMvPartitionStorage 
cursors for working with locks
                 Key: IGNITE-18736
                 URL: https://issues.apache.org/jira/browse/IGNITE-18736
             Project: Ignite
          Issue Type: Improvement
            Reporter: Kirill Tkalenko
            Assignee: Kirill Tkalenko
             Fix For: 3.0.0-beta2


We need to prepare cursors for working with locks, which should solve the 
problems of parallel modifications and reading version chains.

*org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage#scanVersions*
 - we need to read the entire chain at once. Since after reading one of the 
elements of the chain, any modification of the links to the next element can 
occur, we can degrade to quadratic complexity.

*org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage#scan*
 - we will need to try to immediately find the version by *timestamp* when 
reading the chain, since the *BplusTree* cursor caches rows that are on the 
same page.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to