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

Store each relation child in its own key #325

Merged
merged 31 commits into from
Dec 5, 2023

Conversation

someone235
Copy link
Contributor

No description provided.

@someone235 someone235 changed the title Change each relation child its own key Store each relation child in its own key Nov 17, 2023
@someone235 someone235 force-pushed the relations-children-prefix branch 2 times, most recently from 51730e3 to 19a8b5e Compare November 18, 2023 11:52
@someone235 someone235 force-pushed the relations-children-prefix branch 2 times, most recently from f17fd2d to 94ffe39 Compare November 29, 2023 14:28
@someone235 someone235 marked this pull request as ready for review November 29, 2023 14:28
@someone235 someone235 force-pushed the relations-children-prefix branch from 94ffe39 to 3432558 Compare November 29, 2023 14:34
@someone235 someone235 force-pushed the relations-children-prefix branch from b244f58 to b0c8f0f Compare November 30, 2023 12:29
consensus/src/consensus/factory.rs Show resolved Hide resolved
simpa/src/main.rs Outdated Show resolved Hide resolved
simpa/src/main.rs Outdated Show resolved Hide resolved
consensus/src/model/stores/children.rs Outdated Show resolved Hide resolved
consensus/src/pipeline/header_processor/processor.rs Outdated Show resolved Hide resolved
consensus/src/pipeline/header_processor/processor.rs Outdated Show resolved Hide resolved
consensus/src/consensus/mod.rs Outdated Show resolved Hide resolved
michaelsutton
michaelsutton previously approved these changes Dec 1, 2023
@someone235 someone235 force-pushed the relations-children-prefix branch from fdc0134 to 0fad12f Compare December 5, 2023 10:27
someone235 and others added 6 commits December 5, 2023 10:35
- cache the new item only if the set entry already exists in the cache
- fix bug in delete_bucket where set was emptied in cache but the entry was not removed
@michaelsutton michaelsutton merged commit 2f61f1d into kaspanet:master Dec 5, 2023
6 checks passed
@someone235 someone235 deleted the relations-children-prefix branch December 5, 2023 14:25
smartgoo pushed a commit to smartgoo/rusty-kaspa that referenced this pull request Jun 18, 2024
* Store each relation child in its own key

* Database version upgrade logic

* Improve staging relations perf

* Implement CachedDbSetAccess

* Use BlockHasher for children store

* Pass children readlock

* clippy fix

* Use default Debug impl for ReadLock

* Address review comments

* Remove relations rwlock

* Get rid of relations service

* Use RefCell instead of Mutex in MemoryRelationsStore and StagingRelationsStore

* fix clippy warnings

* fix simpa for low delay values

* Improve delete_children n StagingRelationsStore

* Suggestion for removing the need for `RefCell` (#4)

* prep for ref-cell removal

* remove ref-cell from StagingRelationsStore

* remove ref-cell from MemoryRelationsStore

* add comment

* update comment

* flatten staging (semantic change only)

* unify deletions

* use correct prefix

* bug fix: add to child deletions even if not removed from insertions

* remove unused API method

* fix user msg

* add simpa as test

* Revert "Get rid of relations service"

This reverts commit e8f61b1.

* Revert "Remove relations rwlock"

This reverts commit 0a4c5dd.

* Remove redundant ChildKey

* set access:
- cache the new item only if the set entry already exists in the cache
- fix bug in delete_bucket where set was emptied in cache but the entry was not removed

* bug fix: make sure to propagate key not found err if staging has no data for this hash

* clean

* Remove redundant comment

---------

Co-authored-by: Michael Sutton <[email protected]>
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.

2 participants