Ivan Bessonov created IGNITE-26998:
--------------------------------------

             Summary: Warmup gc entry before `runConsistently`
                 Key: IGNITE-26998
                 URL: https://issues.apache.org/jira/browse/IGNITE-26998
             Project: Ignite
          Issue Type: Improvement
          Components: storage engines ai3
            Reporter: Ivan Bessonov


What we do currently:
 * Start "runConsistently" execution
 * Peek the GC queue
 * Lock the RowId
 * Vacuum the row

The "vacuum" operation, in {{aipersist}} in particular, requires reading the 
whole value from the storage, which is potentially expensive. What we can do 
instead is
 * "peek" N entries before executing the closure
 * Make sure that engine "preloads" the data if that's necessary for the engine
 * Only then start the closure, speculatively expecting that it won't lead to 
as much IO while "holding the lock"



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

Reply via email to