[
https://issues.apache.org/jira/browse/ZOOKEEPER-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thawan Kooburat updated ZOOKEEPER-1757:
---------------------------------------
Attachment: TEST-org.apache.zookeeper.server.persistence.FileSnapTest.txt
ZOOKEEPER.1757.patch
Attached a test case that show the example of corrupted snapshot passed Adler32
check.
I hard coded a seek value trigger this condition. On other environment, the
value may have to change by using the random seek.
In my case, I only need to do a few run to trigger a case that can bypass
checksum.
Also attached a sample log file from this unit test run.
> Adler32 may not be sufficient to protect aginst data corruption
> ---------------------------------------------------------------
>
> Key: ZOOKEEPER-1757
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1757
> Project: ZooKeeper
> Issue Type: Bug
> Components: server
> Environment: Linux. Oracle JDK6/7
> Reporter: Thawan Kooburat
> Attachments:
> TEST-org.apache.zookeeper.server.persistence.FileSnapTest.txt,
> ZOOKEEPER.1757.patch
>
>
> I was investigating data inconsistency bug in our internal branch. One
> possible area is snapshot/txnlog corruption. So I wrote a more robust
> corruption test and found that it is easy to break our checksum algorithm
> which is Adler32.
> When this happen, it is more likely that corrupted data will fail other
> sanity check during deserialization phase, but it is still scary that it can
> pass the checksum.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira