You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Mahadev konar (JIRA)" <ji...@apache.org> on 2012/09/07 05:47:08 UTC

[jira] [Updated] (ZOOKEEPER-1462) Read-only server does not initialize database properly

     [ https://issues.apache.org/jira/browse/ZOOKEEPER-1462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mahadev konar updated ZOOKEEPER-1462:
-------------------------------------

    Fix Version/s:     (was: 3.4.4)
                   3.4.5

Moving it out since we do not have a patch.
                
> Read-only server does not initialize database properly
> ------------------------------------------------------
>
>                 Key: ZOOKEEPER-1462
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1462
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.4.3
>            Reporter: Thawan Kooburat
>            Assignee: Thawan Kooburat
>            Priority: Critical
>             Fix For: 3.5.0, 3.4.5
>
>         Attachments: ZOOKEEPER-1462.patch
>
>
> Brief Description:
> When a participant or observer get partitioned and restart as Read-only server. ZkDb doesn't get reinitialized. This causes the RO server to drop any incoming request with zxid > 0 
> Error message:
> Refusing session request for client /xx.xx.xx.xx:39875 
> as it has seen zxid 0x2e00405fd9 our last zxid is 0x0 client must try another server
> Steps to reproduce:
> Start an RO-enabled observer connecting to an ensemble. Kill the ensemble and wait until the observer restart in RO mode. Zxid of this observer should be 0.
> Description:
> Before a server transition into LOOKING state, its database get closed as part of shutdown sequence. The database of leader, follower and observer get initialized as a side effect of participating in leader election protocol. (eg. observer will call registerWithLeader() and call getLastLoggedZxid() which initialize the db if not already).
> However, RO server does not participate in this protocol so its DB doesn't get initialized properly
>  

--
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