[ https://issues.apache.org/jira/browse/IGNITE-9741?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ilya Kasnacheev updated IGNITE-9741: ------------------------------------ Summary: SegmentArchivedStorage and SegmentCompressStorage remain `interrupted` after de-activation occurs before activation (was: SegmentArchivedStorage and SegmentCompressStorage remain `iterrupted` after de-activation occurs before activation) > SegmentArchivedStorage and SegmentCompressStorage remain `interrupted` after > de-activation occurs before activation > ------------------------------------------------------------------------------------------------------------------- > > Key: IGNITE-9741 > URL: https://issues.apache.org/jira/browse/IGNITE-9741 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.6 > Reporter: Maxim Muzafarov > Assignee: Anton Kalashnikov > Priority: Critical > Fix For: 2.7 > > > The {{FileWriteAheadLogManager}} now contains: > {{private final SegmentAware segmentAware;}} > > The SegmentAware have the `interrupt()` method: > {code:java|title=SegmentAware:216} > /** > * Interrupt waiting on related objects. > */ > public void interrupt() { > segmentArchivedStorage.interrupt(); > segmentCompressStorage.interrupt(); > segmentCurrStateStorage.interrupt(); > } > {code} > > Method at the {{FileWriteAheadLogManager}} de-activation sets (e.g. for > SegmentArchivedStorage) `interrupted` filed to `true` value but never revert > it to `false` after activation. > {code:java|title=SegmentArchivedStorage:114} > /** > * Interrupt waiting on this object. > */ > synchronized void interrupt() { > interrupted = true; > notifyAll(); > } > {code} > > So, the SegmentArchivedStorage after de-activation always remain interrupted. > This can lead to undefined behaviour e.g. exchange worker hangs. -- This message was sent by Atlassian JIRA (v7.6.3#76005)