William Banfield
3de294a513
clang format intermediate file
2022-03-15 10:03:38 -04:00
William Banfield and GitHub
e87cef8dd3
Merge branch 'master' into wb/abci-prepare-proposal-synchronize
2022-03-15 09:54:05 -04:00
William Banfield
9781ec60ae
update validation comment
2022-03-15 09:34:59 -04:00
b08dd93d88
libs/log: remove Must constructor ( #8120 )
...
* libs/log: remove Must constructor
* Update test/e2e/node/main.go
Co-authored-by: M. J. Fromberger <michael.j.fromberger@gmail.com >
* use stdlog
Co-authored-by: M. J. Fromberger <michael.j.fromberger@gmail.com >
2022-03-15 13:02:31 +00:00
William Banfield and GitHub
6da708049f
Merge branch 'master' into wb/abci-prepare-proposal-synchronize
2022-03-15 01:05:52 -04:00
William Banfield
11edd067e7
add test for preserving order
2022-03-15 00:32:42 -04:00
William Banfield
e080b9c740
helper fixups
2022-03-15 00:04:15 -04:00
William Banfield
3783fbb327
change mh variable
2022-03-15 00:00:46 -04:00
William Banfield
438adcd0dd
split into smaller functions
2022-03-14 19:49:15 -04:00
William Banfield
fa9b029a26
defensive copy + layout change
2022-03-14 18:01:09 -04:00
1dce618a65
Apply suggestions from code review
...
Co-authored-by: M. J. Fromberger <fromberger@interchain.io >
2022-03-14 17:56:04 -04:00
William Banfield
747eb86de8
remove Get prefix
2022-03-14 17:51:54 -04:00
William Banfield
5a5167974f
remove comment incorrectly stating allocation by NewTxRecordSet
2022-03-14 17:48:54 -04:00
William Banfield
7c7307961b
remove TxRecordsToTxs
2022-03-14 17:47:40 -04:00
William Banfield
235a636af2
comment Txs sort
2022-03-14 17:47:09 -04:00
b1ddcb947d
Update proto/tendermint/abci/types.proto.intermediate
...
Co-authored-by: M. J. Fromberger <fromberger@interchain.io >
2022-03-14 17:45:02 -04:00
William Banfield
a843d8bf28
createProposalBlock explicit returns
2022-03-14 17:41:29 -04:00
William Banfield
889488f92c
log if part set errors
2022-03-14 17:35:59 -04:00
William Banfield
89c932352b
comment types_test
2022-03-14 17:34:33 -04:00
William Banfield
51cf3fe7db
rename to MarshalTxResults
2022-03-14 17:32:56 -04:00
William Banfield
c8844abd62
create separate removed list in kvstore
2022-03-14 17:29:51 -04:00
Sam Kleinman and GitHub
a5320da5c8
node: cleanup evidence db ( #8119 )
2022-03-14 21:00:51 +00:00
William Banfield
4bf2027d3c
comment the validation logic
2022-03-14 15:55:22 -04:00
William Banfield
bef6ab6e51
remove methods from abci tx records
2022-03-14 14:54:07 -04:00
William Banfield
9082915626
implement TxRecordSet for dealing with TxRecord validation
2022-03-14 14:52:19 -04:00
William Banfield and GitHub
8e5dfa55ef
rfc: RFC 015 ABCI++ Tx Mutation ( #8033 )
...
This pull requests adds an RFC to discuss the proposed mechanism for transaction replacement detailed in the ABCI++ specification.
2022-03-14 09:49:04 -04:00
Jordi Pinyana and GitHub
70df7d9e6e
readme: add vocdoni ( #8117 )
...
Add Vocdoni under applications section on the README.
2022-03-14 12:52:19 +00:00
frog power 4000 and GitHub
98dd0d6c5a
minor typo in docs ( #8116 )
2022-03-13 21:09:49 -07:00
frog power 4000 and GitHub
aff1481682
Update abci++_basic_concepts_002_draft.md ( #8114 )
...
Minor Typo (nice doc!)
2022-03-12 18:57:43 -08:00
William Banfield
ce9b5982bc
fix all cases of CreateProposalBlock votes
2022-03-11 17:39:15 -05:00
William Banfield
64b0b0a646
mempool_test does not make new list of Tx
2022-03-11 17:31:26 -05:00
William Banfield
4655d5d9f0
trim prefix from demo app
2022-03-11 17:29:44 -05:00
William Banfield
ca1824b415
update substPrepareTx
2022-03-11 17:24:02 -05:00
William Banfield
1500369946
remove transaction hash log
2022-03-11 17:00:50 -05:00
William Banfield
dac4e84990
test only deterministic fields used in hash
2022-03-11 16:59:45 -05:00
William Banfield
0ca101912f
comment tx fix
2022-03-11 16:41:57 -05:00
William Banfield
d3c4f7c7d9
change app prepareproposal
2022-03-11 16:41:56 -05:00
William Banfield
5849b16dff
fix joined lines
2022-03-11 16:41:55 -05:00
William Banfield
232b38100b
use block.Txs
2022-03-11 16:41:54 -05:00
William Banfield
dd98161894
thread vote information through for future use by vote extensions
2022-03-11 16:41:49 -05:00
M. J. Fromberger and GitHub
e9bc33d807
consensus: ensure the node terminates on consensus failure ( #8111 )
...
Updates #8077 . The panic handler for consensus currently attempts to effect a
clean shutdown, but this can leave a failed node running in an unknown state
for an arbitrary amount of time after the failure.
Since a panic at this point means consensus is already irrecoverably broken, we
should not allow the node to continue executing. After making a best effort to
shut down the writeahead log, re-panic to ensure the node will terminate before
any further state transitions are processed.
Even with this change, it is possible some transitions may occur while the
cleanup is happening. It might be preferable to abort unconditionally without
any attempt at cleanup.
Related changes:
- Clean up the creation of WAL directories.
- Filter WAL close errors at rethrow.
2022-03-11 13:30:15 -08:00
Thane Thomson and GitHub
72bbe64da7
proto: update proto generation to use buf ( #7975 )
...
* Hard-code go_package option for .proto files
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Automatically relocate generated ABCI types after proto-gen
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Skip building gogoproto (i.e. only build our types)
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove unnecessary proto generation scripts
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Upgrade buf config from v1beta1 to v1
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Add simple proto generation script
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Replace buf-based protobuf generation with simple protoc-based approach
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove custom buf-based Docker image generation config and Dockerfile
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Adopt Cosmos SDK's approach to Protobuf linting and breakage checking in CI
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Suppress command echo when running proto checks
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Fix proto-check workflow YAML indentation
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Restore proto-format target
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Replace custom BASH script with make equivalent
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove proto linting/breaking changes CI checks after discussion today
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove dangling reference to CI workflow that no longer exists
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Update contributing guidelines relating to protos
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Use buf instead for generating protos
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove unused buf config for gogoprotobuf
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Add reminder for if we migrate fully to buf
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Restore protopackage script for #8065
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Fix permissions on protopackage script
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Update contributing guidelines to show building of protos using buf
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Fix breaking changes check and add disclaimer
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Expand on contributing guidelines for clarity
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Re-remove old proto workflows
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Add buf-based proto linting workflow in CI
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Superficially reorder proto targets
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Fix proto lints
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Fix GA workflow YAML indentation
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Temporarily use forked version of mlc
Use forked version of markdown-link-check until
https://github.com/gaurav-nelson/github-action-markdown-link-check/pull/126
lands.
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Temporarily disable markdown link checker
Signed-off-by: Thane Thomson <connect@thanethomson.com >
* Remove gogo protos - superseded by version from buf registry
Signed-off-by: Thane Thomson <connect@thanethomson.com >
2022-03-11 14:10:46 -05:00
William Banfield
26c4f9088f
add error log for failure to create proposal block
2022-03-11 12:57:05 -05:00
William Banfield
46cc63dccc
types_test comment changes
2022-03-11 12:50:07 -05:00
William Banfield
8765d1e506
wip tx hashing
2022-03-11 12:40:48 -05:00
William Banfield
4d8e81a1f5
error message change
2022-03-11 12:00:56 -05:00
William Banfield
6ce11e5e5e
check duplicates of different types in txrecords
2022-03-11 11:55:59 -05:00
William Banfield
3c35f894f3
remove empty tx records in substPrepareTx
2022-03-11 11:27:27 -05:00
M. J. Fromberger and GitHub
658a7661c5
p2p: remove unnecessary panic handling in PEX reactor ( #8110 )
...
The message handling in this reactor is all under control of the reactor
itself, and does not call out to callbacks or other externally-supplied code.
It doesn't need to check for panics.
- Remove an irrelevant channel ID check.
- Remove an unnecessary panic recovery wrapper.
2022-03-11 08:23:03 -08:00
M. J. Fromberger and GitHub
89b4321af2
p2p: update polling interval calculation for PEX requests ( #8106 )
...
The PEX reactor has a simple feedback control mechanism to decide how often to
poll peers for peer address updates. The idea is to poll more frequently when
knowledge of the network is less, and decrease frequency as knowledge grows.
This change solves two problems:
1. It is possible in some cases we may poll a peer "too often" and get dropped
by that peer for spamming.
2. The first successful peer update with any content resets the polling timer
to a very long time (10m), meaning if we are unlucky in getting an
incomplete reply while the network is small, we may not try again for a very
long time. This may contribute to difficulties bootstrapping sync.
The main change here is to only update the interval when new information is
added to the system, and not (as before) whenever a request is sent out to a
peer. The rate computation is essentially the same as before, although the code
has been a bit simplified, and I consolidated some of the error handling so
that we don't have to check in multiple places for the same conditions.
Related changes:
- Improve error diagnostics for too-soon and overflow conditions.
- Clean up state handling in the poll interval computation.
- Pin the minimum interval avert a chance of PEX spamming a peer.
2022-03-11 07:49:33 -08:00