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

Ensure tx meta is v2 when getting ledgers with protocol version <10 #2095

Closed
bartekn opened this issue Jan 9, 2020 · 1 comment
Closed
Labels
ingest New ingestion system

Comments

@bartekn
Copy link
Contributor

bartekn commented Jan 9, 2020

As explained by @MonsieurNicolas in #1902:

There is some missing meta in protocol version older than version 10. This impacts transactions with one time signers (that get removed after operations in v9 and earlier; and during signature verification in v10 and later). Those changes are invisible in the meta which may confuse certain ingestion processors that keep track of signers on accounts.

It's possible that users will use stellar-core without SUPPORTED_META_VERSION=2 and in such case ingestion system can process meta incorrectly. I think we should check the protocol version of the ledger in DatabaseBackend.GetLedger and if it's <10 it should check if txmeta version is equal 2. Otherwise it should return error.

@bartekn
Copy link
Contributor Author

bartekn commented Jan 9, 2020

Fixed in #2099.

@bartekn bartekn closed this as completed Jan 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ingest New ingestion system
Projects
None yet
Development

No branches or pull requests

1 participant