Commit Graph
333 Commits
Author SHA1 Message Date
William Banfield cdaf6cbfa9 readability fixups 2022-03-02 09:50:14 -05:00
927a423c17 Update internal/consensus/mempool_test.go
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
2022-03-02 09:49:17 -05:00
01a1379dbf Update internal/state/execution_test.go
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
2022-03-02 09:49:10 -05:00
c3ee75413d Update internal/state/indexer/block/kv/kv.go
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
2022-03-02 09:44:15 -05:00
William Banfield 5721a13ab1 remove validate precommit 2022-03-01 18:57:32 -05:00
William Banfield 4e859073c6 lint++ 2022-03-01 18:39:48 -05:00
William Banfield 5425c83f1b finish Update refactor 2022-03-01 18:20:33 -05:00
William Banfield 750551e855 make state update a public method 2022-03-01 17:49:58 -05:00
William Banfield 69599dbed7 update signature for state update function 2022-03-01 17:43:08 -05:00
William Banfield 9528a22b37 use abci responses for hash creation 2022-03-01 16:57:54 -05:00
William Banfield 2d2114463b remove overuse of abciresponses variable 2022-03-01 15:40:32 -05:00
William Banfield 52815091b3 remove finalize block helper function 2022-03-01 15:19:10 -05:00
William Banfield 844f1075fb fixups 2022-03-01 14:58:51 -05:00
William Banfield d31d222e83 lint fixups 2022-03-01 14:53:59 -05:00
William Banfield fafdc320b0 state tests passing 2022-03-01 14:46:13 -05:00
William Banfield dcf47ec76f fixup last commit test 2022-03-01 14:46:13 -05:00
William Banfield 8103b94044 wip on test fix 2022-03-01 14:46:13 -05:00
William Banfield c941d8e0e9 add test case to ensure call to finalize block 2022-03-01 14:46:13 -05:00
William Banfield 5e210ce5d8 remove assertion that finalize block being generated for psql indexer 2022-03-01 14:46:13 -05:00
William Banfield 1eac8534a0 change out event type for psql indexer 2022-03-01 14:46:13 -05:00
William Banfield 8a9f722caa remove most references to endblock 2022-03-01 14:46:13 -05:00
William Banfield 8d79f3bf7c remove most remaining references to BeginBlock 2022-03-01 14:46:13 -05:00
William Banfield 1b4daf7c5f name begin/end_events 2022-03-01 14:46:13 -05:00
William Banfield 1fb789e7b7 remove needless nil variable 2022-03-01 14:46:13 -05:00
William Banfield eca41af266 update comment 2022-03-01 14:46:13 -05:00
William Banfield 42a01cc966 reorder block fields for aesthetics 2022-03-01 14:46:13 -05:00
William Banfield a97c1819c3 remove unhelpful comment 2022-03-01 14:46:13 -05:00
William Banfield ecb13bb4fd remove useless panic test 2022-03-01 14:46:13 -05:00
William Banfield 83fc8c4601 variable renames for finalize 2022-03-01 14:46:13 -05:00
William Banfield 21df89b60f consensus: rename deliver tx helper 2022-03-01 14:46:13 -05:00
William Banfield afbaa86a63 cleanup remaining struct problems 2022-03-01 14:46:13 -05:00
William Banfield a341046b28 update sites of DeliverTx 2022-03-01 14:46:11 -05:00
William Banfield 1aa5dda364 block events and tx fixups 2022-03-01 14:42:44 -05:00
William Banfield e3ff082f21 rename Txs -> TxResults 2022-03-01 14:42:41 -05:00
Sam KleinmanandGitHub 21087563eb consensus: validator set changes test cleanup (#8035)
This is mostly an extremely small change where I double a somewhat
arbitrarly set timeout from 1m to 2m for an entire test. When I put
these timeouts in the test, they were arbitrary based on my local
performance (which is quite fact,) and I expected that they'd need to
be tweaked in the future.

A big chunk of this PR is reworking a collection of helper functions
that produce somewhat intractable messages when a test fails, so that
the error messages take up less vertical space, hopefully without
losing any debugability.
2022-03-01 13:42:00 +00:00
Sam KleinmanandGitHub a965f03c15 statesync: avoid compounding retry logic for fetching consensus parameters (#8032)
We're waiting between trying witnesses (which shouldn't be neccessary
because the witnesses shouldn't depend on each other,) and also
between *attempts*, and really the outer sleep should be enough.
2022-03-01 13:01:57 +00:00
Sam KleinmanandGitHub 58dc172611 p2p: plumb rudamentary service discovery to rectors and update statesync (#8030)
This is a little coarse, but the idea is that we'll send information
about the channels a peer has upon the peer-up event that we send to
reactors that we can then use to reject peers (if neeeded) from reactors.

This solves the problem where statesync would hang in test networks
(and presumably real) where we would attempt to statesync from seed
nodes, thereby hanging silently forever.
2022-02-28 20:02:54 +00:00
f25b7ceeb2 consensus: make orchestration more reliable for invalid precommit test (#8013)
Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
2022-02-26 00:21:59 +00:00
Sam KleinmanGitHubmergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
a153f82433 p2p: ignore transport close error during cleanup (#8011)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-02-25 14:48:41 -05:00
William BanfieldandGitHub c80734e5af state: synchronize the ProcessProposal implementation with the latest version of the spec (#7961)
This change implements the spec for `ProcessProposal`. It first calls the Tendermint block validation logic to check that all of the proposed block fields are well formed and do not violate any of the rules for Tendermint to consider the block valid and then passes the validated block the `ProcessProposal`.

This change also adds additional fixtures to test the change. It adds the `baseMock` types that holds a mock as well as a reference to `BaseApplication`. If the function was not setup by the test on the contained mock Application, the type delegates to the `BaseApplication` and returns what `BaseApplication` returns. 

The change also switches the `makeState` helper to take an arg struct so that an ABCI application can be plumbed through when needed.

closes: #7656
2022-02-25 18:56:34 +00:00
Sam KleinmanandGitHub 89dbebd1c5 p2p: retry failed connections slightly more aggressively (#8010)
* p2p: retry failed connections slightly more aggressively

* fix dial interval test
2022-02-25 18:05:29 +00:00
Sam KleinmanandGitHub c8ae5db50e p2p: relax pong timeout (#8007) 2022-02-25 10:58:29 -05:00
49e3688b79 fix syncAny test (#8001)
Co-authored-by: Sam Kleinman <garen@tychoish.com>
2022-02-25 10:33:28 -05:00
c85e3e4ba8 p2p: mconn track last message for pongs (#7995)
* p2p: mconn track last message for pongs

* fix spell

* cr feedback

* test fix part one

* cleanup tests

* fix comment

Co-authored-by: M. J. Fromberger <fromberger@interchain.io>
2022-02-25 15:15:13 +00:00
M. J. FrombergerandGitHub 0875074ea2 Add upgrading notes for the new Events RPC interface. (#7993)
Add deprecation logs when websocket is enabled
As promised in ADR 075, this causes the node to log (without error) when
websocket transport is enabled, and also when subscribers connect.
2022-02-24 15:04:55 -08:00
Sam KleinmanandGitHub 680ebc6f8e consensus: TestReactorValidatorSetChanges test fix (#7985) 2022-02-24 12:47:27 -05:00
M. J. FrombergerandGitHub 5662bd12a8 rpc: implement the ADR 075 /events method (#7965)
This method implements the eventlog extension interface to expose ABCI metadata
to the log for query processing. Only the types that have ABCI events need to
implement this.

- Add an event log to the environment
- Add a sketch of the handler method
- Add an /events RPCFunc to the route map
- Implement query logic
- Subscribe to pubsub if confingured, handle termination
2022-02-23 15:22:40 -08:00
Sam KleinmanandGitHub 61a81279bd abci: make tendermint example+test clients manage a mutex (#7978)
This is the first step in removing the mutex from ABCI applications:
making our test applications hold mutexes, which this does, hopefully
with zero impact. If this lands well, then we can explore deleting the
other mutexes (in the ABCI server and the clients.) While this change
is not user impacting at all, removing the other mutexes *will* be. 

In persuit of this, I've changed the KV app somewhat, to put almost
all of the logic in the base application and make the persistent
application mostly be a wrapper on top of that with a different
storage layer.
2022-02-23 22:39:47 +00:00
Sam KleinmanandGitHub 9968f53c15 p2p: make mconn transport test less flaky (#7973)
The previous implementation of the *test* was flaky, and this irons
out some of those problems. The primary assertion that was failing
(less than 1% of the time) was an error on close that I think we
shouldn't care about.
2022-02-23 19:06:03 +00:00
Sam KleinmanandGitHub 2ffb262600 context: cleaning up context dead ends (#7963) 2022-02-22 20:04:16 +00:00