[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13408152#comment-13408152
 ] 

Patrick Hunt commented on ZOOKEEPER-1427:
-----------------------------------------

Flavio you bring up a good point. There is no checksum (etc...) on the epoch 
files themselves. That's really unfortunate/shortsighted. We need to do a 
better job on this in future (when adding new file/types).

Seems we need to add a new jira for this. In particular I notice that while we 
are catching the numberformatexception we're not logging it. Might be useful to 
do that in the read method directly for debugging purposes. Also someone should 
verify all the call paths are handling the thrown IOException (NFE is converted 
to IOE). See ZOOKEEPER-1507

                
> Writing to local files is done non-atomically
> ---------------------------------------------
>
>                 Key: ZOOKEEPER-1427
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1427
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.4.3
>            Reporter: Todd Lipcon
>            Assignee: Patrick Hunt
>            Priority: Critical
>             Fix For: 3.4.4, 3.5.0
>
>         Attachments: ZOOKEEPER-1427.patch, ZOOKEEPER-1427.patch, 
> ZOOKEEPER-1427.patch, ZOOKEEPER-1427_br34.patch, ZOOKEEPER-1427_br34.patch, 
> ZOOKEEPER-1427_br34.patch
>
>
> Currently, the writeLongToFile() function opens the file for truncate, writes 
> the new data, syncs, and then closes. If the process crashes after opening 
> the file but before writing the new data, the file may be left empty, causing 
> ZK to "forget" an earlier promise. Instead, it should use RandomAccessFile to 
> avoid truncating.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to