[
https://issues.apache.org/jira/browse/IGNITE-23591?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nikita Amelchev updated IGNITE-23591:
-------------------------------------
Release Note: Fixed entry and checkpoint locks orders in DataStreamer and
update TTL
> Deadlock between threads concurrently update ttl and values
> -----------------------------------------------------------
>
> Key: IGNITE-23591
> URL: https://issues.apache.org/jira/browse/IGNITE-23591
> Project: Ignite
> Issue Type: Bug
> Reporter: Maksim Timonin
> Assignee: Maksim Timonin
> Priority: Major
> Labels: ise
> Fix For: 2.17
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> There is a deadlock in case concurrent load: ScanQuery and DataStreamer with
> expiry logic based on access time.
> # data-streamer-stripe acquires locks in order: checkpoint read lock, entry
> lock
> # sys-stripe and query threads (update ttl) acquire locks in different
> order: entry lock, checkpoint read lock
> # concurrent db-checkpoint-thread acquire checkpoint write lock, and it
> might be done in the moment between threads (2) acquire entry and checkpoint
> lock.
>
> data-streamer awaits sys-stripe,
> sys-stripe awaits db-checkpoint-thread,
> db-checkpoint-threads awaits data-streamer
>
> Order of locking should be same in all threads.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)