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

[neox] persistence #1721

Merged
merged 62 commits into from
Jun 29, 2020
Merged

[neox] persistence #1721

merged 62 commits into from
Jun 29, 2020

Conversation

ZhangTao1596
Copy link
Contributor

Change #1692 to neox

mpt integration (Step 2/4)

  • Add LocalStateRoot in persistence to store every local root hash when block persisted completed.
  • Add ValidatorsStateRoot to store the latest confirmed state root with cn signatures.
  • Use MPT in Storages

We use the latest StateRoot from cn to verify local state no matter historical state roots are.

@ZhangTao1596
Copy link
Contributor Author

@erikzhang @shargon Can we merge this?

@shargon
Copy link
Member

shargon commented Jun 23, 2020

Can we merge this?

Yes in this branch, the code looks good, but please prepare the specifications for review it before merge into master.

@ZhangTao1596
Copy link
Contributor Author

@shargon Merge?

@shargon shargon merged commit 4775de5 into neo-project:neox Jun 29, 2020
@ZhangTao1596 ZhangTao1596 deleted the neox-persistence branch July 17, 2020 02:40
ZhangTao1596 added a commit to ZhangTao1596/neo that referenced this pull request Jul 17, 2020
* don't use snapshot directly in plugin

* persistence and ut

* fix mpt

* precommit

* fix commit

* rm LocalRootHashIndex

* fix ut

* pre commit

* fix clone view

* change name

* rename

* abstract

* comment

* fix ReadOnlyView

* rm precommit

* rm HashState

* add MPTDataCache

* optimze

* optimize

* remove blank line

* StateRoot verify fee

* expose Root in MPTDataCache

* fix some and ut

* merge master

* master

* fix mpt ut

* fix Storages and name

* rename

* add comment

* proof prefix

* fix

* format

* format

* format

* add StateRoot ut

* reset mpt prefix

* rm GetMessage

* throw exception when no script hash in state root

* UpdateLocalStateRoot when Storages changed

* rename

Co-authored-by: Tommo-L <luchuan@neo.org>
ZhangTao1596 added a commit to ZhangTao1596/neo that referenced this pull request Jul 24, 2020
* don't use snapshot directly in plugin

* persistence and ut

* fix mpt

* precommit

* fix commit

* rm LocalRootHashIndex

* fix ut

* pre commit

* fix clone view

* change name

* rename

* abstract

* comment

* fix ReadOnlyView

* rm precommit

* rm HashState

* add MPTDataCache

* optimze

* optimize

* remove blank line

* StateRoot verify fee

* expose Root in MPTDataCache

* fix some and ut

* merge master

* master

* fix mpt ut

* fix Storages and name

* rename

* add comment

* proof prefix

* fix

* format

* format

* format

* add StateRoot ut

* reset mpt prefix

* rm GetMessage

* throw exception when no script hash in state root

* UpdateLocalStateRoot when Storages changed

* rename

Co-authored-by: Tommo-L <luchuan@neo.org>
ZhangTao1596 added a commit to ZhangTao1596/neo that referenced this pull request Aug 12, 2020
* don't use snapshot directly in plugin

* persistence and ut

* fix mpt

* precommit

* fix commit

* rm LocalRootHashIndex

* fix ut

* pre commit

* fix clone view

* change name

* rename

* abstract

* comment

* fix ReadOnlyView

* rm precommit

* rm HashState

* add MPTDataCache

* optimze

* optimize

* remove blank line

* StateRoot verify fee

* expose Root in MPTDataCache

* fix some and ut

* merge master

* master

* fix mpt ut

* fix Storages and name

* rename

* add comment

* proof prefix

* fix

* format

* format

* format

* add StateRoot ut

* reset mpt prefix

* rm GetMessage

* throw exception when no script hash in state root

* UpdateLocalStateRoot when Storages changed

* rename

Co-authored-by: Tommo-L <luchuan@neo.org>
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

2 participants