Gary Tully created AMQ-6606:
-------------------------------

             Summary: Journal partial write can result in batch corruption on 
restart
                 Key: AMQ-6606
                 URL: https://issues.apache.org/jira/browse/AMQ-6606
             Project: ActiveMQ
          Issue Type: Bug
          Components: KahaDB
    Affects Versions: 5.14.0
            Reporter: Gary Tully
            Assignee: Gary Tully
             Fix For: 5.15.0


Recovery checking on kahadb will ignore a partial journal write at the end of 
the journal. However repeated write errors increment the write offset and if a 
subsequent write succeeds recovery fails reporting a corrupt block.
{code}
 MessageDatabase  | emq.store.kahadb.MessageDatabase | Detected corrupt journal 
files. [34:43883209 >= key < 34:47226069]
{code}
One scenario is write failure for no space followed by gc which allows 
subsequent writes to complete.
A failed write or sync should fail with an exception and should revert any 
offset increment such that a subsequent write reuses that offset, avoiding a 
partial write corruption. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to