Flavio Paiva Junqueira commented on ZOOKEEPER-790:

Some additional information. We create a new transaction log when we try to 
append a transaction and there is no log file open. Consequently, we only 
create it when there is something to write. For the bad run above, here is the 
content of the log:

ZooKeeper Transactional Log File with dbid 0 txnlog format version 2
7/15/10 5:27:45 PM CEST session 0x129d6b61b5b0000 cxid 0x0 zxid 0x200000001 
EOF reached after 1 txns.

> Last processed zxid set prematurely while establishing leadership
> -----------------------------------------------------------------
>                 Key: ZOOKEEPER-790
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-790
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: quorum
>    Affects Versions: 3.3.1
>            Reporter: Flavio Paiva Junqueira
>            Assignee: Flavio Paiva Junqueira
>            Priority: Blocker
>             Fix For: 3.3.2, 3.4.0
>         Attachments: ZOOKEEPER-790.patch, ZOOKEEPER-790.travis.log.bz2
> The leader code is setting the last processed zxid to the first of the new 
> epoch even before connecting to a quorum of followers. Because the leader 
> code sets this value before connecting to a quorum of followers 
> (Leader.java:281) and the follower code throws an IOException 
> (Follower.java:73) if the leader epoch is smaller, we have that when the 
> false leader drops leadership and becomes a follower, it finds a smaller 
> epoch and kills itself.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to