sort by:
Revision Author Date Message Commit Date
73b22c0 link to the proposer-based timestamps specification 26 January 2022, 15:34:18 UTC
d337d1c increase precision value 26 January 2022, 15:26:37 UTC
5335ee1 revert making validator set smaller 26 January 2022, 00:28:43 UTC
4d981d2 increase default synchrony params 25 January 2022, 18:18:04 UTC
8cc4f9e smaller validator set for test 25 January 2022, 00:18:46 UTC
448ed42 Merge remote-tracking branch 'origin/master' into wb/pbts-rebase-master 24 January 2022, 23:23:19 UTC
2c90a86 tests: reduce timeout to 4m from 8m (#7681) 24 January 2022, 22:47:53 UTC
61679d1 increase buffer size 24 January 2022, 22:01:48 UTC
7878ca6 Delete the custom libs/json (tmjson) package. (#7673) There are no further uses of this package anywhere in Tendermint. All the uses in the Cosmos SDK are for types that now work correctly with the standard encoding/json package. 24 January 2022, 16:15:34 UTC
f6ebd84 build(deps): Bump vuepress-theme-cosmos from 1.0.182 to 1.0.183 in /docs (#7680) Bumps [vuepress-theme-cosmos](https://github.com/cosmos/vuepress-theme-cosmos) from 1.0.182 to 1.0.183. - [Release notes](https://github.com/cosmos/vuepress-theme-cosmos/releases) - [Commits](https://github.com/cosmos/vuepress-theme-cosmos/commits) --- updated-dependencies: - dependency-name: vuepress-theme-cosmos dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Callum Waters <cmwaters19@gmail.com> 24 January 2022, 13:57:39 UTC
80d3765 build(deps): Bump docker/build-push-action from 2.7.0 to 2.8.0 (#7679) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.7.0 to 2.8.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/docker/build-push-action/releases">docker/build-push-action's releases</a>.</em></p> <blockquote> <h2>v2.8.0</h2> <ul> <li>Allow specifying subdirectory with default git context (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/531">#531</a>)</li> <li>Add <code>cgroup-parent</code>, <code>shm-size</code>, <code>ulimit</code> inputs (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/501">#501</a>)</li> <li>Don't set outputs if empty or nil (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/470">#470</a>)</li> <li>docs: example to sanitize tags with metadata-action (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/476">#476</a>)</li> <li>docs: wrong syntax to sanitize repo slug (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/475">#475</a>)</li> <li>docs: test before pushing your image (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/455">#455</a>)</li> <li>readme: remove v1 section (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/500">#500</a>)</li> <li>ci: virtual env file system info (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/510">#510</a>)</li> <li>dev: update workflow (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/499">#499</a>)</li> <li>Bump <code>@​actions/core</code> from 1.5.0 to 1.6.0 (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/160">#160</a>)</li> <li>Bump ansi-regex from 5.0.0 to 5.0.1 (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/469">#469</a>)</li> <li>Bump tmpl from 1.0.4 to 1.0.5 (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/465">#465</a>)</li> <li>Bump csv-parse from 4.16.0 to 4.16.3 (<a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/451">#451</a> <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/459">#459</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/docker/build-push-action/commit/1814d3dfb36d6f84174e61f4a4b05bd84089a4b9"><code>1814d3d</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/531">#531</a> from BeyondEvil/subdir-with-default-context</li> <li><a href="https://github.com/docker/build-push-action/commit/fc5a732e0cd2fa9f30a1011a4d6ba3dbd5bcc2b5"><code>fc5a732</code></a> Add subdirectory for Git context</li> <li><a href="https://github.com/docker/build-push-action/commit/b1aeb1103e6b3b5648dbd6deaf0559919456ca6b"><code>b1aeb11</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/510">#510</a> from crazy-max/venv</li> <li><a href="https://github.com/docker/build-push-action/commit/e31f93ab9f173213268bb18cabc11fd04b4f941d"><code>e31f93a</code></a> ci: virtual env file system info</li> <li><a href="https://github.com/docker/build-push-action/commit/9ed5823618d7aa277d31c9106594ecb63692bef4"><code>9ed5823</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/501">#501</a> from crazy-max/new-inputs</li> <li><a href="https://github.com/docker/build-push-action/commit/4222161e3eb8351d8999164540f8c32116f921fa"><code>4222161</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/500">#500</a> from crazy-max/readme</li> <li><a href="https://github.com/docker/build-push-action/commit/67ff4df4b75d117a14363bce59aacd34c783c27c"><code>67ff4df</code></a> add <code>cgroup-parent</code>, <code>shm-size</code>, <code>ulimit</code> inputs</li> <li><a href="https://github.com/docker/build-push-action/commit/91274a04dae5b06f1c73a9140206dd49fbfd07c2"><code>91274a0</code></a> sort flags</li> <li><a href="https://github.com/docker/build-push-action/commit/ff329397c050186994fead34d679855583698611"><code>ff32939</code></a> readme: remove v1 section</li> <li><a href="https://github.com/docker/build-push-action/commit/04841f2a72f42f983fee5aeaea3f39559ff858f2"><code>04841f2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/docker/build-push-action/issues/499">#499</a> from crazy-max/update-workflow</li> <li>Additional commits viewable in <a href="https://github.com/docker/build-push-action/compare/v2.7.0...v2.8.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=docker/build-push-action&package-manager=github_actions&previous-version=2.7.0&new-version=2.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> 24 January 2022, 10:25:34 UTC
f9c6cc9 rpc: use encoding/json rather than tmjson (#7670) The main change here is to use encoding/json to encode and decode RPC parameters, rather than the custom tmjson package. This includes: - Update the HTTP POST handler parameter handling. - Add field tags to 64-bit integer types to get string encoding (to match amino/tmjson). - Add marshalers to struct types that mention interfaces. - Inject wrappers to decode interface arguments in RPC handlers. 21 January 2022, 23:10:28 UTC
a8c3a50 up default params 21 January 2022, 22:29:15 UTC
6c39dcd move time calculation to earlier in the pipeline 21 January 2022, 20:27:55 UTC
15ecd7e wip 21 January 2022, 18:43:05 UTC
9e6e039 increase buffer size 21 January 2022, 18:33:29 UTC
72c2e6a jsontypes: improve tests and error diagnostics (#7669) Avert panics for corner cases (e.g., nil pointers) and for implementations that reside only on the pointer type. Add documentation and tests. 21 January 2022, 17:51:21 UTC
8280672 mempool: reactor concurrency test tweaks (#7651) 21 January 2022, 17:07:58 UTC
6e88c00 increase timeout ticker size 21 January 2022, 17:00:20 UTC
5a1b5b0 Update pending changelog from #7607. (#7666) 21 January 2022, 16:00:03 UTC
3f2da0e Fix query against the latest state in light client (#7642) 21 January 2022, 14:24:46 UTC
5d0671e context as param in pbts test 20 January 2022, 23:48:22 UTC
b853afe Merge remote-tracking branch 'origin/master' into wb/pbts-rebase-master 20 January 2022, 23:18:24 UTC
4d1ad8e re-add helper 20 January 2022, 23:01:43 UTC
c49f8bc log fixups 20 January 2022, 22:41:37 UTC
fadd169 ctx fixup continued 20 January 2022, 22:37:34 UTC
e2ec933 context position fixup 20 January 2022, 22:35:05 UTC
db7d4ab consensus: fix height advances in test state (#7648) The problem with the `TestStateFullRound1` is that the state that we are observeing, `cs`, can advance to the next height before we query its data. Specifically, on line `388`, when we called `validatePrevote`, the `cs` State had already advanced to height 2, so querying that State for the votes of height 1 either yielded nil or an erroneous value. This change adds a `ensurePrevoteMatch` function that checks that the prevote occurred and checks that it is for the expected block at the same time. If this change looks reasonable I can just apply the same fix to all of the places where we perform `ensurePrevote` followed by `validatePrevote` to use this function instead. 20 January 2022, 22:21:41 UTC
b18d06b mutateValidatorSet takes context 20 January 2022, 22:19:45 UTC
0733671 context add to randLightBlock 20 January 2022, 22:07:46 UTC
78e4c7d autofile: avoid shutdown race (#7650) 20 January 2022, 22:06:44 UTC
2a7497f contextify factory functions 20 January 2022, 21:57:49 UTC
d1fe539 remove unused tests 20 January 2022, 21:28:58 UTC
c7f6d80 update propose step log 20 January 2022, 20:56:11 UTC
02f7d0a use more specific require statements 20 January 2022, 20:54:26 UTC
9dd67ad tests: update cleanup opertunities (#7647) 20 January 2022, 20:48:26 UTC
449e127 privval: avoid re-signing vote when RHS and signbytes are equal (#7592) * avoid re-signing vote when RHS and signbytes are equal * avoid re-signing proposal when RHS and signbytes are equal Co-authored-by: Callum Waters <cmwaters19@gmail.com> Co-authored-by: William Banfield <4561443+williambanfield@users.noreply.github.com> 20 January 2022, 20:06:13 UTC
9f4f513 tests: update docker versions to match build version (#7646) 20 January 2022, 17:17:32 UTC
d68d25d light: return light client status on rpc /status (#7536) *light: rpc /status returns status of light client ; code refactoring light: moved lightClientInfo into light.go, renamed String to ID test/e2e: Return light client trusted height instead of SyncInfo trusted height test/e2e/start.go: Not waiting for light client to catch up in tests. Removed querying of syncInfo in start if the node is a light node * light: Removed call to primary /status. Added trustedPeriod to light info * light/provider: added ID function to return IP of primary and witnesses * light/provider/http/http_test: renamed String() to ID() 20 January 2022, 13:53:20 UTC
4e5c2b5 consensus: use delivertxsync (#7616) 19 January 2022, 21:58:12 UTC
ebbc3f0 p2p: always advertise self, to enable mutual address discovery (#7594) Fixes #7593 19 January 2022, 21:39:59 UTC
c8e8a62 abci/client: simplify client interface (#7607) This change has two main effects: 1. Remove most of the Async methods from the abci.Client interface. Remaining are FlushAsync, CommitTxAsync, and DeliverTxAsync. 2. Rename the synchronous methods to remove the "Sync" suffix. The rest of the change is updating the implementations, subsets, and mocks of the interface, along with the call sites that point to them. * Fix stringly-typed mock stubs. * Rename helper method. 19 January 2022, 18:58:56 UTC
68d4fed consensus/state: avert a data race with state update and tests (#7643) 19 January 2022, 18:47:06 UTC
7bc3a72 privval: do not use old proposal timestamp (#7621) After #7592, @cmwaters noticed that the logic for re-using old timestamps for proposals may not work with proposer-based timestamps. This change removes the logic to re-use old proposal timestamps since it is no longer correct. Two proposals with different timestamps can no longer be treated as equivalent. Signing a proposal that only differs by timestamp in the new algorithm can be thought of as roughly equivalent to signing a proposal that only differs by `BlockID` in the old scheme. I also investigated the codebase and checked for any place we updated a timestamp using the pattern `(Timestamp = |Timestamp: )` and saw no additional places where we are updating the timestamp of a proposal message. Here is the output of that search: ``` privval/file.go:372: vote.Timestamp = timestamp privval/file.go:453: lastVote.Timestamp = now privval/file.go:454: newVote.Timestamp = now internal/test/factory/commit.go:25: Timestamp: now, internal/test/factory/vote.go:34: Timestamp: time, internal/consensus/state.go:2261: Timestamp: cs.voteTime(), internal/consensus/state.go:2286: vote.Timestamp = v.Timestamp light/detector.go:414: ev.Timestamp = common.Time light/detector.go:418: ev.Timestamp = trusted.Time types/block.go:616: Timestamp: ts, types/block.go:725: Timestamp: cs.Timestamp, types/block.go:736: cs.Timestamp = csp.Timestamp types/block.go:800: Timestamp: commitSig.Timestamp, types/evidence.go:84: Timestamp: blockTime, types/evidence.go:190: dve.Timestamp = evidenceTime types/evidence.go:202: Timestamp: dve.Timestamp, types/evidence.go:228: Timestamp: pb.Timestamp, types/evidence.go:382: Timestamp: %v}#%X`, types/evidence.go:491: l.Timestamp = evidenceTime types/evidence.go:517: Timestamp: l.Timestamp, types/evidence.go:546: Timestamp: lpb.Timestamp, types/evidence.go:722: Timestamp: time, types/vote.go:80: Timestamp: vote.Timestamp, types/vote.go:216: Timestamp: vote.Timestamp, types/vote.go:240: vote.Timestamp = pv.Timestamp types/test_util.go:27: Timestamp: now, types/proposal.go:44: Timestamp: tmtime.Now(), types/proposal.go:132: pb.Timestamp = p.Timestamp types/proposal.go:157: p.Timestamp = pp.Timestamp types/canonical.go:49: Timestamp: proposal.Timestamp, types/canonical.go:62: Timestamp: vote.Timestamp, test/e2e/runner/evidence.go:186: Timestamp: evTime, ``` 19 January 2022, 17:42:09 UTC
a806739 abci/client: use a no-op logger in the test (#7633) This averts a log-after-close issue. We should probably also chase the shutdown issues, but since ABCI clients should generally only shut down once per process I don't think this is a real priority, and the trace is hairy. 19 January 2022, 16:58:35 UTC
1af4113 Increase test splits from 4 to 6. (#7630) Decrease the likelihood that two flaky tests will hit the same batch. Account for the increase in test load from #7608. 19 January 2022, 16:24:12 UTC
e6f6a13 build(deps): Bump github.com/prometheus/client_golang (#7636) 19 January 2022, 10:50:52 UTC
aea428d build: Make sure to test packages with external tests (#7608) The test filter was looking for "TestGoFiles", which does not include tests in a separate package (e.g., "package foo_test" for "package foo"). This caused several packages not to be tested in CI, including: github.com/tendermint/tendermint/abci/client github.com/tendermint/tendermint/crypto github.com/tendermint/tendermint/crypto/tmhash github.com/tendermint/tendermint/internal/eventbus github.com/tendermint/tendermint/internal/evidence github.com/tendermint/tendermint/internal/inspect github.com/tendermint/tendermint/internal/jsontypes github.com/tendermint/tendermint/internal/libs/protoio github.com/tendermint/tendermint/internal/libs/sync github.com/tendermint/tendermint/internal/p2p/pex github.com/tendermint/tendermint/internal/pubsub github.com/tendermint/tendermint/internal/pubsub/query github.com/tendermint/tendermint/internal/pubsub/query/syntax github.com/tendermint/tendermint/internal/state/indexer github.com/tendermint/tendermint/internal/state/indexer/block/kv github.com/tendermint/tendermint/libs/json github.com/tendermint/tendermint/libs/log github.com/tendermint/tendermint/libs/os github.com/tendermint/tendermint/light github.com/tendermint/tendermint/light/provider/http github.com/tendermint/tendermint/privval/grpc github.com/tendermint/tendermint/proto/tendermint/blocksync github.com/tendermint/tendermint/proto/tendermint/consensus github.com/tendermint/tendermint/proto/tendermint/statesync github.com/tendermint/tendermint/rpc/client github.com/tendermint/tendermint/rpc/client/mock github.com/tendermint/tendermint/test/e2e/tests github.com/tendermint/tendermint/test/fuzz/mempool github.com/tendermint/tendermint/test/fuzz/p2p/secretconnection github.com/tendermint/tendermint/test/fuzz/rpc/jsonrpc/server Updates #7626 and #7634. 19 January 2022, 02:36:46 UTC
b6307c4 consensus: check proposal non-nil in prevote message delay metric (#7625) 19 January 2022, 00:57:00 UTC
dd0d273 Merge branch 'master' into wb/pbts-rebase-master 19 January 2022, 00:51:39 UTC
5eae2e6 privval: synchronize leak check with shutdown (#7629) The interaction between defers and t.Cleanup can be delicate. For this case, which regularly flakes in CI, be explicit: Defer the closes and waits before making any attempt to leaktest. 19 January 2022, 00:36:09 UTC
a7eb950 autofile: ensure files are not reopened after closing (#7628) During file rotation and WAL shutdown, there was a race condition between users of an autofile and its termination. To fix this, ensure operations on an autofile are properly synchronized, and report errors when attempting to use an autofile after it was closed. Notably: - Simplify the cancellation protocol between signal and Close. - Exclude writers to an autofile during rotation. - Add documentation about what is going on. There is a lot more that could be improved here, but this addresses the more obvious races that have been panicking unit tests. 18 January 2022, 22:57:20 UTC
d33a83f Merge branch 'master' into wb/pbts-rebase-master 18 January 2022, 22:50:14 UTC
5cca45b pex: improve handling of closed channels (#7623) Reverts and improves on #7622. The problem turns out not to be on the PEX channel side, but on the pass-through (Go) channel. 18 January 2022, 22:32:22 UTC
d5aaa1a fix typo in state_test 18 January 2022, 22:16:05 UTC
82d46fe remove nolint: ll directive 18 January 2022, 21:26:13 UTC
e30434a reduce ensureTimeout 18 January 2022, 21:24:43 UTC
40b7093 update changelog pending 18 January 2022, 21:22:17 UTC
4171667 pex: do not send nil envelopes to the reactor (#7622) 18 January 2022, 20:01:04 UTC
7fd97bf pex: avert a data race on map access in the reactor (#7614) There was a path on which computing the next delivery time did not hold the lock, defying the admonition on its comment. 18 January 2022, 15:22:50 UTC
0c82cea consensus: calculate prevote message delay metric (#7551) ## What does this pull request do? This pull requests adds two metrics intended for use in calculating an experimental value for `MessageDelay`. The metrics are as follows: ``` # HELP tendermint_consensus_complete_prevote_message_delay Difference in seconds between the proposal timestamp and the timestamp of the prevote that achieved 100% of the voting power in the prevote step. # TYPE tendermint_consensus_complete_prevote_message_delay gauge tendermint_consensus_complete_prevote_message_delay{chain_id="test-chain-aZbwF1"} 0.013025505 # HELP tendermint_consensus_quorum_prevote_message_delay Difference in seconds between the proposal timestamp and the timestamp of the prevote that achieved a quorum in the prevote step. # TYPE tendermint_consensus_quorum_prevote_message_delay gauge tendermint_consensus_quorum_prevote_message_delay{chain_id="test-chain-aZbwF1"} 0.013025505 ``` ## Why this change? For more information on what these metrics are calculating, see #7202. The aim is to merge to backport these metrics to v0.34 and run nodes on a few popular chains with these metrics to determine the experimental values for `MessageDelay` on these popular chains and use these to select our default `SynchronyParams.MessageDelay` value. ## Why Gauges for the metrics? Gauges allow us to overwrite the metric on each successive observation. We can then capture these metrics over time to track the highest and lowest observed value. 18 January 2022, 14:55:18 UTC
b10c746 testing: use noop loger with leakteset in more places (#7604) 18 January 2022, 14:08:20 UTC
c0b56e2 consensus: test shutdown to avoid hangs (#7603) 18 January 2022, 13:55:13 UTC
49153b7 rpc: paginate mempool /unconfirmed_txs endpoint (#7612) This commit changes the behaviour of the /unconfirmed_txs endpoint by replacing limit with a page and perPage parameter for pagination. The test case for unconfirmed_txs have been accommodated to properly test this change and the documentation for the API as well. 18 January 2022, 09:58:32 UTC
679b6a6 light: fix provider error plumbing (#7610) The custom error types in the provider package did not propagate their wrapped underlying reasons, making it difficult for the test to check that the correct error was observed. - Fix the custom errors to have a true underlying error (not just a string). - Add Unwrap methods to support inspection by errors.Is. - Update usage in a few places. - Fix the test to check for acceptable variation. Fixes #7609. 16 January 2022, 21:48:21 UTC
c24f003 protoio: fix incorrect test assertion (#7606) After writing and then reading a bunch of random messages, the test was checking that it did not read the same number of messages that it wrote. The sense of this check was inverted; they should match. Introduced by accident in #7522. I'm not sure why this did not show up in CI. Edit: I now know why it didn't show up in ci: #7608. 16 January 2022, 20:39:37 UTC
701e602 Update README.md (#7602) Fixed typo in exchange Co-authored-by: M. J. Fromberger <fromberger@interchain.io> 15 January 2022, 02:33:47 UTC
dbe2146 rpc: simplify the encoding of interface-typed arguments in JSON (#7600) Add package jsontypes that implements a subset of the custom libs/json package. Specifically it handles encoding and decoding of interface types wrapped in "tagged" JSON objects. It omits the deep reflection on arbitrary types, preserving only the handling of type tags wrapper encoding. - Register interface types (Evidence, PubKey, PrivKey) for tagged encoding. - Update the existing implementations to satisfy the type. - Register those types with the jsontypes registry. - Add string tags to 64-bit integer fields where needed. - Add marshalers to structs that export interface-typed fields. 15 January 2022, 02:14:09 UTC
8810d03 Merge remote-tracking branch 'origin' into wb/pbts-rebase-master 15 January 2022, 01:16:05 UTC
88db4cd remove noisy logger 15 January 2022, 00:55:51 UTC
330eb8d Remove voteTime() (#7563) 15 January 2022, 00:52:15 UTC
9f52d9f proto: rename timing params to synchrony params (#7554) 15 January 2022, 00:52:12 UTC
8eec844 Prevote nil if proposal is not timely (#7415) * Prevote nil if not timely * William's suggestion to get the proposal from the proposer instead of generating it. * Don't check rhs for genesis block * Update IsTimely to match the specification * Fix proposal tests * Add more timely tests and check votes * Mark proposal invalid in SetProposal, fix in the future test * save proposal time on roundstate * received -> receive * always reset proposal time * Add IsTimely test for genesis proposal * Check timely before ValidateBlock * Review comments from Daniel Co-authored-by: William Banfield <wbanfield@gmail.com> 15 January 2022, 00:50:36 UTC
9e56a95 consensus: check that proposal is non-nil before voting (#7480) 15 January 2022, 00:47:07 UTC
d444a71 Fix pbts tests (#7413) * Allow nil block ID check in ensureProposalWithTimout * William's suggestion to get the proposal from the proposer instead of generating it. * Remove error check on service stop 15 January 2022, 00:47:03 UTC
47e0223 Fix compilation 15 January 2022, 00:44:48 UTC
2ff233d internal/consensus: prevote nil if proposal timestamp does not match (#7391) This change updates the proposal logic to use the block's timestamp in the proposal message. It adds an additional piece of validation logic to the prevote step to check that the block's timestamp matches the proposal message's timestamp. 15 January 2022, 00:42:39 UTC
e17178d internal/consensus: remove proposal wait time (#7418) 15 January 2022, 00:26:58 UTC
14f4db7 Remove MedianTime, set block time to Now() (#7382) * Remove MedianTime, set block time to Now() * Fix goimports * Fix import ordering 15 January 2022, 00:23:42 UTC
fa1afef internal/consensus: proposer waits for previous block time (#7376) This change introduces the logic to have the proposer wait until the previous block time has passed before attempting to propose the next block. The change achieves this by by adding a new clause into the enterPropose state machine method. The method now checks if the validator is the proposer and if the validator's clock is behind the previous block's time. If the validator's clock is behind the previous block time, it schedules a timeout to re-enter the enter propose method after enough time has passed. 15 January 2022, 00:23:37 UTC
3022f91 types: add new consensus params from proto (#7354) This change adds the new TimingParams proto messages. These new messages were build using the wb/proposer-based-timestamps branch on the spec repo. This change also adds validation that these values are positive when parsed and adds the new parameters into the existing tests. 14 January 2022, 23:58:16 UTC
315ee5a internal/consensus: refactor ensure functions to use a common function (#7373) * internal/consensus: refactor the common_test functions to use a single timeout function * remove ensurePrecommit * Update internal/consensus/common_test.go Co-authored-by: M. J. Fromberger <fromberger@interchain.io> * join lines for fatal messages Co-authored-by: M. J. Fromberger <fromberger@interchain.io> Co-authored-by: M. J. Fromberger <fromberger@interchain.io> 14 January 2022, 23:58:12 UTC
e7f7704 types: remove accuracy from timestamp params (#7341) 14 January 2022, 23:40:04 UTC
f73c247 consensus: ensure proposal receipt waits for maxWaitingTime (#7307) * consensus: ensure proposal receipt waits for maxWaitingTime * rebase fixups * lint++ * lint++ * register result chan separately * lint++ 14 January 2022, 23:39:58 UTC
32008ae consensus: add calculation for proposal step waits from pbts (#7290) * initial proposerWaitsUntil implementation * switch to duration for easier use with timeout scheduling * add proposal step waiting time with tests * minor aesthetic change to IsTimely * minor language fix * Update internal/consensus/state.go Co-authored-by: M. J. Fromberger <fromberger@interchain.io> * reword comment * change accuracy to precision * move tests to separate pbts test file Co-authored-by: M. J. Fromberger <fromberger@interchain.io> 14 January 2022, 23:31:11 UTC
89e3f43 consensus: refactor the fake validator to take a clock source (#7300) 14 January 2022, 23:31:07 UTC
7ed57ef statesync: more orderly dispatcher shutdown (#7601) 14 January 2022, 21:34:12 UTC
2199e0a light: convert validation panics to errors (#7597) 14 January 2022, 21:18:50 UTC
7e17892 factory: simplify validator and genesis factory functions (#7305) 14 January 2022, 21:13:16 UTC
887cb21 light: remove test panic (#7588) 14 January 2022, 18:16:43 UTC
82b6586 node+autofile: avoid leaks detected during WAL shutdown (#7599) 14 January 2022, 18:04:01 UTC
2f75899 ADR-74: Migrate Timeout Parameters to Consensus Parameters (#7503) related to: #7274 and #7275 Still somewhat uncertain on two things that I'd appreciate more feedback on: 1. The optional temporary local overrides. Perhaps this is superfluous and we can simply make the transition without the override? 2. If this set of parameters seems to be large enough to allow application developers to create the chains they want but not so large as to be needlessly complex. 14 January 2022, 16:48:59 UTC
abb7c8c RFC-009: Consensus Parameter Upgrades (#7524) Related to #7503 14 January 2022, 16:47:02 UTC
c065eeb Add changelog entries from release v0.34.15. (#7598) Fixes #7596. 14 January 2022, 16:07:53 UTC
1ff6936 rpc: remove dependency of URL (GET) requests on tmjson (#7590) The parameters for RPC GET requests are parsed from query arguments in the request URL. Rework this code to remove the need for tmjson. The structure of a call still requires reflection, and still works the same way as before, but the code structure has been simplified and cleaned up a bit. Points of note: - Consolidate handling of pointer types, so we only need to dereference once. - Reduce the number of allocations of reflective types. - Report errors for unsupported types rather than returning untyped nil. Update the tests as well. There was one test case that checked for an error on a behaviour the OpenAPI docs explicitly demonstrates as supported, so I fixed that test case, and also added some new ones for cases that weren't checked. Related: * Update e2e base Go image to 1.17 (to match config). 14 January 2022, 15:53:53 UTC
159d763 light: avoid panic for integer underflow (#7589) 14 January 2022, 14:58:41 UTC
9409cde rpc: update fuzz criteria to match the implementation (#7595) I missed this during my previous pass. Requirements for handlers: - First argument is context.Context. - Last of two results is error. 14 January 2022, 14:41:57 UTC
b20bad1 state: add an 'IsTimely' method to implement the 'timely' check for proposer-based timestamps (#7170) * state: add an IsTimely function to implement the check for timely in proposer-based timestamps * move time checks into block.go and add time source mechanism * timestamp params comment * add todo related to pbts spec and timestamp params * remove old istimely * switch to using built in before function * lint++ * wip * move into proposal and create a default set of params * defer using default cons params for now 14 January 2022, 04:13:10 UTC
1f3c3c6 consensus: update state to prevote nil when proposal block does not match locked block. (#6986) * add failing test * tweak comments in failing test * failing test comment * initial attempt at removing prevote locked block logic * comment out broken function * undo reset on prevotes * fixing TestProposeValidBlock test * update test for completed POL update * comment updates * further unlock testing * update comments * Update internal/consensus/state.go * spacing nit * comment cleanup * nil check in addVote * update unlock description * update precommit on relock comment * add ensure new timeout back * rename IsZero to IsNil and replace uses of block len check with helper * add testing.T to new assertions * begin removing unlock condition * fix TestStateProposerSelection2 to precommit for nil correctly * remove erroneous sleep * update TestStatePOL comment * update relock test to be more clear * add _ into test names * rename slashing * udpate no relock function to be cleaner * do not relock on old proposal test cleanup * con state name update * remove all references to unlock * update test comments to include new * add relock test * add ensureRelock to common_test * remove all event unlock * remove unlock checks * no lint add space * lint ++ * add test for nil prevote on different proposal * fix prevote nil condition * fix defaultDoPrevote * state_test.go fixes to accomodate prevoting for nil * add failing test for POL from previous round case * update prevote logic to prevote POL from previous round * state.go comment fixes * update validatePrevotes to correctly look for nil * update new test name and comment * update POLFromPreviousRound test * fixes post merge * fix spacing * make the linter happy * change prevote log message * update prevote nil debug line * update enterPrevote comment * lint * Update internal/consensus/state.go Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> * Update internal/consensus/state.go Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> * add english description of alg rules * Update internal/consensus/state.go Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> * comment fixes from review * fix comment * fix comment Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com> 14 January 2022, 04:13:06 UTC
6d2cb8b consensus: remove logic to unlock block on 2/3 prevote for nil (#6954) 14 January 2022, 03:49:39 UTC
back to top