[
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)