Benjamin Reed commented on ZOOKEEPER-907:

sync doesn't cause any additional traffic over the atomic broadcast. it just 
makes sure that the all of the in-process transactions have be sent to the 
follower. when that error happens, the error will be sent back to the follower 
ordered after all of the completed transactions. so rather than being able to 
see the result of all requests initiated before the sync, the follower will see 
all requests completed before the sync. that is why i referred to it as a 
partial sync.

i'm really having problems trying to reproduce this error. can you describe 
more how it happened? i would like to have an end-to-end test rather than the 
test of a particular implementation so that this error doesn't pop up if the 
implementation changes. looking at the code it seems like it should happen 
everytime the sync request is sent to a follower, but that doesn't seem to be 
the case.

> Spurious "KeeperErrorCode = Session moved" messages
> ---------------------------------------------------
>                 Key: ZOOKEEPER-907
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-907
>             Project: Zookeeper
>          Issue Type: Bug
>    Affects Versions: 3.3.1
>            Reporter: Vishal K
>            Assignee: Vishal K
>            Priority: Blocker
>             Fix For: 3.3.2, 3.4.0
>         Attachments: ZOOKEEPER-907.patch
> The sync request does not set the session owner in Request.
> As a result, the leader keeps printing:
> 2010-07-01 10:55:36,733 - INFO  [ProcessThread:-1:preprequestproces...@405] - 
> Got user-level KeeperException when processing sessionid:0x298d3b1fa90000 
> type:sync: cxid:0x6 zxid:0xfffffffffffffffe txntype:unknown reqpath:/ Error 
> Path:null Error:KeeperErrorCode = Session moved

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