4.2.1 RequestVersionVector
The client can engage in a sequence of calls.
The following table shows the call RequestVersionVector with arguments.
sequenceNumber |
23 |
---|---|
requestType |
REQUEST_NORMAL_SYNC |
changeType |
CHANGE_ALL |
vvGeneration |
0 |
The server then responds with a callback to AsyncPoll, where the return parameter of AsyncPoll is populated.
sequenceNumber |
23 |
---|---|
status |
status |
vvResponse |
|
To obtain the next server version vector, the client can then call the following.
sequenceNumber |
103 |
Fresh sequence number |
---|---|---|
requestType |
REQUEST_NORMAL_SYNC |
|
changeType |
CHANGE_ALL |
|
vvGeneration |
45 |
The generation returned by the previous call |
The client uses the value of vvGeneration returned by the server to ensure that the server does not immediately invoke the AsyncPoll callback with the same version chain vector, but waits until the server has made a change to its version chain vector that supersedes the version chain vector returned in the first response.