You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "Shilun Fan (Jira)" <ji...@apache.org> on 2026/10/01 01:47:00 UTC
[jira] [Updated] (RATIS-2719) SegmentedRaftLog.close may deadlock with the cache eviction thread
[ https://issues.apache.org/jira/browse/RATIS-2719?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shilun Fan updated RATIS-2719:
------------------------------
Description:
{{SegmentedRaftLog.close() may deadlock with the background cache eviction thread.}}
Currently, close() acquires the Raft log write lock before calling cacheEviction.close().
That method interrupts the eviction thread and waits for it to terminate using Thread.join().
{{Meanwhile, checkAndEvictCache() also needs the same write lock.}}
was:
{{SegmentedRaftLog.close() may deadlock with the background cache eviction thread.}}
{{Currently, close() acquires the Raft log write lock before calling
cacheEviction.close(). }}
{{That method interrupts the eviction thread
and waits for it to terminate using Thread.join().}}
{{Meanwhile, checkAndEvictCache() also needs the same write lock.}}
> SegmentedRaftLog.close may deadlock with the cache eviction thread
> ------------------------------------------------------------------
>
> Key: RATIS-2719
> URL: https://issues.apache.org/jira/browse/RATIS-2719
> Project: Ratis
> Issue Type: Bug
> Reporter: Shilun Fan
> Assignee: Shilun Fan
> Priority: Major
>
> {{SegmentedRaftLog.close() may deadlock with the background cache eviction thread.}}
> Currently, close() acquires the Raft log write lock before calling cacheEviction.close().
> That method interrupts the eviction thread and waits for it to terminate using Thread.join().
> {{Meanwhile, checkAndEvictCache() also needs the same write lock.}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)