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

genesis-test: Create DB snapshot using full tx isolation #298

Merged
merged 1 commit into from
Jan 30, 2023

Conversation

mitjat
Copy link
Contributor

@mitjat mitjat commented Jan 30, 2023

As discussed on Slack, mainnet-indexer-statecheck (the cron job that runs genesis_test on consensus) consistently fails. A possible cause for failure is that the test creates an inconsistent snapshot of the indexer state, due to not using a strong enough DB tx isolation level.

This PR uses SERIALIZABLE, the strongest tx isolation level, for snapshot creation.

More about DB tx isolation levels:
https://www.postgresql.org/docs/current/transaction-iso.html

I created a dev docker image and I'm deploying this now to see what the effect is.

kubectl -n monitoring create job --from=cronjobs/mainnet-indexer-statecheck manual-indexer-statecheck-mitjat

@mitjat
Copy link
Contributor Author

mitjat commented Jan 30, 2023

A test run completed. Unfortunately, it still fails in the same way as before: some nonces, allowances etc are off.
We should still merge this PR; it's a legitimate bug in the test harness.

@mitjat mitjat merged commit a19167d into main Jan 30, 2023
@mitjat mitjat deleted the mitjat/genesis-test-tx-isolation branch January 30, 2023 20:07
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