-
Notifications
You must be signed in to change notification settings - Fork 274
Problem: memiavl too strict on target version #1780
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
Conversation
WalkthroughThis pull request updates the memiavl component by changing the version loading behavior and modifying the WAL catch-up logic. The CHANGELOG now documents that the LoadVersion method loads up to the target version rather than an exact match. A new configuration parameter, Changes
Sequence Diagram(s)sequenceDiagram
participant Caller
participant MultiTree
participant walIndex
Caller->>MultiTree: Invoke CatchupWAL(lastIndex, endVersion, initialVersion)
alt endVersion equals 0
MultiTree->>Caller: Set endIndex to lastIndex
else
MultiTree->>walIndex: Compute endIndex using (endVersion, initialVersion)
walIndex-->>MultiTree: Return computed endIndex
end
alt computed endIndex > lastIndex
MultiTree->>Caller: Cap endIndex to lastIndex and return
else
MultiTree->>Caller: Return computed endIndex
end
Possibly related PRs
Suggested reviewers
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (3)
⏰ Context from checks skipped due to timeout of 90000ms (17)
🔇 Additional comments (3)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
When consolidate minimal version between memiavl and versiondb, we expect memiavl to load up to the target version, rather than exact target version. Update CHANGELOG.md Signed-off-by: yihuang <[email protected]>
…ain#1780) When consolidate minimal version between memiavl and versiondb, we expect memiavl to load up to the target version, rather than exact target version. Update CHANGELOG.md Signed-off-by: yihuang <[email protected]>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1780 +/- ##
==========================================
+ Coverage 16.87% 17.13% +0.25%
==========================================
Files 72 75 +3
Lines 6163 6205 +42
==========================================
+ Hits 1040 1063 +23
- Misses 5000 5018 +18
- Partials 123 124 +1 🚀 New features to boost your workflow:
|
* Problem: memiavl too strict on target version (backport #1780) When consolidate minimal version between memiavl and versiondb, we expect memiavl to load up to the target version, rather than exact target version. Update CHANGELOG.md Signed-off-by: yihuang <[email protected]> * Update CHANGELOG.md Co-authored-by: yihuang <[email protected]> Signed-off-by: mmsqe <[email protected]> --------- Signed-off-by: yihuang <[email protected]> Signed-off-by: mmsqe <[email protected]> Co-authored-by: mmsqe <[email protected]>
related prs crypto-org-chain/cronos#1684 crypto-org-chain/cronos#1685 crypto-org-chain/cronos#1688 (not include versionDB.SetSkipVersionZero(true) in app.go) crypto-org-chain/cronos#1751 crypto-org-chain/cronos#1759 (notice not include cronos storeloader and upgrades) crypto-org-chain/cronos#1780
related prs crypto-org-chain/cronos#1684 crypto-org-chain/cronos#1685 crypto-org-chain/cronos#1688 (not include versionDB.SetSkipVersionZero(true) in app.go) crypto-org-chain/cronos#1751 crypto-org-chain/cronos#1759 (notice not include cronos storeloader and upgrades) crypto-org-chain/cronos#1780
update memival,store,versondb related prs crypto-org-chain/cronos#1684 crypto-org-chain/cronos#1685 crypto-org-chain/cronos#1688 (Do not include versionDB.SetSkipVersionZero(true) in app.go) crypto-org-chain/cronos#1751 crypto-org-chain/cronos#1759 (note: Do not include cronos storeloader and upgrades) note: I don't use this. crypto-org-chain/cronos#1780 because it update rocksdbs from version 9.2.1 to 9.11.2
When consolidate minimal version between memiavl and versiondb, we expect memiavl to load up to the target version, rather than exact target version.
👮🏻👮🏻👮🏻 !!!! REFERENCE THE PROBLEM YOUR ARE SOLVING IN THE PR TITLE AND DESCRIBE YOUR SOLUTION HERE !!!! DO NOT FORGET !!!! 👮🏻👮🏻👮🏻
PR Checklist:
make)make test)go fmt)golangci-lint run)go list -json -m all | nancy sleuth)Thank you for your code, it's appreciated! :)
Summary by CodeRabbit
New Features
Improvements