Riya Verma created SPARK-48586:
----------------------------------

             Summary: Remove lock contention between maintenance and task 
threads
                 Key: SPARK-48586
                 URL: https://issues.apache.org/jira/browse/SPARK-48586
             Project: Spark
          Issue Type: Improvement
          Components: Structured Streaming
    Affects Versions: 3.4.3
            Reporter: Riya Verma


Currently the lock of the RocksDB state store is acquired when uploading the 
snapshot inside maintenance tasks when change log checkpointing is enabled, 
which causes lock contention between query processing tasks and state 
maintenance thread. To eliminate the lock contention, lock acquisition inside 
maintenance tasks should be avoided. To prevent race conditions between task 
and maintenance threads, we can ensure that RocksDBFileManager has a linear 
history by ensuring a deep copy of RocksDBFileManager every time a previous 
version is loaded. The original file manager is not affected by future state 
update. The new file manager is not affected by background snapshot uploading 
tasks that attempt to upload a snapshot.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to