You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Rakesh R (JIRA)" <ji...@apache.org> on 2014/07/01 10:24:24 UTC

[jira] [Commented] (ZOOKEEPER-1835) dynamic configuration file renaming fails on Windows

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

Rakesh R commented on ZOOKEEPER-1835:
-------------------------------------

It seems like this patch is good to go. I'll check this in tomorrow unless somebody complains.


Hi [~bfreuden],

Just one comment. IMHO the test class AtomicFileWritingIdiomTest could extend ZKTestCase, it would be helpful later when debugging test case failures.
If possible please include this minor change and update new patch, otw I'll do the changes when committing the patch.

> dynamic configuration file renaming fails on Windows
> ----------------------------------------------------
>
>                 Key: ZOOKEEPER-1835
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1835
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: quorum
>    Affects Versions: 3.5.0
>         Environment: Windows 7 64-bit, Oracle Java  1.6.0_32-b05
>            Reporter: Bruno Freudensprung
>            Assignee: Bruno Freudensprung
>             Fix For: 3.5.0
>
>         Attachments: ZOOKEEPER-1835.patch, ZOOKEEPER-1835.patch, ZOOKEEPER-1835.patch, ZOOKEEPER-1835.patch, ZOOKEEPER-1835.patch, ZOOKEEPER-1835.patch
>
>
> On Windows, reconfig fails to rename the tmp dynamic config file to the real dynamic config filename.
> Javadoc of java.io.File.renameTo says the behavior is highly plateform dependent, so I guess this should not be a big surprise.
> The problem occurs in src/java/main/org/apache/zookeeper/server/quorum/QuorumPeerConfig.java that could be modified like this:
> + curFile.delete();
> if (!tmpFile.renameTo(curFile)) {
> + configFile.delete();
> if (!tmpFile.renameTo(configFile)) {
> As suggested by Alex in https://issues.apache.org/jira/browse/ZOOKEEPER-1691 (btw there is more information about my test scenario over there) it is a bit "scary" to delete the current configuration file.



--
This message was sent by Atlassian JIRA
(v6.2#6252)