-
Notifications
You must be signed in to change notification settings - Fork 502
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
/exp/services/ledgerexporter: resumable export, check data storage for optimal starting point #5264
Conversation
…ased on latest data in data storage layer, avoiding export of data that already exists on storage.
I need to run some live integration tests, building ledgerexporter and running it against GCS bucket. |
…nces to config values
I ran ledgerexporter on testnet against a real gcs bucket doing a sequence of commands that requested ranges overlapping, to confirm the expected resumable starts were calculated, using
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good! I left a few minor suggestions, feel free to apply them as you see fit
Co-authored-by: tamirms <[email protected]>
Co-authored-by: tamirms <[email protected]>
…feedback Co-authored-by: tamirms <[email protected]>
PR Checklist
PR Structure
otherwise).
services/friendbot
, orall
ordoc
if the changes are broad or impact manypackages.
Thoroughness
.md
files, etc... affected by this change). Take a look in the
docs
folder for a given service,like this one.
Release planning
needed with deprecations, added features, breaking changes, and DB schema changes.
semver, or if it's mainly a patch change. The PR is targeted at the next
release branch if it's not a patch change.
What
ResumableManager
, app will call this during init to apply a best effort attempt to check data storage layer and increase the effectivestart
value for captive core ingestion to the boundary aligned starting ledger of the nearest absent object key of data store relative to requestedstart
.datastore_config.type
to know which datastore instance to create, passing thedatastore_config.params
to it:Why
Efficiency of exporter, avoiding exporting files to data store that may already be present.
Closes: https://stellarorg.atlassian.net/browse/HUBBLE-272
Known limitations