I have two questions about Ogmios local chain sync protocol's RollBackward message


1. When RollBackward is being sent, is the cursor automatically moved back to the top common chain prefix?

Or does the client somehow need to react to it? (e.g. Send FindIntersect to that point)

2. Assumming the client is only interested in the common chain, how should it react to the RollBackward message?

The following is the assumption that the client should behave:

When the client receives RollBackward, the client should delete any blocks in which the slot number is bigger than that of RollBackward is specifying.

For instance, just before Rollback, the client side holds the following block information (the following is the slot number)

 Slot(12222) -> Slot(12300) -> Slot(12333) -> Slot(12400)

It then receives the following RollBackward:

    "RollBackward" : {
      "point" : {
        "slot" : 122250,
        "hash" : "68b549c134e0337e5eb36c004f5401510e4385e0c7f92f78920bff7c44da8c51"

At this point, the client should delete block with slot 12300, 12333, 12400 then resume it's syncing process by calling RequestNext

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.