Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

INDY-1924: Catchup and audit design proposal #1044

Merged
merged 1 commit into from
Dec 26, 2018

Conversation

skhoroshavin
Copy link
Member

Signed-off-by: Sergey Khoroshavin sergey.khoroshavin@dsr-corporation.com

Signed-off-by: Sergey Khoroshavin <sergey.khoroshavin@dsr-corporation.com>
@sovbot
Copy link
Contributor

sovbot commented Dec 26, 2018

Can one of the admins verify this patch?

@skhoroshavin
Copy link
Member Author

(ci) test this please

@ashcherbakov ashcherbakov merged commit bb57c20 into hyperledger:master Dec 26, 2018
@skhoroshavin skhoroshavin deleted the indy-1924 branch December 26, 2018 13:43

### Description

Create one more ledger (let’s call it Audit), and for each ordered batch make
Copy link
Contributor

@lovesh lovesh Dec 28, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why create a separate ledger? Why not persist viewNo and ppSeqNo in the respective ledger apart from storing other ledger's root hash if it had changed. Then building a total order across txns is same as building a single sorted list from multiple sorted lists. So for example domain ledger looks like this

Domain ledger Batch1
     (viewNo1, ppSeqNo1, pool root, config root)  // part of domain ledger merkle tree as a leaf, like any other txn but with some special designator to differentiate it from txns.
     domain txn 1
     domain txn 2
Domain ledger Batch2
     (viewNo1, ppSeqNo2)    // no change in pool or config ledger
     domain txn 3
     domain txn 4
     domain txn 5
Domain ledger Batch4    // batch 3 was for config ledger
     (viewNo1, ppSeqNo4, config root)    // config ledger changed config; ledger new root (part of domain ledger merkle tree a leaf, like any other txn)
     domain txn 6
     domain txn 7

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants