Ivan Bessonov created IGNITE-21091: -------------------------------------- Summary: Send indexes data during full state transfer Key: IGNITE-21091 URL: https://issues.apache.org/jira/browse/IGNITE-21091 Project: Ignite Issue Type: Improvement Reporter: Ivan Bessonov
Current full state transfer implementation dictates that receiver will build all secondary indexes on the fly. This might not be efficient: * receiver will have to extract index tuples from each row version * for rows with multiple versions, many of these tuples will be the same. Which means that the "extraction" and "insertion" will be performed several times for the same value Of course, it all depends on how many versions each row has, but generally speaking, inserting data one time is always better than inserting it multiple times. It is proposed to send indexes the same way as we send version chains. By using scan operation and copy-on-write semantics during data modifications (on the sender). The specifics of the algorithm are not clear yet. This issues includes investigation of the proper approach, that will eliminate * the possibility of data inconsistencies * data leaks * excessive memory consumption on senderĀ -- This message was sent by Atlassian Jira (v8.20.10#820010)