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

Hongchao Deng commented on ZOOKEEPER-1994:
------------------------------------------

Besides removing "configBackwardCompatibilityMode" in QuorumPeerConfig, I also 
realized there is "configBackwardCompatibility" in QuorumPeer which is used in 
this logic:
{code}
            // we need to write the dynamic config file. Either it already 
exists
            // or we have the old-style config file and we're in the backward 
compatibility mode,
            // so we'll create the dynamic config file for the first time now
            if (dynamicConfigFilename != null || (configFilename != null && 
configBackwardCompatibility)) {         
{code}

[~shralex] Could you explain the logic here? I am thinking about removing that 
"configBackwardCompatibility" as well. What changes should be made?


> Backup config files.
> --------------------
>
>                 Key: ZOOKEEPER-1994
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1994
>             Project: ZooKeeper
>          Issue Type: Improvement
>    Affects Versions: 3.5.0
>            Reporter: Hongchao Deng
>            Assignee: Hongchao Deng
>             Fix For: 3.5.1
>
>         Attachments: draft.patch, first-try.patch, static-backup.patch
>
>
> We should create a backup file for a static or dynamic configuration file 
> before changing the file. 
> Since the static file is changed at most twice (once when removing the 
> ensemble definitions, at which point a dynamic file doesn't exist yet, and 
> once when removing clientPort information) its probably fine to back up the 
> static file independently from the dynamic file. 
> To track backup history:
> Option 1: we could have a .bakXX extention for backup where XX is a  sequence 
> number. 
> Option 2: have the configuration version be part of the file name for dynamic 
> configuration files (instead of in the file like now). Such as 
> zoo_replicated1.cfg.dynamic.1000000 then on reconfiguration simply create a 
> new dynamic file (with new version) and update the link in the static file to 
> point to the new dynamic one.
> Review place:
> https://reviews.apache.org/r/24208/



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

Reply via email to