FYI, I just found a (silly) dead lock between JournalImpl.stop() and checkReclaimStatus (when running through compactorExecutor). The practical result is that AlignedJournalImplTest will take 0.5 secs to run instead of ~ 8 min (the actual number depends on the number of times the dead-lock is triggered).
On a related note, I would like to mention that boolean JournalImpl.checkReclaimStatus() is broken in the sense that it always returns false. @Clebert, any point in having this as a boolean method?
checkReclaimStatus used to be done inside the moveNext file (not through an exector). what was changed at a later point and it was forgotten there. You can remove the boolean and change scheduleReclaim
What was the thread dump and how did you fix the issue? Is it committed at your branch already?