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

[config] set override unsafeTimeoutOverride to false by default #59

Merged
merged 5 commits into from
Feb 3, 2023

Conversation

BrandonWeng
Copy link
Contributor

@BrandonWeng BrandonWeng commented Feb 3, 2023

Describe your changes and provide context

e.g sei-protocol/sei-cosmos#153

Based on the logs, the data race is between QueryContext and the Finalizeblock for app.checkState.ctx.

I narrowed it cause and it seems like with UnsafeBypassCommitTimeoutOverride=true on by default, the single node consensus is much faster as it doesn't need to wait for timeout, all the datarace failures are happening in the query cli unit tests so i suspect that the queries and the async network are handled in different gorountines and thus have async access to checkState.Ctx (one is updating through finalizeBlock while the unit test is querying it)

Its fine to set to false, since it's mainly exposing the behavior that CLI queries do not have a freshness guarantee, which is expected as the data is constantly changing

Testing performed to validate your change

Tag has this change to set to false, will tag from main after this merges
sei-protocol/sei-cosmos#152

@BrandonWeng BrandonWeng changed the title Bweng fix cosmos [config] set override unsafeTimeoutOverride to false by default Feb 3, 2023
@BrandonWeng BrandonWeng marked this pull request as ready for review February 3, 2023 05:18
@@ -1009,7 +1009,7 @@ func (cs *State) receiveRoutine(ctx context.Context, maxSteps int) {
func (cs *State) fsyncAndCompleteProposal(ctx context.Context, fsyncUponCompletion bool, height int64, span otrace.Span) {
if fsyncUponCompletion {
if err := cs.wal.FlushAndSync(); err != nil { // fsync
panic("error flushing wal after receiving all block parts")
panic(fmt.Sprintf("error flushing wal after receiving all block parts error=%s", err))
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

debug the flakey test

@BrandonWeng BrandonWeng merged commit 5243370 into main Feb 3, 2023
@BrandonWeng BrandonWeng deleted the bweng-fix-cosmos branch February 3, 2023 05:51
Timwood0x10 pushed a commit to Timwood0x10/sei-tendermint that referenced this pull request Jun 7, 2023
## Describe your changes and provide context
This adds the gov proposal type for wasm dependency mapping updates.
## Testing performed to validate your change
Based the changes off of this PR:
https://github.com/sei-protocol/sei-cosmos/pull/33/files
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.

3 participants