[jira] [Updated] (IGNITE-21987) Optimize RO scan in sorted indexes

2024-04-04 Thread Ivan Bessonov (Jira)


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

Ivan Bessonov updated IGNITE-21987:
---
Description: 
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
simple cursor
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor
 * reuse existing tests where possible
 * call new method where necessary (PartitionReplicaListener#scanSortedIndex)

IMPORTANT: we should throw an exception if somebody scans an index and 
IndexStorage#getNextRowIdToBuild is not null. It should be a new error, like 
"IndexNotBuiltException"

  was:
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
simple cursor
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor
 * reuse existing tests where possible
 * call new method where necessary (PartitionReplicaListener#scanSortedIndex)

IMPORTANT: we should throw an exception if somebody scans an index and 
IndexStorage#getNextRowIdToBuild is not null.


> Optimize RO scan in sorted indexes
> --
>
> Key: IGNITE-21987
> URL: https://issues.apache.org/jira/browse/IGNITE-21987
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Ivan Bessonov
>Priority: Major
>  Labels: ignite-3
>
> This issue applies to aimem/aipersist primarily. Optimization for rocksdb 
> might be done separately.
>  * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
> simple cursor
>  * in the implementation we should use alternative cursor implementation for 
> RO scans - it should delegate calls to B+Tree cursor
>  * reuse existing tests where possible
>  * call new method where necessary (PartitionReplicaListener#scanSortedIndex)
> IMPORTANT: we should throw an exception if somebody scans an index and 
> IndexStorage#getNextRowIdToBuild is not null. It should be a new error, like 
> "IndexNotBuiltException"



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


[jira] [Updated] (IGNITE-21987) Optimize RO scan in sorted indexes

2024-04-04 Thread Ivan Bessonov (Jira)


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

Ivan Bessonov updated IGNITE-21987:
---
Description: 
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
simple cursor
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor
 * reuse existing tests where possible
 * call new method where necessary (PartitionReplicaListener#scanSortedIndex)

IMPORTANT: we should throw an exception if somebody scans an index and 
IndexStorage#getNextRowIdToBuild is not null.

  was:
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
simple cursor
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor
 * reuse existing tests where possible
 * call new method where necessary (PartitionReplicaListener#scanSortedIndex)


> Optimize RO scan in sorted indexes
> --
>
> Key: IGNITE-21987
> URL: https://issues.apache.org/jira/browse/IGNITE-21987
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Ivan Bessonov
>Priority: Major
>  Labels: ignite-3
>
> This issue applies to aimem/aipersist primarily. Optimization for rocksdb 
> might be done separately.
>  * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
> simple cursor
>  * in the implementation we should use alternative cursor implementation for 
> RO scans - it should delegate calls to B+Tree cursor
>  * reuse existing tests where possible
>  * call new method where necessary (PartitionReplicaListener#scanSortedIndex)
> IMPORTANT: we should throw an exception if somebody scans an index and 
> IndexStorage#getNextRowIdToBuild is not null.



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


[jira] [Updated] (IGNITE-21987) Optimize RO scan in sorted indexes

2024-04-04 Thread Ivan Bessonov (Jira)


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

Ivan Bessonov updated IGNITE-21987:
---
Description: 
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
simple cursor
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor
 * reuse existing tests where possible
 * call new method where necessary (PartitionReplicaListener#scanSortedIndex)

  was:
This issue applies to aimem/aipersist primarily. Optimization for rocksdb might 
be done separately.
 * add new flag RO_SCAN to SortedIndexStorage
 * in the implementation we should use alternative cursor implementation for RO 
scans - it should delegate calls to B+Tree cursor, and "peek" should throw an 
"UnsupportedOperationException"
 * for "rocksdb" it shouldn't refresh the iterator all the time. "peek" should 
also throw exceptions
 * reuse existing tests
 * pass new RO_SCAN flag into a method where it's necessary


> Optimize RO scan in sorted indexes
> --
>
> Key: IGNITE-21987
> URL: https://issues.apache.org/jira/browse/IGNITE-21987
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Ivan Bessonov
>Priority: Major
>  Labels: ignite-3
>
> This issue applies to aimem/aipersist primarily. Optimization for rocksdb 
> might be done separately.
>  * add new method to SortedIndexStorage, like "readOnlyScan", that returns a 
> simple cursor
>  * in the implementation we should use alternative cursor implementation for 
> RO scans - it should delegate calls to B+Tree cursor
>  * reuse existing tests where possible
>  * call new method where necessary (PartitionReplicaListener#scanSortedIndex)



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