Skip to content

feat!: integrate RS Drive and GroveDB#177

Merged
shumkov merged 106 commits into
v0.22-devfrom
grovedb
Feb 23, 2022
Merged

feat!: integrate RS Drive and GroveDB#177
shumkov merged 106 commits into
v0.22-devfrom
grovedb

Conversation

@shumkov
Copy link
Copy Markdown
Collaborator

@shumkov shumkov commented Jan 6, 2022

Issue being fixed or feature implemented

To provide cryptographically verifiable proofs for document secondary indices and atomicity for state commit we need to migrate from MongoDB to a homemade DB made specifically for this purpose - GroveDB

What was done?

  • feat: allow using Document and Identifier for startAt and startAfter in document query #227
  • removed double tree workaround
  • removed MongoDB
  • integrated RS Drive for Document and DataContract repositories
  • introduced signed state and signed state rotation
  • disabled proofs
  • removed multi-tree proofs
  • removed root tree (GroveDB has it)
  • stored all data in single instance of GroveDB and atomically commit it
  • refactored init chain handler
  • introduced query constraints
  • introduced block execution context stack
  • and much more

How Has This Been Tested?

Running local tests

Breaking Changes

  • New state is not compatible with previous versions
  • Document queries have limitations compared with previous versions
  • Proofs are temporary disabled

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have made corresponding changes to the documentation

For repository code-owners and collaborators only

  • I have assigned this pull request to a milestone

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Jan 7, 2022

This pull request introduces 6 alerts when merging 8b6845e into 7830a9c - view on LGTM.com

new alerts:

  • 5 for Unused variable, import, function or class
  • 1 for Syntax error

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Jan 7, 2022

This pull request introduces 6 alerts when merging a976290 into dd6d9ee - view on LGTM.com

new alerts:

  • 5 for Unused variable, import, function or class
  • 1 for Syntax error

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Jan 10, 2022

This pull request introduces 12 alerts when merging d8cc295 into 5c1cc21 - view on LGTM.com

new alerts:

  • 9 for Unused variable, import, function or class
  • 2 for Syntax error
  • 1 for Missing await

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Jan 13, 2022

This pull request introduces 11 alerts when merging 6698f7d into ca3c222 - view on LGTM.com

new alerts:

  • 8 for Unused variable, import, function or class
  • 2 for Syntax error
  • 1 for Missing await

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Jan 20, 2022

This pull request introduces 4 alerts when merging 868b15c into 44083bc - view on LGTM.com

new alerts:

  • 3 for Unused variable, import, function or class
  • 1 for Missing await

Konstantin Shuplenkov and others added 2 commits January 25, 2022 17:32
@shumkov shumkov added this to the v0.22.0 milestone Feb 1, 2022
@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 3, 2022

This pull request introduces 4 alerts when merging 603ef40 into 76375ed - view on LGTM.com

new alerts:

  • 3 for Unused variable, import, function or class
  • 1 for Missing await

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 4, 2022

This pull request introduces 1 alert when merging d3099ef into 76375ed - view on LGTM.com

new alerts:

  • 1 for Missing await

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 22, 2022

This pull request introduces 1 alert when merging a874898 into 707f8ab - view on LGTM.com

new alerts:

  • 1 for Unused variable, import, function or class

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 22, 2022

This pull request introduces 1 alert when merging cd3d132 into 707f8ab - view on LGTM.com

new alerts:

  • 1 for Unused variable, import, function or class

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 22, 2022

This pull request introduces 1 alert when merging 13d612c into 707f8ab - view on LGTM.com

new alerts:

  • 1 for Unused variable, import, function or class

@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 22, 2022

This pull request introduces 1 alert when merging 74809fb into 707f8ab - view on LGTM.com

new alerts:

  • 1 for Unused variable, import, function or class

@shumkov shumkov marked this pull request as ready for review February 22, 2022 15:45
@shumkov shumkov requested a review from antouhou as a code owner February 22, 2022 15:45
@lgtm-com
Copy link
Copy Markdown

lgtm-com Bot commented Feb 22, 2022

This pull request introduces 1 alert when merging 51a75e4 into 707f8ab - view on LGTM.com

new alerts:

  • 1 for Unused variable, import, function or class

Comment thread packages/js-drive/test/unit/abci/handlers/beginBlockHandlerFactory.spec.js Outdated
Copy link
Copy Markdown
Contributor

@jawid-h jawid-h left a comment

Choose a reason for hiding this comment

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

Huge pr! 👍

@shumkov shumkov merged commit 4dfb826 into v0.22-dev Feb 23, 2022
@shumkov shumkov deleted the grovedb branch February 23, 2022 09:33
@shumkov shumkov changed the title feat: integrate RS Drive and GroveDB feat!: integrate RS Drive and GroveDB Mar 2, 2022
Alex-Werner added a commit that referenced this pull request Apr 24, 2022
shumkov pushed a commit that referenced this pull request Nov 24, 2022
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.

3 participants