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

Semen Boikov updated IGNITE-3484:
---------------------------------
    Description: 
Need implement some data structure to store/get multiple entry versions:
- committed value at first is stored in separate data structure (there also 
need store related tx id to filter out data for non-finished transactions), 
probably existing BPlusTree can be used
- periodically need flush data for finished transaction in 'main' hash index
- 'getAll' operation should include max 'visible' ID and list of active 
transactions, this information should be used to find last 'visible' version in 
'mvcc' or 'main' index

  was:
We need to make sure that SQL queries are executed on a certain in-memory 
timestamp or version. This will require having as many versions of data in 
memory as needed by the ongoing SQL queries. Once the queries complete, the 
older versions should be discarded.

TBD: design requirements for MVCC.


> MVCC data structure for getAll operation
> ----------------------------------------
>
>                 Key: IGNITE-3484
>                 URL: https://issues.apache.org/jira/browse/IGNITE-3484
>             Project: Ignite
>          Issue Type: Sub-task
>          Components: cache
>            Reporter: Alexey Goncharuk
>             Fix For: 2.2
>
>
> Need implement some data structure to store/get multiple entry versions:
> - committed value at first is stored in separate data structure (there also 
> need store related tx id to filter out data for non-finished transactions), 
> probably existing BPlusTree can be used
> - periodically need flush data for finished transaction in 'main' hash index
> - 'getAll' operation should include max 'visible' ID and list of active 
> transactions, this information should be used to find last 'visible' version 
> in 'mvcc' or 'main' index



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to