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

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

Hi Bruno,

Can we refactor 'BufferedWriter bw = null' logic as follows:
{code}
          } else {
                // prepare writer
                BufferedWriter bw = new BufferedWriter(new 
OutputStreamWriter(out));
                //......
                // execute writer operation
                wStmt.write(bw);
                bw.flush();
{code}

Also, I just noticed the exception blocks in the patch. Both 'IOException' and 
'RuntimeException' handles the exception in the same way, aborting and throw 
back exception to the caller. Instead of having multiple blocks, I think we can 
simplify this by catching 'Exception or Throwable' and handle it.


> 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
>         Attachments: 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.1.4#6159)

Reply via email to