From d2c05bc5b9d1a909e3e4a23732a9fdee0c7543ea Mon Sep 17 00:00:00 2001 From: Liamsi Date: Wed, 20 Jun 2018 17:35:30 -0700 Subject: [PATCH] Revert "delete everything" (includes everything non-go-crypto) This reverts commit 96a3502 --- CHANGELOG.md | 894 ++++++++- CODE_OF_CONDUCT.md | 56 + CONTRIBUTING.md | 117 ++ DOCKER/.gitignore | 1 + DOCKER/Dockerfile | 39 + DOCKER/Dockerfile.develop | 35 + DOCKER/Dockerfile.testing | 18 + DOCKER/Makefile | 16 + DOCKER/README.md | 67 + DOCKER/build.sh | 20 + DOCKER/push.sh | 22 + Gopkg.lock | 322 +++- Gopkg.toml | 64 +- LICENSE | 23 +- Makefile | 207 +- README.md | 147 +- ROADMAP.md | 23 + SECURITY.md | 71 + Vagrantfile | 58 + appveyor.yml | 13 + benchmarks/atomic_test.go | 29 + benchmarks/blockchain/.gitignore | 2 + benchmarks/blockchain/localsync.sh | 80 + benchmarks/chan_test.go | 19 + benchmarks/codec_test.go | 129 ++ benchmarks/empty.go | 1 + benchmarks/map_test.go | 35 + benchmarks/os_test.go | 33 + benchmarks/proto/README | 2 + benchmarks/proto/test.pb.go | 1456 ++++++++++++++ benchmarks/proto/test.proto | 29 + benchmarks/simu/counter.go | 47 + blockchain/pool.go | 587 ++++++ blockchain/pool_test.go | 148 ++ blockchain/reactor.go | 405 ++++ blockchain/reactor_test.go | 208 ++ blockchain/store.go | 247 +++ blockchain/store_test.go | 383 ++++ blockchain/wire.go | 13 + cmd/priv_val_server/main.go | 53 + cmd/tendermint/commands/gen_node_key.go | 32 + cmd/tendermint/commands/gen_validator.go | 27 + cmd/tendermint/commands/init.go | 70 + cmd/tendermint/commands/lite.go | 87 + cmd/tendermint/commands/probe_upnp.go | 31 + cmd/tendermint/commands/replay.go | 26 + .../commands/reset_priv_validator.go | 69 + cmd/tendermint/commands/root.go | 63 + cmd/tendermint/commands/root_test.go | 176 ++ cmd/tendermint/commands/run_node.go | 72 + cmd/tendermint/commands/show_node_id.go | 27 + cmd/tendermint/commands/show_validator.go | 22 + cmd/tendermint/commands/testnet.go | 183 ++ cmd/tendermint/commands/version.go | 18 + cmd/tendermint/commands/wire.go | 12 + cmd/tendermint/main.go | 48 + codecov.yml | 23 + config/config.go | 633 +++++++ config/config_test.go | 28 + config/toml.go | 325 ++++ config/toml_test.go | 94 + consensus/README.md | 1 + consensus/byzantine_test.go | 267 +++ consensus/common_test.go | 495 +++++ consensus/mempool_test.go | 232 +++ consensus/metrics.go | 133 ++ consensus/reactor.go | 1459 ++++++++++++++ consensus/reactor_test.go | 538 ++++++ consensus/replay.go | 469 +++++ consensus/replay_file.go | 321 ++++ consensus/replay_test.go | 687 +++++++ consensus/state.go | 1673 +++++++++++++++++ consensus/state_test.go | 1099 +++++++++++ consensus/test_data/many_blocks.cswal | Bin 0 -> 11137 bytes consensus/ticker.go | 134 ++ consensus/types/height_vote_set.go | 261 +++ consensus/types/height_vote_set_test.go | 69 + consensus/types/peer_round_state.go | 57 + consensus/types/round_state.go | 164 ++ consensus/types/round_state_test.go | 95 + consensus/types/wire.go | 12 + consensus/version.go | 13 + consensus/wal.go | 323 ++++ consensus/wal_fuzz.go | 31 + consensus/wal_generator.go | 205 ++ consensus/wal_test.go | 133 ++ consensus/wire.go | 14 + docker-compose.yml | 68 + docs/.python-version | 1 + docs/Makefile | 23 + docs/README.md | 14 + docs/_static/custom_collapsible_code.css | 17 + docs/_static/custom_collapsible_code.js | 10 + docs/_templates/layout.html | 20 + docs/abci-cli.md | 329 ++++ docs/app-architecture.md | 50 + docs/app-development.md | 527 ++++++ docs/architecture/README.md | 5 + docs/architecture/adr-001-logging.md | 216 +++ .../adr-002-event-subscription.md | 90 + docs/architecture/adr-003-abci-app-rpc.md | 34 + .../adr-004-historical-validators.md | 38 + docs/architecture/adr-005-consensus-params.md | 86 + docs/architecture/adr-006-trust-metric.md | 238 +++ .../adr-007-trust-metric-usage.md | 103 + docs/architecture/adr-008-priv-validator.md | 29 + docs/architecture/adr-011-monitoring.md | 116 ++ docs/architecture/adr-template.md | 16 + docs/architecture/img/formula1.png | Bin 0 -> 9833 bytes docs/architecture/img/formula2.png | Bin 0 -> 5942 bytes docs/architecture/img/tags1.png | Bin 0 -> 10446 bytes docs/assets/a_plus_t.png | Bin 0 -> 13830 bytes docs/assets/abci.png | Bin 0 -> 44405 bytes docs/assets/consensus_logic.png | Bin 0 -> 105454 bytes docs/assets/tm-application-example.png | Bin 0 -> 26691 bytes docs/assets/tm-transaction-flow.png | Bin 0 -> 2488459 bytes docs/assets/tmint-logo-blue.png | Bin 0 -> 53596 bytes docs/conf.py | 206 ++ docs/deploy-testnets.md | 68 + docs/determinism.md | 5 + docs/ecosystem.md | 21 + docs/examples/getting-started.md | 149 ++ docs/examples/init_testnet.sh | 69 + docs/examples/install_tendermint.sh | 32 + docs/examples/node0/config/config.toml | 166 ++ docs/examples/node0/config/genesis.json | 39 + docs/examples/node0/config/node_key.json | 1 + .../examples/node0/config/priv_validator.json | 14 + docs/examples/node1/config/config.toml | 166 ++ docs/examples/node1/config/genesis.json | 39 + docs/examples/node1/config/node_key.json | 1 + .../examples/node1/config/priv_validator.json | 14 + docs/examples/node2/config/config.toml | 166 ++ docs/examples/node2/config/genesis.json | 39 + docs/examples/node2/config/node_key.json | 1 + .../examples/node2/config/priv_validator.json | 14 + docs/examples/node3/config/config.toml | 166 ++ docs/examples/node3/config/genesis.json | 39 + docs/examples/node3/config/node_key.json | 1 + .../examples/node3/config/priv_validator.json | 14 + docs/getting-started.md | 265 +++ docs/how-to-read-logs.md | 130 ++ docs/images/tmint-logo-blue.png | Bin 0 -> 53596 bytes docs/index.rst | 73 + docs/indexing-transactions.md | 89 + docs/install.md | 76 + docs/introduction.md | 331 ++++ docs/metrics.md | 40 + docs/requirements.txt | 4 + docs/running-in-production.md | 206 ++ docs/spec/README.md | 80 + docs/spec/blockchain/blockchain.md | 431 +++++ docs/spec/blockchain/encoding.md | 274 +++ docs/spec/blockchain/state.md | 80 + docs/spec/consensus/abci.md | 1 + docs/spec/consensus/bft-time.md | 56 + docs/spec/consensus/consensus.md | 9 + docs/spec/consensus/light-client.md | 114 ++ docs/spec/consensus/wal.md | 1 + docs/spec/p2p/config.md | 38 + docs/spec/p2p/connection.md | 110 ++ docs/spec/p2p/node.md | 65 + docs/spec/p2p/peer.md | 112 ++ .../reactors/block_sync/img/bc-reactor.png | Bin 0 -> 44211 bytes docs/spec/reactors/block_sync/impl.md | 46 + docs/spec/reactors/block_sync/reactor.md | 307 +++ .../reactors/consensus/consensus-reactor.md | 352 ++++ docs/spec/reactors/consensus/consensus.md | 212 +++ .../reactors/consensus/proposer-selection.md | 46 + docs/spec/reactors/evidence/reactor.md | 10 + docs/spec/reactors/mempool/concurrency.md | 8 + docs/spec/reactors/mempool/config.md | 59 + docs/spec/reactors/mempool/functionality.md | 37 + docs/spec/reactors/mempool/messages.md | 61 + docs/spec/reactors/mempool/reactor.md | 14 + docs/spec/reactors/pex/pex.md | 123 ++ docs/spec/reactors/pex/reactor.md | 12 + docs/spec/scripts/crypto.go | 133 ++ docs/spec/software/abci.md | 192 ++ docs/spec/software/wal.md | 33 + docs/specification.rst | 21 + docs/specification/block-structure.rst | 220 +++ .../byzantine-consensus-algorithm.rst | 349 ++++ docs/specification/configuration.md | 200 ++ docs/specification/corruption.rst | 70 + docs/specification/fast-sync.rst | 34 + docs/specification/genesis.rst | 71 + docs/specification/light-client-protocol.rst | 33 + docs/specification/merkle.rst | 88 + docs/specification/new-spec/README.md | 1 + docs/specification/rpc.md | 3 + docs/specification/secure-p2p.rst | 78 + docs/specification/validators.rst | 44 + docs/specification/wire-protocol.rst | 172 ++ docs/subscribing-to-events-via-websocket.md | 26 + docs/terraform-and-ansible.md | 168 ++ docs/transactional-semantics.md | 25 + docs/using-tendermint.md | 420 +++++ evidence/pool.go | 152 ++ evidence/pool_test.go | 79 + evidence/reactor.go | 227 +++ evidence/reactor_test.go | 182 ++ evidence/store.go | 190 ++ evidence/store_test.go | 109 ++ evidence/wire.go | 25 + libs/events/Makefile | 9 + libs/events/README.md | 175 ++ libs/events/event_cache.go | 37 + libs/events/event_cache_test.go | 35 + libs/events/events.go | 220 +++ libs/events/events_test.go | 380 ++++ libs/pubsub/example_test.go | 28 + libs/pubsub/pubsub.go | 351 ++++ libs/pubsub/pubsub_test.go | 253 +++ libs/pubsub/query/Makefile | 11 + libs/pubsub/query/empty.go | 16 + libs/pubsub/query/empty_test.go | 18 + libs/pubsub/query/fuzz_test/main.go | 30 + libs/pubsub/query/parser_test.go | 92 + libs/pubsub/query/query.go | 339 ++++ libs/pubsub/query/query.peg | 33 + libs/pubsub/query/query.peg.go | 1553 +++++++++++++++ libs/pubsub/query/query_test.go | 87 + lite/client/main_test.go | 25 + lite/client/provider.go | 141 ++ lite/client/provider_test.go | 63 + lite/commit.go | 99 + lite/doc.go | 133 ++ lite/dynamic_certifier.go | 96 + lite/dynamic_certifier_test.go | 130 ++ lite/errors/errors.go | 92 + lite/errors/errors_test.go | 18 + lite/files/commit.go | 93 + lite/files/commit_test.go | 66 + lite/files/provider.go | 139 ++ lite/files/provider_test.go | 96 + lite/files/wire.go | 12 + lite/helpers.go | 158 ++ lite/inquiring_certifier.go | 163 ++ lite/inquiring_certifier_test.go | 173 ++ lite/memprovider.go | 152 ++ lite/performance_test.go | 365 ++++ lite/provider.go | 103 + lite/provider_test.go | 149 ++ lite/proxy/block.go | 49 + lite/proxy/certifier.go | 35 + lite/proxy/errors.go | 22 + lite/proxy/errors_test.go | 17 + lite/proxy/proxy.go | 77 + lite/proxy/query.go | 152 ++ lite/proxy/query_test.go | 139 ++ lite/proxy/validate_test.go | 218 +++ lite/proxy/wrapper.go | 187 ++ lite/static_certifier.go | 73 + lite/static_certifier_test.go | 59 + mempool/mempool.go | 524 ++++++ mempool/mempool_test.go | 286 +++ mempool/metrics.go | 34 + mempool/reactor.go | 188 ++ mempool/reactor_test.go | 157 ++ mempool/wire.go | 11 + networks/local/Makefile | 7 + networks/local/README.md | 79 + networks/local/localnode/Dockerfile | 16 + networks/local/localnode/wrapper.sh | 35 + networks/remote/README.md | 3 + networks/remote/ansible/.gitignore | 1 + networks/remote/ansible/ansible.cfg | 4 + networks/remote/ansible/config.yml | 18 + networks/remote/ansible/install.yml | 11 + networks/remote/ansible/inventory/COPYING | 675 +++++++ .../ansible/inventory/digital_ocean.ini | 34 + .../remote/ansible/inventory/digital_ocean.py | 471 +++++ networks/remote/ansible/logzio.yml | 14 + networks/remote/ansible/reset.yml | 14 + networks/remote/ansible/restart.yml | 12 + .../ansible/roles/config/tasks/main.yml | 17 + .../ansible/roles/install/handlers/main.yml | 5 + .../ansible/roles/install/tasks/main.yml | 15 + .../install/templates/systemd.service.j2 | 17 + .../roles/logzio/files/journalbeat.service | 15 + .../ansible/roles/logzio/handlers/main.yml | 8 + .../ansible/roles/logzio/tasks/main.yml | 27 + .../roles/logzio/templates/journalbeat.yml.j2 | 342 ++++ .../remote/ansible/roles/start/tasks/main.yml | 5 + .../ansible/roles/status/tasks/main.yml | 10 + .../remote/ansible/roles/stop/tasks/main.yml | 5 + .../ansible/roles/unsafe_reset/tasks/main.yml | 4 + networks/remote/ansible/start.yml | 11 + networks/remote/ansible/status.yml | 11 + networks/remote/ansible/stop.yml | 11 + networks/remote/integration.sh | 132 ++ networks/remote/terraform/.gitignore | 4 + networks/remote/terraform/cluster/main.tf | 28 + networks/remote/terraform/cluster/outputs.tf | 15 + .../remote/terraform/cluster/variables.tf | 25 + networks/remote/terraform/main.tf | 37 + node/id.go | 35 + node/node.go | 730 +++++++ node/node_test.go | 48 + node/wire.go | 12 + p2p/README.md | 11 + p2p/base_reactor.go | 53 + p2p/conn/conn_go110.go | 15 + p2p/conn/conn_notgo110.go | 32 + p2p/conn/connection.go | 804 ++++++++ p2p/conn/connection_test.go | 492 +++++ p2p/conn/secret_connection.go | 351 ++++ p2p/conn/secret_connection_test.go | 250 +++ p2p/conn/wire.go | 13 + p2p/dummy/peer.go | 80 + p2p/errors.go | 76 + p2p/fuzz.go | 152 ++ p2p/key.go | 111 ++ p2p/key_test.go | 50 + p2p/listener.go | 226 +++ p2p/listener_test.go | 47 + p2p/metrics.go | 33 + p2p/netaddress.go | 317 ++++ p2p/netaddress_test.go | 148 ++ p2p/node_info.go | 164 ++ p2p/peer.go | 431 +++++ p2p/peer_set.go | 143 ++ p2p/peer_set_test.go | 172 ++ p2p/peer_test.go | 175 ++ p2p/pex/addrbook.go | 813 ++++++++ p2p/pex/addrbook_test.go | 356 ++++ p2p/pex/errors.go | 32 + p2p/pex/file.go | 83 + p2p/pex/known_address.go | 141 ++ p2p/pex/params.go | 55 + p2p/pex/pex_reactor.go | 700 +++++++ p2p/pex/pex_reactor_test.go | 459 +++++ p2p/pex/wire.go | 11 + p2p/switch.go | 662 +++++++ p2p/switch_test.go | 428 +++++ p2p/test_util.go | 156 ++ p2p/trust/config.go | 55 + p2p/trust/metric.go | 411 ++++ p2p/trust/metric_test.go | 100 + p2p/trust/store.go | 207 ++ p2p/trust/store_test.go | 152 ++ p2p/trust/ticker.go | 62 + p2p/types.go | 8 + p2p/upnp/probe.go | 112 ++ p2p/upnp/upnp.go | 393 ++++ p2p/version.go | 3 + p2p/wire.go | 12 + privval/priv_validator.go | 355 ++++ privval/priv_validator_test.go | 251 +++ privval/socket.go | 538 ++++++ privval/socket_tcp.go | 66 + privval/socket_tcp_test.go | 64 + privval/socket_test.go | 282 +++ privval/wire.go | 13 + proxy/app_conn.go | 144 ++ proxy/app_conn_test.go | 152 ++ proxy/client.go | 81 + proxy/multi_app_conn.go | 112 ++ rpc/client/event_test.go | 149 ++ rpc/client/helpers.go | 80 + rpc/client/helpers_test.go | 76 + rpc/client/httpclient.go | 373 ++++ rpc/client/interface.go | 95 + rpc/client/localclient.go | 145 ++ rpc/client/main_test.go | 24 + rpc/client/mock/abci.go | 202 ++ rpc/client/mock/abci_test.go | 181 ++ rpc/client/mock/client.go | 135 ++ rpc/client/mock/status.go | 52 + rpc/client/mock/status_test.go | 48 + rpc/client/rpc_test.go | 366 ++++ rpc/client/types.go | 12 + rpc/core/README.md | 20 + rpc/core/abci.go | 95 + rpc/core/blocks.go | 364 ++++ rpc/core/consensus.go | 261 +++ rpc/core/dev.go | 51 + rpc/core/doc.go | 109 ++ rpc/core/doc_template.txt | 8 + rpc/core/events.go | 188 ++ rpc/core/health.go | 31 + rpc/core/mempool.go | 276 +++ rpc/core/net.go | 127 ++ rpc/core/pipe.go | 147 ++ rpc/core/pipe_test.go | 69 + rpc/core/routes.go | 52 + rpc/core/status.go | 133 ++ rpc/core/tx.go | 219 +++ rpc/core/types/responses.go | 210 +++ rpc/core/types/responses_test.go | 39 + rpc/core/types/wire.go | 13 + rpc/core/version.go | 5 + rpc/grpc/api.go | 36 + rpc/grpc/client_server.go | 44 + rpc/grpc/compile.sh | 3 + rpc/grpc/grpc_test.go | 33 + rpc/grpc/types.pb.go | 230 +++ rpc/grpc/types.proto | 36 + rpc/lib/client/args_test.go | 43 + rpc/lib/client/http_client.go | 219 +++ rpc/lib/client/integration_test.go | 66 + rpc/lib/client/ws_client.go | 494 +++++ rpc/lib/client/ws_client_test.go | 224 +++ rpc/lib/doc.go | 103 + rpc/lib/rpc_test.go | 378 ++++ rpc/lib/server/handlers.go | 794 ++++++++ rpc/lib/server/handlers_test.go | 110 ++ rpc/lib/server/http_params.go | 90 + rpc/lib/server/http_server.go | 156 ++ rpc/lib/server/parse_test.go | 176 ++ rpc/lib/test/data.json | 9 + rpc/lib/test/integration_test.sh | 95 + rpc/lib/test/main.go | 40 + rpc/lib/types/types.go | 187 ++ rpc/lib/types/types_test.go | 51 + rpc/lib/version.go | 7 + rpc/test/helpers.go | 132 ++ scripts/README.md | 1 + scripts/dep_utils/parse.sh | 14 + scripts/dist.sh | 81 + scripts/install/install_tendermint_bsd.sh | 54 + scripts/install/install_tendermint_ubuntu.sh | 49 + scripts/install_abci_apps.sh | 12 + scripts/publish.sh | 20 + scripts/release.sh | 53 + scripts/slate.sh | 77 + scripts/txs/random.sh | 19 + scripts/wal2json/main.go | 59 + scripts/wire2amino.go | 181 ++ state/errors.go | 79 + state/execution.go | 398 ++++ state/execution_test.go | 232 +++ state/services.go | 86 + state/state.go | 187 ++ state/state_test.go | 489 +++++ state/store.go | 282 +++ state/txindex/indexer.go | 58 + state/txindex/indexer_service.go | 73 + state/txindex/kv/kv.go | 437 +++++ state/txindex/kv/kv_test.go | 239 +++ state/txindex/kv/wire.go | 10 + state/txindex/null/null.go | 33 + state/validation.go | 125 ++ state/validation_test.go | 68 + state/wire.go | 12 + test/README.md | 21 + test/app/clean.sh | 3 + test/app/counter_test.sh | 141 ++ test/app/grpc_client.go | 42 + test/app/kvstore_test.sh | 84 + test/app/test.sh | 129 ++ test/docker/Dockerfile | 38 + test/docker/build.sh | 3 + test/p2p/README.md | 54 + test/p2p/atomic_broadcast/test.sh | 75 + test/p2p/basic/test.sh | 74 + test/p2p/circleci.sh | 35 + test/p2p/client.sh | 19 + test/p2p/data/mach1/core/config/genesis.json | 39 + test/p2p/data/mach1/core/config/node_key.json | 6 + .../mach1/core/config/priv_validator.json | 14 + test/p2p/data/mach2/core/config/genesis.json | 39 + test/p2p/data/mach2/core/config/node_key.json | 6 + .../mach2/core/config/priv_validator.json | 14 + test/p2p/data/mach3/core/config/genesis.json | 39 + test/p2p/data/mach3/core/config/node_key.json | 6 + .../mach3/core/config/priv_validator.json | 14 + test/p2p/data/mach4/core/config/genesis.json | 39 + test/p2p/data/mach4/core/config/node_key.json | 6 + .../mach4/core/config/priv_validator.json | 14 + test/p2p/fast_sync/check_peer.sh | 43 + test/p2p/fast_sync/test.sh | 16 + test/p2p/fast_sync/test_peer.sh | 38 + test/p2p/ip.sh | 5 + test/p2p/ip_plus_id.sh | 7 + test/p2p/kill_all/check_peers.sh | 49 + test/p2p/kill_all/test.sh | 32 + test/p2p/local_testnet_start.sh | 24 + test/p2p/local_testnet_stop.sh | 12 + test/p2p/peer.sh | 27 + test/p2p/persistent_peers.sh | 13 + test/p2p/pex/check_peer.sh | 17 + test/p2p/pex/dial_peers.sh | 23 + test/p2p/pex/test.sh | 15 + test/p2p/pex/test_addrbook.sh | 57 + test/p2p/pex/test_dial_peers.sh | 39 + test/p2p/test.sh | 38 + test/persist/test_failure_indices.sh | 124 ++ test/persist/test_simple.sh | 70 + test/persist/txs.sh | 23 + test/test_cover.sh | 14 + types/block.go | 577 ++++++ types/block_meta.go | 15 + types/block_test.go | 88 + types/canonical_json.go | 114 ++ types/event_buffer.go | 50 + types/event_buffer_test.go | 21 + types/event_bus.go | 167 ++ types/event_bus_test.go | 171 ++ types/events.go | 154 ++ types/evidence.go | 212 +++ types/evidence_test.go | 74 + types/genesis.go | 123 ++ types/genesis_test.go | 61 + types/heartbeat.go | 52 + types/heartbeat_test.go | 54 + types/keys.go | 7 + types/nop_event_bus.go | 77 + types/params.go | 155 ++ types/params_test.go | 88 + types/part_set.go | 281 +++ types/part_set_test.go | 90 + types/priv_validator.go | 104 + types/proposal.go | 58 + types/proposal_test.go | 102 + types/protobuf.go | 221 +++ types/protobuf_test.go | 69 + types/results.go | 70 + types/results_test.go | 43 + types/signable.go | 11 + types/test_util.go | 37 + types/tx.go | 128 ++ types/tx_test.go | 125 ++ types/validator.go | 98 + types/validator_set.go | 517 +++++ types/validator_set_test.go | 372 ++++ types/vote.go | 117 ++ types/vote_set.go | 603 ++++++ types/vote_set_test.go | 508 +++++ types/vote_test.go | 121 ++ types/wire.go | 12 + version/version.go | 23 + 533 files changed, 69873 insertions(+), 162 deletions(-) create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md create mode 100644 DOCKER/.gitignore create mode 100644 DOCKER/Dockerfile create mode 100644 DOCKER/Dockerfile.develop create mode 100644 DOCKER/Dockerfile.testing create mode 100644 DOCKER/Makefile create mode 100644 DOCKER/README.md create mode 100755 DOCKER/build.sh create mode 100755 DOCKER/push.sh create mode 100644 ROADMAP.md create mode 100644 SECURITY.md create mode 100644 Vagrantfile create mode 100644 appveyor.yml create mode 100644 benchmarks/atomic_test.go create mode 100644 benchmarks/blockchain/.gitignore create mode 100755 benchmarks/blockchain/localsync.sh create mode 100644 benchmarks/chan_test.go create mode 100644 benchmarks/codec_test.go create mode 100644 benchmarks/empty.go create mode 100644 benchmarks/map_test.go create mode 100644 benchmarks/os_test.go create mode 100644 benchmarks/proto/README create mode 100644 benchmarks/proto/test.pb.go create mode 100644 benchmarks/proto/test.proto create mode 100644 benchmarks/simu/counter.go create mode 100644 blockchain/pool.go create mode 100644 blockchain/pool_test.go create mode 100644 blockchain/reactor.go create mode 100644 blockchain/reactor_test.go create mode 100644 blockchain/store.go create mode 100644 blockchain/store_test.go create mode 100644 blockchain/wire.go create mode 100644 cmd/priv_val_server/main.go create mode 100644 cmd/tendermint/commands/gen_node_key.go create mode 100644 cmd/tendermint/commands/gen_validator.go create mode 100644 cmd/tendermint/commands/init.go create mode 100644 cmd/tendermint/commands/lite.go create mode 100644 cmd/tendermint/commands/probe_upnp.go create mode 100644 cmd/tendermint/commands/replay.go create mode 100644 cmd/tendermint/commands/reset_priv_validator.go create mode 100644 cmd/tendermint/commands/root.go create mode 100644 cmd/tendermint/commands/root_test.go create mode 100644 cmd/tendermint/commands/run_node.go create mode 100644 cmd/tendermint/commands/show_node_id.go create mode 100644 cmd/tendermint/commands/show_validator.go create mode 100644 cmd/tendermint/commands/testnet.go create mode 100644 cmd/tendermint/commands/version.go create mode 100644 cmd/tendermint/commands/wire.go create mode 100644 cmd/tendermint/main.go create mode 100644 codecov.yml create mode 100644 config/config.go create mode 100644 config/config_test.go create mode 100644 config/toml.go create mode 100644 config/toml_test.go create mode 100644 consensus/README.md create mode 100644 consensus/byzantine_test.go create mode 100644 consensus/common_test.go create mode 100644 consensus/mempool_test.go create mode 100644 consensus/metrics.go create mode 100644 consensus/reactor.go create mode 100644 consensus/reactor_test.go create mode 100644 consensus/replay.go create mode 100644 consensus/replay_file.go create mode 100644 consensus/replay_test.go create mode 100644 consensus/state.go create mode 100644 consensus/state_test.go create mode 100644 consensus/test_data/many_blocks.cswal create mode 100644 consensus/ticker.go create mode 100644 consensus/types/height_vote_set.go create mode 100644 consensus/types/height_vote_set_test.go create mode 100644 consensus/types/peer_round_state.go create mode 100644 consensus/types/round_state.go create mode 100644 consensus/types/round_state_test.go create mode 100644 consensus/types/wire.go create mode 100644 consensus/version.go create mode 100644 consensus/wal.go create mode 100644 consensus/wal_fuzz.go create mode 100644 consensus/wal_generator.go create mode 100644 consensus/wal_test.go create mode 100644 consensus/wire.go create mode 100644 docker-compose.yml create mode 100644 docs/.python-version create mode 100644 docs/Makefile create mode 100644 docs/README.md create mode 100644 docs/_static/custom_collapsible_code.css create mode 100644 docs/_static/custom_collapsible_code.js create mode 100644 docs/_templates/layout.html create mode 100644 docs/abci-cli.md create mode 100644 docs/app-architecture.md create mode 100644 docs/app-development.md create mode 100644 docs/architecture/README.md create mode 100644 docs/architecture/adr-001-logging.md create mode 100644 docs/architecture/adr-002-event-subscription.md create mode 100644 docs/architecture/adr-003-abci-app-rpc.md create mode 100644 docs/architecture/adr-004-historical-validators.md create mode 100644 docs/architecture/adr-005-consensus-params.md create mode 100644 docs/architecture/adr-006-trust-metric.md create mode 100644 docs/architecture/adr-007-trust-metric-usage.md create mode 100644 docs/architecture/adr-008-priv-validator.md create mode 100644 docs/architecture/adr-011-monitoring.md create mode 100644 docs/architecture/adr-template.md create mode 100644 docs/architecture/img/formula1.png create mode 100644 docs/architecture/img/formula2.png create mode 100644 docs/architecture/img/tags1.png create mode 100644 docs/assets/a_plus_t.png create mode 100644 docs/assets/abci.png create mode 100644 docs/assets/consensus_logic.png create mode 100644 docs/assets/tm-application-example.png create mode 100644 docs/assets/tm-transaction-flow.png create mode 100644 docs/assets/tmint-logo-blue.png create mode 100644 docs/conf.py create mode 100644 docs/deploy-testnets.md create mode 100644 docs/determinism.md create mode 100644 docs/ecosystem.md create mode 100644 docs/examples/getting-started.md create mode 100644 docs/examples/init_testnet.sh create mode 100644 docs/examples/install_tendermint.sh create mode 100644 docs/examples/node0/config/config.toml create mode 100644 docs/examples/node0/config/genesis.json create mode 100644 docs/examples/node0/config/node_key.json create mode 100644 docs/examples/node0/config/priv_validator.json create mode 100644 docs/examples/node1/config/config.toml create mode 100644 docs/examples/node1/config/genesis.json create mode 100644 docs/examples/node1/config/node_key.json create mode 100644 docs/examples/node1/config/priv_validator.json create mode 100644 docs/examples/node2/config/config.toml create mode 100644 docs/examples/node2/config/genesis.json create mode 100644 docs/examples/node2/config/node_key.json create mode 100644 docs/examples/node2/config/priv_validator.json create mode 100644 docs/examples/node3/config/config.toml create mode 100644 docs/examples/node3/config/genesis.json create mode 100644 docs/examples/node3/config/node_key.json create mode 100644 docs/examples/node3/config/priv_validator.json create mode 100644 docs/getting-started.md create mode 100644 docs/how-to-read-logs.md create mode 100644 docs/images/tmint-logo-blue.png create mode 100644 docs/index.rst create mode 100644 docs/indexing-transactions.md create mode 100644 docs/install.md create mode 100644 docs/introduction.md create mode 100644 docs/metrics.md create mode 100644 docs/requirements.txt create mode 100644 docs/running-in-production.md create mode 100644 docs/spec/README.md create mode 100644 docs/spec/blockchain/blockchain.md create mode 100644 docs/spec/blockchain/encoding.md create mode 100644 docs/spec/blockchain/state.md create mode 100644 docs/spec/consensus/abci.md create mode 100644 docs/spec/consensus/bft-time.md create mode 100644 docs/spec/consensus/consensus.md create mode 100644 docs/spec/consensus/light-client.md create mode 100644 docs/spec/consensus/wal.md create mode 100644 docs/spec/p2p/config.md create mode 100644 docs/spec/p2p/connection.md create mode 100644 docs/spec/p2p/node.md create mode 100644 docs/spec/p2p/peer.md create mode 100644 docs/spec/reactors/block_sync/img/bc-reactor.png create mode 100644 docs/spec/reactors/block_sync/impl.md create mode 100644 docs/spec/reactors/block_sync/reactor.md create mode 100644 docs/spec/reactors/consensus/consensus-reactor.md create mode 100644 docs/spec/reactors/consensus/consensus.md create mode 100644 docs/spec/reactors/consensus/proposer-selection.md create mode 100644 docs/spec/reactors/evidence/reactor.md create mode 100644 docs/spec/reactors/mempool/concurrency.md create mode 100644 docs/spec/reactors/mempool/config.md create mode 100644 docs/spec/reactors/mempool/functionality.md create mode 100644 docs/spec/reactors/mempool/messages.md create mode 100644 docs/spec/reactors/mempool/reactor.md create mode 100644 docs/spec/reactors/pex/pex.md create mode 100644 docs/spec/reactors/pex/reactor.md create mode 100644 docs/spec/scripts/crypto.go create mode 100644 docs/spec/software/abci.md create mode 100644 docs/spec/software/wal.md create mode 100644 docs/specification.rst create mode 100644 docs/specification/block-structure.rst create mode 100644 docs/specification/byzantine-consensus-algorithm.rst create mode 100644 docs/specification/configuration.md create mode 100644 docs/specification/corruption.rst create mode 100644 docs/specification/fast-sync.rst create mode 100644 docs/specification/genesis.rst create mode 100644 docs/specification/light-client-protocol.rst create mode 100644 docs/specification/merkle.rst create mode 100644 docs/specification/new-spec/README.md create mode 100644 docs/specification/rpc.md create mode 100644 docs/specification/secure-p2p.rst create mode 100644 docs/specification/validators.rst create mode 100644 docs/specification/wire-protocol.rst create mode 100644 docs/subscribing-to-events-via-websocket.md create mode 100644 docs/terraform-and-ansible.md create mode 100644 docs/transactional-semantics.md create mode 100644 docs/using-tendermint.md create mode 100644 evidence/pool.go create mode 100644 evidence/pool_test.go create mode 100644 evidence/reactor.go create mode 100644 evidence/reactor_test.go create mode 100644 evidence/store.go create mode 100644 evidence/store_test.go create mode 100644 evidence/wire.go create mode 100644 libs/events/Makefile create mode 100644 libs/events/README.md create mode 100644 libs/events/event_cache.go create mode 100644 libs/events/event_cache_test.go create mode 100644 libs/events/events.go create mode 100644 libs/events/events_test.go create mode 100644 libs/pubsub/example_test.go create mode 100644 libs/pubsub/pubsub.go create mode 100644 libs/pubsub/pubsub_test.go create mode 100644 libs/pubsub/query/Makefile create mode 100644 libs/pubsub/query/empty.go create mode 100644 libs/pubsub/query/empty_test.go create mode 100644 libs/pubsub/query/fuzz_test/main.go create mode 100644 libs/pubsub/query/parser_test.go create mode 100644 libs/pubsub/query/query.go create mode 100644 libs/pubsub/query/query.peg create mode 100644 libs/pubsub/query/query.peg.go create mode 100644 libs/pubsub/query/query_test.go create mode 100644 lite/client/main_test.go create mode 100644 lite/client/provider.go create mode 100644 lite/client/provider_test.go create mode 100644 lite/commit.go create mode 100644 lite/doc.go create mode 100644 lite/dynamic_certifier.go create mode 100644 lite/dynamic_certifier_test.go create mode 100644 lite/errors/errors.go create mode 100644 lite/errors/errors_test.go create mode 100644 lite/files/commit.go create mode 100644 lite/files/commit_test.go create mode 100644 lite/files/provider.go create mode 100644 lite/files/provider_test.go create mode 100644 lite/files/wire.go create mode 100644 lite/helpers.go create mode 100644 lite/inquiring_certifier.go create mode 100644 lite/inquiring_certifier_test.go create mode 100644 lite/memprovider.go create mode 100644 lite/performance_test.go create mode 100644 lite/provider.go create mode 100644 lite/provider_test.go create mode 100644 lite/proxy/block.go create mode 100644 lite/proxy/certifier.go create mode 100644 lite/proxy/errors.go create mode 100644 lite/proxy/errors_test.go create mode 100644 lite/proxy/proxy.go create mode 100644 lite/proxy/query.go create mode 100644 lite/proxy/query_test.go create mode 100644 lite/proxy/validate_test.go create mode 100644 lite/proxy/wrapper.go create mode 100644 lite/static_certifier.go create mode 100644 lite/static_certifier_test.go create mode 100644 mempool/mempool.go create mode 100644 mempool/mempool_test.go create mode 100644 mempool/metrics.go create mode 100644 mempool/reactor.go create mode 100644 mempool/reactor_test.go create mode 100644 mempool/wire.go create mode 100644 networks/local/Makefile create mode 100644 networks/local/README.md create mode 100644 networks/local/localnode/Dockerfile create mode 100755 networks/local/localnode/wrapper.sh create mode 100644 networks/remote/README.md create mode 100644 networks/remote/ansible/.gitignore create mode 100644 networks/remote/ansible/ansible.cfg create mode 100644 networks/remote/ansible/config.yml create mode 100644 networks/remote/ansible/install.yml create mode 100644 networks/remote/ansible/inventory/COPYING create mode 100644 networks/remote/ansible/inventory/digital_ocean.ini create mode 100755 networks/remote/ansible/inventory/digital_ocean.py create mode 100644 networks/remote/ansible/logzio.yml create mode 100644 networks/remote/ansible/reset.yml create mode 100644 networks/remote/ansible/restart.yml create mode 100644 networks/remote/ansible/roles/config/tasks/main.yml create mode 100644 networks/remote/ansible/roles/install/handlers/main.yml create mode 100644 networks/remote/ansible/roles/install/tasks/main.yml create mode 100644 networks/remote/ansible/roles/install/templates/systemd.service.j2 create mode 100644 networks/remote/ansible/roles/logzio/files/journalbeat.service create mode 100644 networks/remote/ansible/roles/logzio/handlers/main.yml create mode 100644 networks/remote/ansible/roles/logzio/tasks/main.yml create mode 100644 networks/remote/ansible/roles/logzio/templates/journalbeat.yml.j2 create mode 100644 networks/remote/ansible/roles/start/tasks/main.yml create mode 100644 networks/remote/ansible/roles/status/tasks/main.yml create mode 100644 networks/remote/ansible/roles/stop/tasks/main.yml create mode 100644 networks/remote/ansible/roles/unsafe_reset/tasks/main.yml create mode 100644 networks/remote/ansible/start.yml create mode 100644 networks/remote/ansible/status.yml create mode 100644 networks/remote/ansible/stop.yml create mode 100644 networks/remote/integration.sh create mode 100644 networks/remote/terraform/.gitignore create mode 100644 networks/remote/terraform/cluster/main.tf create mode 100644 networks/remote/terraform/cluster/outputs.tf create mode 100644 networks/remote/terraform/cluster/variables.tf create mode 100644 networks/remote/terraform/main.tf create mode 100644 node/id.go create mode 100644 node/node.go create mode 100644 node/node_test.go create mode 100644 node/wire.go create mode 100644 p2p/README.md create mode 100644 p2p/base_reactor.go create mode 100644 p2p/conn/conn_go110.go create mode 100644 p2p/conn/conn_notgo110.go create mode 100644 p2p/conn/connection.go create mode 100644 p2p/conn/connection_test.go create mode 100644 p2p/conn/secret_connection.go create mode 100644 p2p/conn/secret_connection_test.go create mode 100644 p2p/conn/wire.go create mode 100644 p2p/dummy/peer.go create mode 100644 p2p/errors.go create mode 100644 p2p/fuzz.go create mode 100644 p2p/key.go create mode 100644 p2p/key_test.go create mode 100644 p2p/listener.go create mode 100644 p2p/listener_test.go create mode 100644 p2p/metrics.go create mode 100644 p2p/netaddress.go create mode 100644 p2p/netaddress_test.go create mode 100644 p2p/node_info.go create mode 100644 p2p/peer.go create mode 100644 p2p/peer_set.go create mode 100644 p2p/peer_set_test.go create mode 100644 p2p/peer_test.go create mode 100644 p2p/pex/addrbook.go create mode 100644 p2p/pex/addrbook_test.go create mode 100644 p2p/pex/errors.go create mode 100644 p2p/pex/file.go create mode 100644 p2p/pex/known_address.go create mode 100644 p2p/pex/params.go create mode 100644 p2p/pex/pex_reactor.go create mode 100644 p2p/pex/pex_reactor_test.go create mode 100644 p2p/pex/wire.go create mode 100644 p2p/switch.go create mode 100644 p2p/switch_test.go create mode 100644 p2p/test_util.go create mode 100644 p2p/trust/config.go create mode 100644 p2p/trust/metric.go create mode 100644 p2p/trust/metric_test.go create mode 100644 p2p/trust/store.go create mode 100644 p2p/trust/store_test.go create mode 100644 p2p/trust/ticker.go create mode 100644 p2p/types.go create mode 100644 p2p/upnp/probe.go create mode 100644 p2p/upnp/upnp.go create mode 100644 p2p/version.go create mode 100644 p2p/wire.go create mode 100644 privval/priv_validator.go create mode 100644 privval/priv_validator_test.go create mode 100644 privval/socket.go create mode 100644 privval/socket_tcp.go create mode 100644 privval/socket_tcp_test.go create mode 100644 privval/socket_test.go create mode 100644 privval/wire.go create mode 100644 proxy/app_conn.go create mode 100644 proxy/app_conn_test.go create mode 100644 proxy/client.go create mode 100644 proxy/multi_app_conn.go create mode 100644 rpc/client/event_test.go create mode 100644 rpc/client/helpers.go create mode 100644 rpc/client/helpers_test.go create mode 100644 rpc/client/httpclient.go create mode 100644 rpc/client/interface.go create mode 100644 rpc/client/localclient.go create mode 100644 rpc/client/main_test.go create mode 100644 rpc/client/mock/abci.go create mode 100644 rpc/client/mock/abci_test.go create mode 100644 rpc/client/mock/client.go create mode 100644 rpc/client/mock/status.go create mode 100644 rpc/client/mock/status_test.go create mode 100644 rpc/client/rpc_test.go create mode 100644 rpc/client/types.go create mode 100644 rpc/core/README.md create mode 100644 rpc/core/abci.go create mode 100644 rpc/core/blocks.go create mode 100644 rpc/core/consensus.go create mode 100644 rpc/core/dev.go create mode 100644 rpc/core/doc.go create mode 100644 rpc/core/doc_template.txt create mode 100644 rpc/core/events.go create mode 100644 rpc/core/health.go create mode 100644 rpc/core/mempool.go create mode 100644 rpc/core/net.go create mode 100644 rpc/core/pipe.go create mode 100644 rpc/core/pipe_test.go create mode 100644 rpc/core/routes.go create mode 100644 rpc/core/status.go create mode 100644 rpc/core/tx.go create mode 100644 rpc/core/types/responses.go create mode 100644 rpc/core/types/responses_test.go create mode 100644 rpc/core/types/wire.go create mode 100644 rpc/core/version.go create mode 100644 rpc/grpc/api.go create mode 100644 rpc/grpc/client_server.go create mode 100644 rpc/grpc/compile.sh create mode 100644 rpc/grpc/grpc_test.go create mode 100644 rpc/grpc/types.pb.go create mode 100644 rpc/grpc/types.proto create mode 100644 rpc/lib/client/args_test.go create mode 100644 rpc/lib/client/http_client.go create mode 100644 rpc/lib/client/integration_test.go create mode 100644 rpc/lib/client/ws_client.go create mode 100644 rpc/lib/client/ws_client_test.go create mode 100644 rpc/lib/doc.go create mode 100644 rpc/lib/rpc_test.go create mode 100644 rpc/lib/server/handlers.go create mode 100644 rpc/lib/server/handlers_test.go create mode 100644 rpc/lib/server/http_params.go create mode 100644 rpc/lib/server/http_server.go create mode 100644 rpc/lib/server/parse_test.go create mode 100644 rpc/lib/test/data.json create mode 100755 rpc/lib/test/integration_test.sh create mode 100644 rpc/lib/test/main.go create mode 100644 rpc/lib/types/types.go create mode 100644 rpc/lib/types/types_test.go create mode 100644 rpc/lib/version.go create mode 100644 rpc/test/helpers.go create mode 100644 scripts/README.md create mode 100644 scripts/dep_utils/parse.sh create mode 100755 scripts/dist.sh create mode 100644 scripts/install/install_tendermint_bsd.sh create mode 100644 scripts/install/install_tendermint_ubuntu.sh create mode 100644 scripts/install_abci_apps.sh create mode 100755 scripts/publish.sh create mode 100755 scripts/release.sh create mode 100644 scripts/slate.sh create mode 100644 scripts/txs/random.sh create mode 100644 scripts/wal2json/main.go create mode 100644 scripts/wire2amino.go create mode 100644 state/errors.go create mode 100644 state/execution.go create mode 100644 state/execution_test.go create mode 100644 state/services.go create mode 100644 state/state.go create mode 100644 state/state_test.go create mode 100644 state/store.go create mode 100644 state/txindex/indexer.go create mode 100644 state/txindex/indexer_service.go create mode 100644 state/txindex/kv/kv.go create mode 100644 state/txindex/kv/kv_test.go create mode 100644 state/txindex/kv/wire.go create mode 100644 state/txindex/null/null.go create mode 100644 state/validation.go create mode 100644 state/validation_test.go create mode 100644 state/wire.go create mode 100644 test/README.md create mode 100755 test/app/clean.sh create mode 100755 test/app/counter_test.sh create mode 100644 test/app/grpc_client.go create mode 100755 test/app/kvstore_test.sh create mode 100755 test/app/test.sh create mode 100644 test/docker/Dockerfile create mode 100644 test/docker/build.sh create mode 100644 test/p2p/README.md create mode 100644 test/p2p/atomic_broadcast/test.sh create mode 100755 test/p2p/basic/test.sh create mode 100644 test/p2p/circleci.sh create mode 100644 test/p2p/client.sh create mode 100644 test/p2p/data/mach1/core/config/genesis.json create mode 100644 test/p2p/data/mach1/core/config/node_key.json create mode 100644 test/p2p/data/mach1/core/config/priv_validator.json create mode 100644 test/p2p/data/mach2/core/config/genesis.json create mode 100644 test/p2p/data/mach2/core/config/node_key.json create mode 100644 test/p2p/data/mach2/core/config/priv_validator.json create mode 100644 test/p2p/data/mach3/core/config/genesis.json create mode 100644 test/p2p/data/mach3/core/config/node_key.json create mode 100644 test/p2p/data/mach3/core/config/priv_validator.json create mode 100644 test/p2p/data/mach4/core/config/genesis.json create mode 100644 test/p2p/data/mach4/core/config/node_key.json create mode 100644 test/p2p/data/mach4/core/config/priv_validator.json create mode 100644 test/p2p/fast_sync/check_peer.sh create mode 100644 test/p2p/fast_sync/test.sh create mode 100644 test/p2p/fast_sync/test_peer.sh create mode 100755 test/p2p/ip.sh create mode 100755 test/p2p/ip_plus_id.sh create mode 100644 test/p2p/kill_all/check_peers.sh create mode 100644 test/p2p/kill_all/test.sh create mode 100644 test/p2p/local_testnet_start.sh create mode 100644 test/p2p/local_testnet_stop.sh create mode 100644 test/p2p/peer.sh create mode 100644 test/p2p/persistent_peers.sh create mode 100644 test/p2p/pex/check_peer.sh create mode 100644 test/p2p/pex/dial_peers.sh create mode 100644 test/p2p/pex/test.sh create mode 100644 test/p2p/pex/test_addrbook.sh create mode 100644 test/p2p/pex/test_dial_peers.sh create mode 100644 test/p2p/test.sh create mode 100644 test/persist/test_failure_indices.sh create mode 100644 test/persist/test_simple.sh create mode 100644 test/persist/txs.sh create mode 100644 test/test_cover.sh create mode 100644 types/block.go create mode 100644 types/block_meta.go create mode 100644 types/block_test.go create mode 100644 types/canonical_json.go create mode 100644 types/event_buffer.go create mode 100644 types/event_buffer_test.go create mode 100644 types/event_bus.go create mode 100644 types/event_bus_test.go create mode 100644 types/events.go create mode 100644 types/evidence.go create mode 100644 types/evidence_test.go create mode 100644 types/genesis.go create mode 100644 types/genesis_test.go create mode 100644 types/heartbeat.go create mode 100644 types/heartbeat_test.go create mode 100644 types/keys.go create mode 100644 types/nop_event_bus.go create mode 100644 types/params.go create mode 100644 types/params_test.go create mode 100644 types/part_set.go create mode 100644 types/part_set_test.go create mode 100644 types/priv_validator.go create mode 100644 types/proposal.go create mode 100644 types/proposal_test.go create mode 100644 types/protobuf.go create mode 100644 types/protobuf_test.go create mode 100644 types/results.go create mode 100644 types/results_test.go create mode 100644 types/signable.go create mode 100644 types/test_util.go create mode 100644 types/tx.go create mode 100644 types/tx_test.go create mode 100644 types/validator.go create mode 100644 types/validator_set.go create mode 100644 types/validator_set_test.go create mode 100644 types/vote.go create mode 100644 types/vote_set.go create mode 100644 types/vote_set_test.go create mode 100644 types/vote_test.go create mode 100644 types/wire.go create mode 100644 version/version.go diff --git a/CHANGELOG.md b/CHANGELOG.md index dd7c1039f..f69127d5b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,154 +1,868 @@ # Changelog -## 0.9.0 +## TBD + +FEATURES: +- [node] added metrics (served under /metrics using a Prometheus client; disabled by default) + +## 0.20.1 + +BUG FIXES: + +- [rpc] fix memory leak in Websocket (when using `/subscribe` method) + +## 0.20.0 + +*June 6th, 2018* + +This is the first in a series of breaking releases coming to Tendermint after +soliciting developer feedback and conducting security audits. + +This release does not break any blockchain data structures or +protocols other than the ABCI messages between Tendermint and the application. + +Applications that upgrade for ABCI v0.11.0 should be able to continue running Tendermint +v0.20.0 on blockchains created with v0.19.X BREAKING CHANGES -- `priv.PubKey()` no longer returns an error. Any applicable errors (such as when fetching the public key from a hardware wallet) should be checked and returned when constructing the private key. +- [abci] Upgrade to + [v0.11.0](https://github.com/tendermint/abci/blob/master/CHANGELOG.md#0110) +- [abci] Change Query path for filtering peers by node ID from + `p2p/filter/pubkey/` to `p2p/filter/id/` -## 0.8.0 +## 0.19.9 -**TBD** - -## 0.7.0 - -**May 30th, 2018** +*June 5th, 2018* BREAKING CHANGES -No breaking changes compared to 0.6.2, but making up for the version bump that -should have happened in 0.6.1. - -We also bring in the `tmlibs/merkle` package with breaking changes: - -- change the hash function from RIPEMD160 to tmhash (first 20-bytes of SHA256) -- remove unused funcs and unexport SimpleMap +- [types/priv_validator] Moved to top level `privval` package FEATURES -- [xchacha20poly1305] New authenticated encryption module -- [merkle] Moved in from tmlibs -- [merkle/tmhash] New hash function: the first 20-bytes of SHA256 - -IMPROVEMENTS - -- Remove some dead code -- Use constant-time compare for signatures +- [config] Collapse PeerConfig into P2PConfig +- [docs] Add quick-install script +- [docs/spec] Add table of Amino prefixes BUG FIXES -- Fix MixEntropy weakness -- Fix PrivKeyEd25519.Generate() +- [rpc] Return 404 for unknown endpoints +- [consensus] Flush WAL on stop +- [evidence] Don't send evidence to peers that are behind +- [p2p] Fix memory leak on peer disconnects +- [rpc] Fix panic when `per_page=0` -## 0.6.2 (April 9, 2018) +## 0.19.8 + +*June 4th, 2018* + +BREAKING: + +- [p2p] Remove `auth_enc` config option, peer connections are always auth + encrypted. Technically a breaking change but seems no one was using it and + arguably a bug fix :) + +BUG FIXES + +- [mempool] Fix deadlock under high load when `skip_timeout_commit=true` and + `create_empty_blocks=false` + +## 0.19.7 + +*May 31st, 2018* + +BREAKING: + +- [libs/pubsub] TagMap#Get returns a string value +- [libs/pubsub] NewTagMap accepts a map of strings + +FEATURES + +- [rpc] the RPC documentation is now published to https://tendermint.github.io/slate +- [p2p] AllowDuplicateIP config option to refuse connections from same IP. + - true by default for now, false by default in next breaking release +- [docs] Add docs for query, tx indexing, events, pubsub +- [docs] Add some notes about running Tendermint in production + +IMPROVEMENTS: + +- [consensus] Consensus reactor now receives events from a separate synchronous event bus, + which is not dependant on external RPC load +- [consensus/wal] do not look for height in older files if we've seen height - 1 +- [docs] Various cleanup and link fixes + +## 0.19.6 + +*May 29th, 2018* + +BUG FIXES + +- [blockchain] Fix fast-sync deadlock during high peer turnover + +BUG FIX: + +- [evidence] Dont send peers evidence from heights they haven't synced to yet +- [p2p] Refuse connections to more than one peer with the same IP +- [docs] Various fixes + +## 0.19.5 + +*May 20th, 2018* + +BREAKING CHANGES + +- [rpc/client] TxSearch and UnconfirmedTxs have new arguments (see below) +- [rpc/client] TxSearch returns ResultTxSearch +- [version] Breaking changes to Go APIs will not be reflected in breaking + version change, but will be included in changelog. + +FEATURES + +- [rpc] `/tx_search` takes `page` (starts at 1) and `per_page` (max 100, default 30) args to paginate results +- [rpc] `/unconfirmed_txs` takes `limit` (max 100, default 30) arg to limit the output +- [config] `mempool.size` and `mempool.cache_size` options IMPROVEMENTS -- Update for latest go-amino +- [docs] Lots of updates +- [consensus] Only Fsync() the WAL before executing msgs from ourselves -## 0.6.1 (March 26, 2018) +BUG FIXES -BREAKING CHANGES +- [mempool] Enforce upper bound on number of transactions -- Encoding uses MarshalBinaryBare rather than MarshalBinary (which auto-length-prefixes) for pub/priv/sig. +## 0.19.4 (May 17th, 2018) -## 0.6.0 (March 2, 2018) +IMPROVEMENTS -BREAKING CHANGES +- [state] Improve tx indexing by using batches +- [consensus, state] Improve logging (more consensus logs, fewer tx logs) +- [spec] Moved to `docs/spec` (TODO cleanup the rest of the docs ...) -- Update Amino names from "com.tendermint/..." to "tendermint/" +BUG FIXES -## 0.5.0 (March 2, 2018) +- [consensus] Fix issue #1575 where a late proposer can get stuck -BREAKING CHANGES +## 0.19.3 (May 14th, 2018) -- nano: moved to `_nano` now while we're having build issues -- bcrypt: moved to `keys/bcrypt` -- hd: moved to `keys/hd`; `BTC` added to some function names; other function cleanup -- keys/cryptostore: moved to `keys`, renamed to `keybase`, and completely refactored -- keys: moved BIP39 related code to `keys/words` +FEATURES -FEATURE +- [rpc] New `/consensus_state` returns just the votes seen at the current height -- `Address` is a type alias for `cmn.HexBytes` +IMPROVEMENTS -BUG FIX +- [rpc] Add stringified votes and fraction of power voted to `/dump_consensus_state` +- [rpc] Add PeerStateStats to `/dump_consensus_state` -- PrivKey comparisons done in constant time +BUG FIXES -## 0.4.1 (October 27, 2017) +- [cmd] Set GenesisTime during `tendermint init` +- [consensus] fix ValidBlock rules -This release removes support for bcrypt as it was merged too soon without an upgrade plan -for existing keys. - -REVERTS THE FOLLOWING COMMITS: - -- Parameterize and lower bcrypt cost - dfc4cdd2d71513e4a9922d679c74f36357c4c862 -- Upgrade keys to use bcrypt with salts (#38) - 8e7f0e7701f92206679ad093d013b9b162427631 - -## 0.4.0 (October 27, 2017) - -BREAKING CHANGES: - -- `keys`: use bcrypt plus salt +## 0.19.2 (April 30th, 2018) FEATURES: -- add support for signing via Ledger Nano +- [p2p] Allow peers with different Minor versions to connect +- [rpc] `/net_info` includes `n_peers` IMPROVEMENTS: -- linting and comments +- [p2p] Various code comments, cleanup, error types +- [p2p] Change some Error logs to Debug -## 0.3.0 (September 22, 2017) +BUG FIXES: -BREAKING CHANGES: +- [p2p] Fix reconnect to persistent peer when first dial fails +- [p2p] Validate NodeInfo.ListenAddr +- [p2p] Only allow (MaxNumPeers - MaxNumOutboundPeers) inbound peers +- [p2p/pex] Limit max msg size to 64kB +- [p2p] Fix panic when pex=false +- [p2p] Allow multiple IPs per ID in AddrBook +- [p2p] Fix before/after bugs in addrbook isBad() -- Remove `cmd` and `keys/tx` packages altogether: move it to the cosmos-sdk -- `cryptostore.Generator` takes a secret -- Remove `String()` from `Signature` interface +## 0.19.1 (April 27th, 2018) + +Note this release includes some small breaking changes in the RPC and one in the +config that are really bug fixes. v0.19.1 will work with existing chains, and make Tendermint +easier to use and debug. With <3 + +BREAKING (MINOR) + +- [config] Removed `wal_light` setting. If you really needed this, let us know FEATURES: -- `keys`: add CRC16 error correcting code +- [networks] moved in tooling from devops repo: terraform and ansible scripts for deploying testnets ! +- [cmd] Added `gen_node_key` command -IMPROVEMENTS: +BUG FIXES -- Allow no passwords on keys for development convenience +Some of these are breaking in the RPC response, but they're really bugs! +- [spec] Document address format and pubkey encoding pre and post Amino +- [rpc] Lower case JSON field names +- [rpc] Fix missing entries, improve, and lower case the fields in `/dump_consensus_state` +- [rpc] Fix NodeInfo.Channels format to hex +- [rpc] Add Validator address to `/status` +- [rpc] Fix `prove` in ABCIQuery +- [cmd] MarshalJSONIndent on init -## 0.2.1 (June 21, 2017) +## 0.19.0 (April 13th, 2018) -- Improve keys command - - No password prompts in non-interactive mode (echo 'foobar' | keys new foo) - - Added support for seed phrases - - Seed phrase now returned on `keys new` - - Add `keys restore` to restore private key from key phrase - - Checksum to verify typos in the seed phrase (rather than just a useless key) - - Add `keys delete` to remove a key if needed +BREAKING: +- [cmd] improved `testnet` command; now it can fill in `persistent_peers` for you in the config file and much more (see `tendermint testnet --help` for details) +- [cmd] `show_node_id` now returns an error if there is no node key +- [rpc]: changed the output format for the `/status` endpoint (see https://godoc.org/github.com/tendermint/tendermint/rpc/core#Status) -## 0.2.0 (May 18, 2017) +Upgrade from go-wire to go-amino. This is a sweeping change that breaks everything that is +serialized to disk or over the network. -BREAKING CHANGES: +See github.com/tendermint/go-amino for details on the new format. -- [hd] The following functions no longer take a `coin string` as argument: `ComputeAddress`, `AddrFromPubKeyBytes`, `ComputeAddressForPrivKey`, `ComputeWIF`, `WIFFromPrivKeyBytes` -- Changes to `PrivKey`, `PubKey`, and `Signature` (denoted `Xxx` below): - - interfaces are renamed `XxxInner`, and are not for use outside the package, though they must be exposed for sake of serialization. - - `Xxx` is now a struct that wraps the corresponding `XxxInner` interface +See `scripts/wire2amino.go` for a tool to upgrade +genesis/priv_validator/node_key JSON files. + +FEATURES + +- [test] docker-compose for local testnet setup (thanks Greg!) + +## 0.18.0 (April 6th, 2018) + +BREAKING: + +- [types] Merkle tree uses different encoding for varints (see tmlibs v0.8.0) +- [types] ValidtorSet.GetByAddress returns -1 if no validator found +- [p2p] require all addresses come with an ID no matter what +- [rpc] Listening address must contain tcp:// or unix:// prefix FEATURES: -- `github.com/tendermint/go-keys -> github.com/tendermint/go-crypto/keys` - command and lib for generating and managing encrypted keys -- [hd] New function `WIFFromPrivKeyBytes(privKeyBytes []byte, compress bool) string` -- Changes to `PrivKey`, `PubKey`, and `Signature` (denoted `Xxx` below): - - Expose a new method `Unwrap() XxxInner` on the `Xxx` struct which returns the corresponding `XxxInner` interface - - Expose a new method `Wrap() Xxx` on the `XxxInner` interface which returns the corresponding `Xxx` struct +- [rpc] StartHTTPAndTLSServer (not used yet) +- [rpc] Include validator's voting power in `/status` +- [rpc] `/tx` and `/tx_search` responses now include the transaction hash +- [rpc] Include peer NodeIDs in `/net_info` + +IMPROVEMENTS: +- [config] trim whitespace from elements of lists (like `persistent_peers`) +- [rpc] `/tx_search` results are sorted by height +- [p2p] do not try to connect to ourselves (ok, maybe only once) +- [p2p] seeds respond with a bias towards good peers + +BUG FIXES: +- [rpc] fix subscribing using an abci.ResponseDeliverTx tag +- [rpc] fix tx_indexers matchRange +- [rpc] fix unsubscribing (see tmlibs v0.8.0) + +## 0.17.1 (March 27th, 2018) + +BUG FIXES: +- [types] Actually support `app_state` in genesis as `AppStateJSON` + +## 0.17.0 (March 27th, 2018) + +BREAKING: +- [types] WriteSignBytes -> SignBytes + +IMPROVEMENTS: +- [all] renamed `dummy` (`persistent_dummy`) to `kvstore` (`persistent_kvstore`) (name "dummy" is deprecated and will not work in the next breaking release) +- [docs] note on determinism (docs/determinism.rst) +- [genesis] `app_options` field is deprecated. please rename it to `app_state` in your genesis file(s). `app_options` will not work in the next breaking release +- [p2p] dial seeds directly without potential peers +- [p2p] exponential backoff for addrs in the address book +- [p2p] mark peer as good if it contributed enough votes or block parts +- [p2p] stop peer if it sends incorrect data, msg to unknown channel, msg we did not expect +- [p2p] when `auth_enc` is true, all dialed peers must have a node ID in their address +- [spec] various improvements +- switched from glide to dep internally for package management +- [wire] prep work for upgrading to new go-wire (which is now called go-amino) + +FEATURES: +- [config] exposed `auth_enc` flag to enable/disable encryption +- [config] added the `--p2p.private_peer_ids` flag and `PrivatePeerIDs` config variable (see config for description) +- [rpc] added `/health` endpoint, which returns empty result for now +- [types/priv_validator] new format and socket client, allowing for remote signing + +BUG FIXES: +- [consensus] fix liveness bug by introducing ValidBlock mechanism + +## 0.16.0 (February 20th, 2018) + +BREAKING CHANGES: +- [config] use $TMHOME/config for all config and json files +- [p2p] old `--p2p.seeds` is now `--p2p.persistent_peers` (persistent peers to which TM will always connect to) +- [p2p] now `--p2p.seeds` only used for getting addresses (if addrbook is empty; not persistent) +- [p2p] NodeInfo: remove RemoteAddr and add Channels + - we must have at least one overlapping channel with peer + - we only send msgs for channels the peer advertised +- [p2p/conn] pong timeout +- [lite] comment out IAVL related code + +FEATURES: +- [p2p] added new `/dial_peers&persistent=_` **unsafe** endpoint +- [p2p] persistent node key in `$THMHOME/config/node_key.json` +- [p2p] introduce peer ID and authenticate peers by ID using addresses like `ID@IP:PORT` +- [p2p/pex] new seed mode crawls the network and serves as a seed. +- [config] MempoolConfig.CacheSize +- [config] P2P.SeedMode (`--p2p.seed_mode`) + +IMPROVEMENT: +- [p2p/pex] stricter rules in the PEX reactor for better handling of abuse +- [p2p] various improvements to code structure including subpackages for `pex` and `conn` +- [docs] new spec! +- [all] speed up the tests! + +BUG FIX: +- [blockchain] StopPeerForError on timeout +- [consensus] StopPeerForError on a bad Maj23 message +- [state] flush mempool conn before calling commit +- [types] fix priv val signing things that only differ by timestamp +- [mempool] fix memory leak causing zombie peers +- [p2p/conn] fix potential deadlock + +## 0.15.0 (December 29, 2017) + +BREAKING CHANGES: +- [p2p] enable the Peer Exchange reactor by default +- [types] add Timestamp field to Proposal/Vote +- [types] add new fields to Header: TotalTxs, ConsensusParamsHash, LastResultsHash, EvidenceHash +- [types] add Evidence to Block +- [types] simplify ValidateBasic +- [state] updates to support changes to the header +- [state] Enforce <1/3 of validator set can change at a time + +FEATURES: +- [state] Send indices of absent validators and addresses of byzantine validators in BeginBlock +- [state] Historical ConsensusParams and ABCIResponses +- [docs] Specification for the base Tendermint data structures. +- [evidence] New evidence reactor for gossiping and managing evidence +- [rpc] `/block_results?height=X` returns the DeliverTx results for a given height. + +IMPROVEMENTS: +- [consensus] Better handling of corrupt WAL file + +BUG FIXES: +- [lite] fix race +- [state] validate block.Header.ValidatorsHash +- [p2p] allow seed addresses to be prefixed with eg. `tcp://` +- [p2p] use consistent key to refer to peers so we dont try to connect to existing peers +- [cmd] fix `tendermint init` to ignore files that are there and generate files that aren't. + +## 0.14.0 (December 11, 2017) + +BREAKING CHANGES: +- consensus/wal: removed separator +- rpc/client: changed Subscribe/Unsubscribe/UnsubscribeAll funcs signatures to be identical to event bus. + +FEATURES: +- new `tendermint lite` command (and `lite/proxy` pkg) for running a light-client RPC proxy. + NOTE it is currently insecure and its APIs are not yet covered by semver + +IMPROVEMENTS: +- rpc/client: can act as event bus subscriber (See https://github.com/tendermint/tendermint/issues/945). +- p2p: use exponential backoff from seconds to hours when attempting to reconnect to persistent peer +- config: moniker defaults to the machine's hostname instead of "anonymous" + +BUG FIXES: +- p2p: no longer exit if one of the seed addresses is incorrect + +## 0.13.0 (December 6, 2017) + +BREAKING CHANGES: +- abci: update to v0.8 using gogo/protobuf; includes tx tags, vote info in RequestBeginBlock, data.Bytes everywhere, use int64, etc. +- types: block heights are now `int64` everywhere +- types & node: EventSwitch and EventCache have been replaced by EventBus and EventBuffer; event types have been overhauled +- node: EventSwitch methods now refer to EventBus +- rpc/lib/types: RPCResponse is no longer a pointer; WSRPCConnection interface has been modified +- rpc/client: WaitForOneEvent takes an EventsClient instead of types.EventSwitch +- rpc/client: Add/RemoveListenerForEvent are now Subscribe/Unsubscribe +- rpc/core/types: ResultABCIQuery wraps an abci.ResponseQuery +- rpc: `/subscribe` and `/unsubscribe` take `query` arg instead of `event` +- rpc: `/status` returns the LatestBlockTime in human readable form instead of in nanoseconds +- mempool: cached transactions return an error instead of an ABCI response with BadNonce + +FEATURES: +- rpc: new `/unsubscribe_all` WebSocket RPC endpoint +- rpc: new `/tx_search` endpoint for filtering transactions by more complex queries +- p2p/trust: new trust metric for tracking peers. See ADR-006 +- config: TxIndexConfig allows to set what DeliverTx tags to index + +IMPROVEMENTS: +- New asynchronous events system using `tmlibs/pubsub` +- logging: Various small improvements +- consensus: Graceful shutdown when app crashes +- tests: Fix various non-deterministic errors +- p2p: more defensive programming + +BUG FIXES: +- consensus: fix panic where prs.ProposalBlockParts is not initialized +- p2p: fix panic on bad channel + +## 0.12.1 (November 27, 2017) + +BUG FIXES: +- upgrade tmlibs dependency to enable Windows builds for Tendermint + +## 0.12.0 (October 27, 2017) + +BREAKING CHANGES: + - rpc/client: websocket ResultsCh and ErrorsCh unified in ResponsesCh. + - rpc/client: ABCIQuery no longer takes `prove` + - state: remove GenesisDoc from state. + - consensus: new binary WAL format provides efficiency and uses checksums to detect corruption + - use scripts/wal2json to convert to json for debugging + +FEATURES: + - new `certifiers` pkg contains the tendermint light-client library (name subject to change)! + - rpc: `/genesis` includes the `app_options` . + - rpc: `/abci_query` takes an additional `height` parameter to support historical queries. + - rpc/client: new ABCIQueryWithOptions supports options like `trusted` (set false to get a proof) and `height` to query a historical height. + +IMPROVEMENTS: + - rpc: `/genesis` result includes `app_options` + - rpc/lib/client: add jitter to reconnects. + - rpc/lib/types: `RPCError` satisfies the `error` interface. + +BUG FIXES: + - rpc/client: fix ws deadlock after stopping + - blockchain: fix panic on AddBlock when peer is nil + - mempool: fix sending on TxsAvailable when a tx has been invalidated + - consensus: dont run WAL catchup if we fast synced + +## 0.11.1 (October 10, 2017) + +IMPROVEMENTS: + - blockchain/reactor: respondWithNoResponseMessage for missing height + +BUG FIXES: + - rpc: fixed client WebSocket timeout + - rpc: client now resubscribes on reconnection + - rpc: fix panics on missing params + - rpc: fix `/dump_consensus_state` to have normal json output (NOTE: technically breaking, but worth a bug fix label) + - types: fixed out of range error in VoteSet.addVote + - consensus: fix wal autofile via https://github.com/tendermint/tmlibs/blob/master/CHANGELOG.md#032-october-2-2017 + +## 0.11.0 (September 22, 2017) + +BREAKING: + - genesis file: validator `amount` is now `power` + - abci: Info, BeginBlock, InitChain all take structs + - rpc: various changes to match JSONRPC spec (http://www.jsonrpc.org/specification), including breaking ones: + - requests that previously returned HTTP code 4XX now return 200 with an error code in the JSONRPC. + - `rpctypes.RPCResponse` uses new `RPCError` type instead of `string`. + + - cmd: if there is no genesis, exit immediately instead of waiting around for one to show. + - types: `Signer.Sign` returns an error. + - state: every validator set change is persisted to disk, which required some changes to the `State` structure. + - p2p: new `p2p.Peer` interface used for all reactor methods (instead of `*p2p.Peer` struct). + +FEATURES: + - rpc: `/validators?height=X` allows querying of validators at previous heights. + - rpc: Leaving the `height` param empty for `/block`, `/validators`, and `/commit` will return the value for the latest height. + +IMPROVEMENTS: + - docs: Moved all docs from the website and tools repo in, converted to `.rst`, and cleaned up for presentation on `tendermint.readthedocs.io` + +BUG FIXES: + - fix WAL openning issue on Windows + +## 0.10.4 (September 5, 2017) + +IMPROVEMENTS: +- docs: Added Slate docs to each rpc function (see rpc/core) +- docs: Ported all website docs to Read The Docs +- config: expose some p2p params to tweak performance: RecvRate, SendRate, and MaxMsgPacketPayloadSize +- rpc: Upgrade the websocket client and server, including improved auto reconnect, and proper ping/pong + +BUG FIXES: +- consensus: fix panic on getVoteBitArray +- consensus: hang instead of panicking on byzantine consensus failures +- cmd: dont load config for version command + +## 0.10.3 (August 10, 2017) + +FEATURES: +- control over empty block production: + - new flag, `--consensus.create_empty_blocks`; when set to false, blocks are only created when there are txs or when the AppHash changes. + - new config option, `consensus.create_empty_blocks_interval`; an empty block is created after this many seconds. + - in normal operation, `create_empty_blocks = true` and `create_empty_blocks_interval = 0`, so blocks are being created all the time (as in all previous versions of tendermint). The number of empty blocks can be reduced by increasing `create_empty_blocks_interval` or by setting `create_empty_blocks = false`. + - new `TxsAvailable()` method added to Mempool that returns a channel which fires when txs are available. + - new heartbeat message added to consensus reactor to notify peers that a node is waiting for txs before entering propose step. +- rpc: Add `syncing` field to response returned by `/status`. Is `true` while in fast-sync mode. + +IMPROVEMENTS: +- various improvements to documentation and code comments + +BUG FIXES: +- mempool: pass height into constructor so it doesn't always start at 0 + +## 0.10.2 (July 10, 2017) + +FEATURES: +- Enable lower latency block commits by adding consensus reactor sleep durations and p2p flush throttle timeout to the config + +IMPROVEMENTS: +- More detailed logging in the consensus reactor and state machine +- More in-code documentation for many exposed functions, especially in consensus/reactor.go and p2p/switch.go +- Improved readability for some function definitions and code blocks with long lines + +## 0.10.1 (June 28, 2017) + +FEATURES: +- Use `--trace` to get stack traces for logged errors +- types: GenesisDoc.ValidatorHash returns the hash of the genesis validator set +- types: GenesisDocFromFile parses a GenesiDoc from a JSON file + +IMPROVEMENTS: +- Add a Code of Conduct +- Variety of improvements as suggested by `megacheck` tool +- rpc: deduplicate tests between rpc/client and rpc/tests +- rpc: addresses without a protocol prefix default to `tcp://`. `http://` is also accepted as an alias for `tcp://` +- cmd: commands are more easily reuseable from other tools +- DOCKER: automate build/push + +BUG FIXES: +- Fix log statements using keys with spaces (logger does not currently support spaces) +- rpc: set logger on websocket connection +- rpc: fix ws connection stability by setting write deadline on pings + +## 0.10.0 (June 2, 2017) + +Includes major updates to configuration, logging, and json serialization. +Also includes the Grand Repo-Merge of 2017. + +BREAKING CHANGES: + +- Config and Flags: + - The `config` map is replaced with a [`Config` struct](https://github.com/tendermint/tendermint/blob/master/config/config.go#L11), +containing substructs: `BaseConfig`, `P2PConfig`, `MempoolConfig`, `ConsensusConfig`, `RPCConfig` + - This affects the following flags: + - `--seeds` is now `--p2p.seeds` + - `--node_laddr` is now `--p2p.laddr` + - `--pex` is now `--p2p.pex` + - `--skip_upnp` is now `--p2p.skip_upnp` + - `--rpc_laddr` is now `--rpc.laddr` + - `--grpc_laddr` is now `--rpc.grpc_laddr` + - Any configuration option now within a substract must come under that heading in the `config.toml`, for instance: + ``` + [p2p] + laddr="tcp://1.2.3.4:46656" + + [consensus] + timeout_propose=1000 + ``` + - Use viper and `DefaultConfig() / TestConfig()` functions to handle defaults, and remove `config/tendermint` and `config/tendermint_test` + - Change some function and method signatures to + - Change some [function and method signatures](https://gist.github.com/ebuchman/640d5fc6c2605f73497992fe107ebe0b) accomodate new config + +- Logger + - Replace static `log15` logger with a simple interface, and provide a new implementation using `go-kit`. +See our new [logging library](https://github.com/tendermint/tmlibs/log) and [blog post](https://tendermint.com/blog/abstracting-the-logger-interface-in-go) for more details + - Levels `warn` and `notice` are removed (you may need to change them in your `config.toml`!) + - Change some [function and method signatures](https://gist.github.com/ebuchman/640d5fc6c2605f73497992fe107ebe0b) to accept a logger + +- JSON serialization: + - Replace `[TypeByte, Xxx]` with `{"type": "some-type", "data": Xxx}` in RPC and all `.json` files by using `go-wire/data`. For instance, a public key is now: + ``` + "pub_key": { + "type": "ed25519", + "data": "83DDF8775937A4A12A2704269E2729FCFCD491B933C4B0A7FFE37FE41D7760D0" + } + ``` + - Remove type information about RPC responses, so `[TypeByte, {"jsonrpc": "2.0", ... }]` is now just `{"jsonrpc": "2.0", ... }` + - Change `[]byte` to `data.Bytes` in all serialized types (for hex encoding) + - Lowercase the JSON tags in `ValidatorSet` fields + - Introduce `EventDataInner` for serializing events + +- Other: + - Send InitChain message in handshake if `appBlockHeight == 0` + - Do not include the `Accum` field when computing the validator hash. This makes the ValidatorSetHash unique for a given validator set, rather than changing with every block (as the Accum changes) + - Unsafe RPC calls are not enabled by default. This includes `/dial_seeds`, and all calls prefixed with `unsafe`. Use the `--rpc.unsafe` flag to enable. + + +FEATURES: + +- Per-module log levels. For instance, the new default is `state:info,*:error`, which means the `state` package logs at `info` level, and everything else logs at `error` level +- Log if a node is validator or not in every consensus round +- Use ldflags to set git hash as part of the version +- Ignore `address` and `pub_key` fields in `priv_validator.json` and overwrite them with the values derrived from the `priv_key` IMPROVEMENTS: -- Update to use new `tmlibs` repository +- Merge `tendermint/go-p2p -> tendermint/tendermint/p2p` and `tendermint/go-rpc -> tendermint/tendermint/rpc/lib` +- Update paths for grand repo merge: + - `go-common -> tmlibs/common` + - `go-data -> go-wire/data` + - All other `go-` libs, except `go-crypto` and `go-wire`, are merged under `tmlibs` +- No global loggers (loggers are passed into constructors, or preferably set with a SetLogger method) +- Return HTTP status codes with errors for RPC responses +- Limit `/blockchain_info` call to return a maximum of 20 blocks +- Use `.Wrap()` and `.Unwrap()` instead of eg. `PubKeyS` for `go-crypto` types +- RPC JSON responses use pretty printing (via `json.MarshalIndent`) +- Color code different instances of the consensus for tests +- Isolate viper to `cmd/tendermint/commands` and do not read config from file for tests -## 0.1.0 (April 14, 2017) -Initial release +## 0.9.2 (April 26, 2017) +BUG FIXES: + +- Fix bug in `ResetPrivValidator` where we were using the global config and log (causing external consumers, eg. basecoin, to fail). + +## 0.9.1 (April 21, 2017) + +FEATURES: + +- Transaction indexing - txs are indexed by their hash using a simple key-value store; easily extended to more advanced indexers +- New `/tx?hash=X` endpoint to query for transactions and their DeliverTx result by hash. Optionally returns a proof of the tx's inclusion in the block +- `tendermint testnet` command initializes files for a testnet + +IMPROVEMENTS: + +- CLI now uses Cobra framework +- TMROOT is now TMHOME (TMROOT will stop working in 0.10.0) +- `/broadcast_tx_XXX` also returns the Hash (can be used to query for the tx) +- `/broadcast_tx_commit` also returns the height the block was committed in +- ABCIResponses struct persisted to disk before calling Commit; makes handshake replay much cleaner +- WAL uses #ENDHEIGHT instead of #HEIGHT (#HEIGHT will stop working in 0.10.0) +- Peers included via `--seeds`, under `seeds` in the config, or in `/dial_seeds` are now persistent, and will be reconnected to if the connection breaks + +BUG FIXES: + +- Fix bug in fast-sync where we stop syncing after a peer is removed, even if they're re-added later +- Fix handshake replay to handle validator set changes and results of DeliverTx when we crash after app.Commit but before state.Save() + +## 0.9.0 (March 6, 2017) + +BREAKING CHANGES: + +- Update ABCI to v0.4.0, where Query is now `Query(RequestQuery) ResponseQuery`, enabling precise proofs at particular heights: + +``` +message RequestQuery{ + bytes data = 1; + string path = 2; + uint64 height = 3; + bool prove = 4; +} + +message ResponseQuery{ + CodeType code = 1; + int64 index = 2; + bytes key = 3; + bytes value = 4; + bytes proof = 5; + uint64 height = 6; + string log = 7; +} +``` + + +- `BlockMeta` data type unifies its Hash and PartSetHash under a `BlockID`: + +``` +type BlockMeta struct { + BlockID BlockID `json:"block_id"` // the block hash and partsethash + Header *Header `json:"header"` // The block's Header +} +``` + +- `ValidatorSet.Proposer` is exposed as a field and persisted with the `State`. Use `GetProposer()` to initialize or update after validator-set changes. + +- `tendermint gen_validator` command output is now pure JSON + +FEATURES: + +- New RPC endpoint `/commit?height=X` returns header and commit for block at height `X` +- Client API for each endpoint, including mocks for testing + +IMPROVEMENTS: + +- `Node` is now a `BaseService` +- Simplified starting Tendermint in-process from another application +- Better organized Makefile +- Scripts for auto-building binaries across platforms +- Docker image improved, slimmed down (using Alpine), and changed from tendermint/tmbase to tendermint/tendermint +- New repo files: `CONTRIBUTING.md`, Github `ISSUE_TEMPLATE`, `CHANGELOG.md` +- Improvements on CircleCI for managing build/test artifacts +- Handshake replay is doen through the consensus package, possibly using a mockApp +- Graceful shutdown of RPC listeners +- Tests for the PEX reactor and DialSeeds + +BUG FIXES: + +- Check peer.Send for failure before updating PeerState in consensus +- Fix panic in `/dial_seeds` with invalid addresses +- Fix proposer selection logic in ValidatorSet by taking the address into account in the `accumComparable` +- Fix inconcistencies with `ValidatorSet.Proposer` across restarts by persisting it in the `State` + + +## 0.8.0 (January 13, 2017) + +BREAKING CHANGES: + +- New data type `BlockID` to represent blocks: + +``` +type BlockID struct { + Hash []byte `json:"hash"` + PartsHeader PartSetHeader `json:"parts"` +} +``` + +- `Vote` data type now includes validator address and index: + +``` +type Vote struct { + ValidatorAddress []byte `json:"validator_address"` + ValidatorIndex int `json:"validator_index"` + Height int `json:"height"` + Round int `json:"round"` + Type byte `json:"type"` + BlockID BlockID `json:"block_id"` // zero if vote is nil. + Signature crypto.Signature `json:"signature"` +} +``` + +- Update TMSP to v0.3.0, where it is now called ABCI and AppendTx is DeliverTx +- Hex strings in the RPC are now "0x" prefixed + + +FEATURES: + +- New message type on the ConsensusReactor, `Maj23Msg`, for peers to alert others they've seen a Maj23, +in order to track and handle conflicting votes intelligently to prevent Byzantine faults from causing halts: + +``` +type VoteSetMaj23Message struct { + Height int + Round int + Type byte + BlockID types.BlockID +} +``` + +- Configurable block part set size +- Validator set changes +- Optionally skip TimeoutCommit if we have all the votes +- Handshake between Tendermint and App on startup to sync latest state and ensure consistent recovery from crashes +- GRPC server for BroadcastTx endpoint + +IMPROVEMENTS: + +- Less verbose logging +- Better test coverage (37% -> 49%) +- Canonical SignBytes for signable types +- Write-Ahead Log for Mempool and Consensus via tmlibs/autofile +- Better in-process testing for the consensus reactor and byzantine faults +- Better crash/restart testing for individual nodes at preset failure points, and of networks at arbitrary points +- Better abstraction over timeout mechanics + +BUG FIXES: + +- Fix memory leak in mempool peer +- Fix panic on POLRound=-1 +- Actually set the CommitTime +- Actually send BeginBlock message +- Fix a liveness issues caused by Byzantine proposals/votes. Uses the new `Maj23Msg`. + + +## 0.7.4 (December 14, 2016) + +FEATURES: + +- Enable the Peer Exchange reactor with the `--pex` flag for more resilient gossip network (feature still in development, beware dragons) + +IMPROVEMENTS: + +- Remove restrictions on RPC endpoint `/dial_seeds` to enable manual network configuration + +## 0.7.3 (October 20, 2016) + +IMPROVEMENTS: + +- Type safe FireEvent +- More WAL/replay tests +- Cleanup some docs + +BUG FIXES: + +- Fix deadlock in mempool for synchronous apps +- Replay handles non-empty blocks +- Fix race condition in HeightVoteSet + +## 0.7.2 (September 11, 2016) + +BUG FIXES: + +- Set mustConnect=false so tendermint will retry connecting to the app + +## 0.7.1 (September 10, 2016) + +FEATURES: + +- New TMSP connection for Query/Info +- New RPC endpoints: + - `tmsp_query` + - `tmsp_info` +- Allow application to filter peers through Query (off by default) + +IMPROVEMENTS: + +- TMSP connection type enforced at compile time +- All listen/client urls use a "tcp://" or "unix://" prefix + +BUG FIXES: + +- Save LastSignature/LastSignBytes to `priv_validator.json` for recovery +- Fix event unsubscribe +- Fix fastsync/blockchain reactor + +## 0.7.0 (August 7, 2016) + +BREAKING CHANGES: + +- Strict SemVer starting now! +- Update to ABCI v0.2.0 +- Validation types now called Commit +- NewBlock event only returns the block header + + +FEATURES: + +- TMSP and RPC support TCP and UNIX sockets +- Addition config options including block size and consensus parameters +- New WAL mode `cswal_light`; logs only the validator's own votes +- New RPC endpoints: + - for starting/stopping profilers, and for updating config + - `/broadcast_tx_commit`, returns when tx is included in a block, else an error + - `/unsafe_flush_mempool`, empties the mempool + + +IMPROVEMENTS: + +- Various optimizations +- Remove bad or invalidated transactions from the mempool cache (allows later duplicates) +- More elaborate testing using CircleCI including benchmarking throughput on 4 digitalocean droplets + +BUG FIXES: + +- Various fixes to WAL and replay logic +- Various race conditions + +## PreHistory + +Strict versioning only began with the release of v0.7.0, in late summer 2016. +The project itself began in early summer 2014 and was workable decentralized cryptocurrency software by the end of that year. +Through the course of 2015, in collaboration with Eris Industries (now Monax Indsutries), +many additional features were integrated, including an implementation from scratch of the Ethereum Virtual Machine. +That implementation now forms the heart of [Burrow](https://github.com/hyperledger/burrow). +In the later half of 2015, the consensus algorithm was upgraded with a more asynchronous design and a more deterministic and robust implementation. + +By late 2015, frustration with the difficulty of forking a large monolithic stack to create alternative cryptocurrency designs led to the +invention of the Application Blockchain Interface (ABCI), then called the Tendermint Socket Protocol (TMSP). +The Ethereum Virtual Machine and various other transaction features were removed, and Tendermint was whittled down to a core consensus engine +driving an application running in another process. +The ABCI interface and implementation were iterated on and improved over the course of 2016, +until versioned history kicked in with v0.7.0. diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 000000000..d47c0f15e --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,56 @@ +# The Tendermint Code of Conduct +This code of conduct applies to all projects run by the Tendermint/COSMOS team and hence to tendermint. + + +---- + + +# Conduct +## Contact: adrian@tendermint.com + +* We are committed to providing a friendly, safe and welcoming environment for all, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, nationality, or other similar characteristic. + +* On Slack, please avoid using overtly sexual nicknames or other nicknames that might detract from a friendly, safe and welcoming environment for all. + +* Please be kind and courteous. There’s no need to be mean or rude. + +* Respect that people have differences of opinion and that every design or implementation choice carries a trade-off and numerous costs. There is seldom a right answer. + +* Please keep unstructured critique to a minimum. If you have solid ideas you want to experiment with, make a fork and see how it works. + +* We will exclude you from interaction if you insult, demean or harass anyone. That is not welcome behaviour. We interpret the term “harassment” as including the definition in the [Citizen Code of Conduct](http://citizencodeofconduct.org/); if you have any lack of clarity about what might be included in that concept, please read their definition. In particular, we don’t tolerate behavior that excludes people in socially marginalized groups. + +* Private harassment is also unacceptable. No matter who you are, if you feel you have been or are being harassed or made uncomfortable by a community member, please contact one of the channel admins or the person mentioned above immediately. Whether you’re a regular contributor or a newcomer, we care about making this community a safe place for you and we’ve got your back. + +* Likewise any spamming, trolling, flaming, baiting or other attention-stealing behaviour is not welcome. + + +---- + + +# Moderation +These are the policies for upholding our community’s standards of conduct. If you feel that a thread needs moderation, please contact the above mentioned person. + +1. Remarks that violate the Tendermint/COSMOS standards of conduct, including hateful, hurtful, oppressive, or exclusionary remarks, are not allowed. (Cursing is allowed, but never targeting another user, and never in a hateful manner.) + +2. Remarks that moderators find inappropriate, whether listed in the code of conduct or not, are also not allowed. + +3. Moderators will first respond to such remarks with a warning. + +4. If the warning is unheeded, the user will be “kicked,” i.e., kicked out of the communication channel to cool off. + +5. If the user comes back and continues to make trouble, they will be banned, i.e., indefinitely excluded. + +6. Moderators may choose at their discretion to un-ban the user if it was a first offense and they offer the offended party a genuine apology. + +7. If a moderator bans someone and you think it was unjustified, please take it up with that moderator, or with a different moderator, in private. Complaints about bans in-channel are not allowed. + +8. Moderators are held to a higher standard than other community members. If a moderator creates an inappropriate situation, they should expect less leeway than others. + +In the Tendermint/COSMOS community we strive to go the extra step to look out for each other. Don’t just aim to be technically unimpeachable, try to be your best self. In particular, avoid flirting with offensive or sensitive issues, particularly if they’re off-topic; this all too often leads to unnecessary fights, hurt feelings, and damaged trust; worse, it can drive people away from the community entirely. + +And if someone takes issue with something you said or did, resist the urge to be defensive. Just stop doing what it was they complained about and apologize. Even if you feel you were misinterpreted or unfairly accused, chances are good there was something you could’ve communicated better — remember that it’s your responsibility to make your fellow Cosmonauts comfortable. Everyone wants to get along and we are all here first and foremost because we want to talk about cool technology. You will find that people will be eager to assume good intent and forgive as long as you earn their trust. + +The enforcement policies listed above apply to all official Tendermint/COSMOS venues.For other projects adopting the Tendermint/COSMOS Code of Conduct, please contact the maintainers of those projects for enforcement. If you wish to use this code of conduct for your own project, consider explicitly mentioning your moderation policy or making a copy with your own moderation policy so as to avoid confusion. + +*Adapted from the [Node.js Policy on Trolling](http://blog.izs.me/post/30036893703/policy-on-trolling), the [Contributor Covenant v1.3.0](http://contributor-covenant.org/version/1/3/0/) and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html). diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..5fd2d982f --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,117 @@ +# Contributing + +Thank you for considering making contributions to Tendermint and related repositories! Start by taking a look at the [coding repo](https://github.com/tendermint/coding) for overall information on repository workflow and standards. + +Please follow standard github best practices: fork the repo, branch from the tip of develop, make some commits, and submit a pull request to develop. See the [open issues](https://github.com/tendermint/tendermint/issues) for things we need help with! + +Please make sure to use `gofmt` before every commit - the easiest way to do this is have your editor run it for you upon saving a file. + +## Forking + +Please note that Go requires code to live under absolute paths, which complicates forking. +While my fork lives at `https://github.com/ebuchman/tendermint`, +the code should never exist at `$GOPATH/src/github.com/ebuchman/tendermint`. +Instead, we use `git remote` to add the fork as a new remote for the original repo, +`$GOPATH/src/github.com/tendermint/tendermint `, and do all the work there. + +For instance, to create a fork and work on a branch of it, I would: + + * Create the fork on github, using the fork button. + * Go to the original repo checked out locally (ie. `$GOPATH/src/github.com/tendermint/tendermint`) + * `git remote rename origin upstream` + * `git remote add origin git@github.com:ebuchman/basecoin.git` + +Now `origin` refers to my fork and `upstream` refers to the tendermint version. +So I can `git push -u origin master` to update my fork, and make pull requests to tendermint from there. +Of course, replace `ebuchman` with your git handle. + +To pull in updates from the origin repo, run + + * `git fetch upstream` + * `git rebase upstream/master` (or whatever branch you want) + +Please don't make Pull Requests to `master`. + +## Dependencies + +We use [dep](https://github.com/golang/dep) to manage dependencies. + +That said, the master branch of every Tendermint repository should just build +with `go get`, which means they should be kept up-to-date with their +dependencies so we can get away with telling people they can just `go get` our +software. + +Since some dependencies are not under our control, a third party may break our +build, in which case we can fall back on `dep ensure` (or `make +get_vendor_deps`). Even for dependencies under our control, dep helps us to +keep multiple repos in sync as they evolve. Anything with an executable, such +as apps, tools, and the core, should use dep. + +Run `dep status` to get a list of vendored dependencies that may not be +up-to-date. + +## Vagrant + +If you are a [Vagrant](https://www.vagrantup.com/) user, you can get started +hacking Tendermint with the commands below. + +NOTE: In case you installed Vagrant in 2017, you might need to run +`vagrant box update` to upgrade to the latest `ubuntu/xenial64`. + +``` +vagrant up +vagrant ssh +make test +``` + +## Testing + +All repos should be hooked up to [CircleCI](https://circleci.com/). + +If they have `.go` files in the root directory, they will be automatically +tested by circle using `go test -v -race ./...`. If not, they will need a +`circle.yml`. Ideally, every repo has a `Makefile` that defines `make test` and +includes its continuous integration status using a badge in the `README.md`. + +## Branching Model and Release + +User-facing repos should adhere to the branching model: http://nvie.com/posts/a-successful-git-branching-model/. +That is, these repos should be well versioned, and any merge to master requires a version bump and tagged release. + +Libraries need not follow the model strictly, but would be wise to, +especially `go-p2p` and `go-rpc`, as their versions are referenced in tendermint core. + +### Development Procedure: +- the latest state of development is on `develop` +- `develop` must never fail `make test` +- no --force onto `develop` (except when reverting a broken commit, which should seldom happen) +- create a development branch either on github.com/tendermint/tendermint, or your fork (using `git add origin`) +- before submitting a pull request, begin `git rebase` on top of `develop` + +### Pull Merge Procedure: +- ensure pull branch is rebased on develop +- run `make test` to ensure that all tests pass +- merge pull request +- the `unstable` branch may be used to aggregate pull merges before testing once +- push master may request that pull requests be rebased on top of `unstable` + +### Release Procedure: +- start on `develop` +- run integration tests (see `test_integrations` in Makefile) +- prepare changelog/release issue +- bump versions +- push to release-vX.X.X to run the extended integration tests on the CI +- merge to master +- merge master back to develop + +### Hotfix Procedure: +- start on `master` +- checkout a new branch named hotfix-vX.X.X +- make the required changes + - these changes should be small and an absolute necessity + - add a note to CHANGELOG.md +- bumb versions +- push to hotfix-vX.X.X to run the extended integration tests on the CI +- merge hotfix-vX.X.X to master +- merge hotfix-vX.X.X to develop +- delete the hotfix-vX.X.X branch diff --git a/DOCKER/.gitignore b/DOCKER/.gitignore new file mode 100644 index 000000000..9059c6848 --- /dev/null +++ b/DOCKER/.gitignore @@ -0,0 +1 @@ +tendermint diff --git a/DOCKER/Dockerfile b/DOCKER/Dockerfile new file mode 100644 index 000000000..4a855f425 --- /dev/null +++ b/DOCKER/Dockerfile @@ -0,0 +1,39 @@ +FROM alpine:3.7 +MAINTAINER Greg Szabo + +# Tendermint will be looking for the genesis file in /tendermint/config/genesis.json +# (unless you change `genesis_file` in config.toml). You can put your config.toml and +# private validator file into /tendermint/config. +# +# The /tendermint/data dir is used by tendermint to store state. +ENV TMHOME /tendermint + +# OS environment setup +# Set user right away for determinism, create directory for persistence and give our user ownership +# jq and curl used for extracting `pub_key` from private validator while +# deploying tendermint with Kubernetes. It is nice to have bash so the users +# could execute bash commands. +RUN apk update && \ + apk upgrade && \ + apk --no-cache add curl jq bash && \ + addgroup tmuser && \ + adduser -S -G tmuser tmuser -h "$TMHOME" + +# Run the container with tmuser by default. (UID=100, GID=1000) +USER tmuser + +# Expose the data directory as a volume since there's mutable state in there +VOLUME [ $TMHOME ] + +WORKDIR $TMHOME + +# p2p and rpc port +EXPOSE 26656 26657 + +ENTRYPOINT ["/usr/bin/tendermint"] +CMD ["node", "--moniker=`hostname`"] +STOPSIGNAL SIGTERM + +ARG BINARY=tendermint +COPY $BINARY /usr/bin/tendermint + diff --git a/DOCKER/Dockerfile.develop b/DOCKER/Dockerfile.develop new file mode 100644 index 000000000..5759e7658 --- /dev/null +++ b/DOCKER/Dockerfile.develop @@ -0,0 +1,35 @@ +FROM alpine:3.7 + +ENV DATA_ROOT /tendermint +ENV TMHOME $DATA_ROOT + +RUN addgroup tmuser && \ + adduser -S -G tmuser tmuser + +RUN mkdir -p $DATA_ROOT && \ + chown -R tmuser:tmuser $DATA_ROOT + +RUN apk add --no-cache bash curl jq + +ENV GOPATH /go +ENV PATH "$PATH:/go/bin" +RUN mkdir -p /go/src/github.com/tendermint/tendermint && \ + apk add --no-cache go build-base git && \ + cd /go/src/github.com/tendermint/tendermint && \ + git clone https://github.com/tendermint/tendermint . && \ + git checkout develop && \ + make get_tools && \ + make get_vendor_deps && \ + make install && \ + cd - && \ + rm -rf /go/src/github.com/tendermint/tendermint && \ + apk del go build-base git + +VOLUME $DATA_ROOT + +EXPOSE 26656 +EXPOSE 26657 + +ENTRYPOINT ["tendermint"] + +CMD ["node", "--moniker=`hostname`", "--proxy_app=kvstore"] diff --git a/DOCKER/Dockerfile.testing b/DOCKER/Dockerfile.testing new file mode 100644 index 000000000..b82afe2a8 --- /dev/null +++ b/DOCKER/Dockerfile.testing @@ -0,0 +1,18 @@ +FROM golang:1.10.1 + + +# Grab deps (jq, hexdump, xxd, killall) +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + jq bsdmainutils vim-common psmisc netcat + +# Add testing deps for curl +RUN echo 'deb http://httpredir.debian.org/debian testing main non-free contrib' >> /etc/apt/sources.list && \ + apt-get update && \ + apt-get install -y --no-install-recommends curl + +VOLUME /go + +EXPOSE 26656 +EXPOSE 26657 + diff --git a/DOCKER/Makefile b/DOCKER/Makefile new file mode 100644 index 000000000..32510ebbb --- /dev/null +++ b/DOCKER/Makefile @@ -0,0 +1,16 @@ +build: + @sh -c "'$(CURDIR)/build.sh'" + +push: + @sh -c "'$(CURDIR)/push.sh'" + +build_develop: + docker build -t "tendermint/tendermint:develop" -f Dockerfile.develop . + +build_testing: + docker build --tag tendermint/testing -f ./Dockerfile.testing . + +push_develop: + docker push "tendermint/tendermint:develop" + +.PHONY: build build_develop push push_develop diff --git a/DOCKER/README.md b/DOCKER/README.md new file mode 100644 index 000000000..43edce0fc --- /dev/null +++ b/DOCKER/README.md @@ -0,0 +1,67 @@ +# Docker + +## Supported tags and respective `Dockerfile` links + +- `0.17.1`, `latest` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/208ac32fa266657bd6c304e84ec828aa252bb0b8/DOCKER/Dockerfile) +- `0.15.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/170777300ea92dc21a8aec1abc16cb51812513a4/DOCKER/Dockerfile) +- `0.13.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/a28b3fff49dce2fb31f90abb2fc693834e0029c2/DOCKER/Dockerfile) +- `0.12.1` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/457c688346b565e90735431619ca3ca597ef9007/DOCKER/Dockerfile) +- `0.12.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/70d8afa6e952e24c573ece345560a5971bf2cc0e/DOCKER/Dockerfile) +- `0.11.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/9177cc1f64ca88a4a0243c5d1773d10fba67e201/DOCKER/Dockerfile) +- `0.10.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/e5342f4054ab784b2cd6150e14f01053d7c8deb2/DOCKER/Dockerfile) +- `0.9.1`, `0.9`, [(Dockerfile)](https://github.com/tendermint/tendermint/blob/809e0e8c5933604ba8b2d096803ada7c5ec4dfd3/DOCKER/Dockerfile) +- `0.9.0` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/d474baeeea6c22b289e7402449572f7c89ee21da/DOCKER/Dockerfile) +- `0.8.0`, `0.8` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/bf64dd21fdb193e54d8addaaaa2ecf7ac371de8c/DOCKER/Dockerfile) +- `develop` [(Dockerfile)](https://github.com/tendermint/tendermint/blob/master/DOCKER/Dockerfile.develop) + +`develop` tag points to the [develop](https://github.com/tendermint/tendermint/tree/develop) branch. + +## Quick reference + +* **Where to get help:** + https://cosmos.network/community + +* **Where to file issues:** + https://github.com/tendermint/tendermint/issues + +* **Supported Docker versions:** + [the latest release](https://github.com/moby/moby/releases) (down to 1.6 on a best-effort basis) + +## Tendermint + +Tendermint Core is Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine, written in any programming language, and securely replicates it on many machines. + +For more background, see the [introduction](https://tendermint.readthedocs.io/en/master/introduction.html). + +To get started developing applications, see the [application developers guide](https://tendermint.readthedocs.io/en/master/getting-started.html). + +## How to use this image + +### Start one instance of the Tendermint core with the `kvstore` app + +A quick example of a built-in app and Tendermint core in one container. + +``` +docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint init +docker run -it --rm -v "/tmp:/tendermint" tendermint/tendermint node --proxy_app=kvstore +``` + +## Local cluster + +To run a 4-node network, see the `Makefile` in the root of [the repo](https://github.com/tendermint/tendermint/master/Makefile) and run: + +``` +make build-linux +make build-docker-localnode +make localnet-start +``` + +Note that this will build and use a different image than the ones provided here. + +## License + +- Tendermint's license is [Apache 2.0](https://github.com/tendermint/tendermint/master/LICENSE). + +## Contributing + +Contributions are most welcome! See the [contributing file](https://github.com/tendermint/tendermint/blob/master/CONTRIBUTING.md) for more information. diff --git a/DOCKER/build.sh b/DOCKER/build.sh new file mode 100755 index 000000000..ee617cc63 --- /dev/null +++ b/DOCKER/build.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -e + +# Get the tag from the version, or try to figure it out. +if [ -z "$TAG" ]; then + TAG=$(awk -F\" '/Version =/ { print $2; exit }' < ../version/version.go) +fi +if [ -z "$TAG" ]; then + echo "Please specify a tag." + exit 1 +fi + +TAG_NO_PATCH=${TAG%.*} + +read -p "==> Build 3 docker images with the following tags (latest, $TAG, $TAG_NO_PATCH)? y/n" -n 1 -r +echo +if [[ $REPLY =~ ^[Yy]$ ]] +then + docker build -t "tendermint/tendermint" -t "tendermint/tendermint:$TAG" -t "tendermint/tendermint:$TAG_NO_PATCH" . +fi diff --git a/DOCKER/push.sh b/DOCKER/push.sh new file mode 100755 index 000000000..32741dce8 --- /dev/null +++ b/DOCKER/push.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash +set -e + +# Get the tag from the version, or try to figure it out. +if [ -z "$TAG" ]; then + TAG=$(awk -F\" '/Version =/ { print $2; exit }' < ../version/version.go) +fi +if [ -z "$TAG" ]; then + echo "Please specify a tag." + exit 1 +fi + +TAG_NO_PATCH=${TAG%.*} + +read -p "==> Push 3 docker images with the following tags (latest, $TAG, $TAG_NO_PATCH)? y/n" -n 1 -r +echo +if [[ $REPLY =~ ^[Yy]$ ]] +then + docker push "tendermint/tendermint:latest" + docker push "tendermint/tendermint:$TAG" + docker push "tendermint/tendermint:$TAG_NO_PATCH" +fi diff --git a/Gopkg.lock b/Gopkg.lock index 7dbe6ae72..4653375da 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -1,6 +1,12 @@ # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. +[[projects]] + branch = "master" + name = "github.com/beorn7/perks" + packages = ["quantile"] + revision = "3a771d992973f24aa725d07868b467d1ddfceafb" + [[projects]] branch = "master" name = "github.com/btcsuite/btcd" @@ -19,12 +25,34 @@ revision = "346938d642f2ec3594ed81d874461961cd0faa76" version = "v1.1.0" +[[projects]] + branch = "master" + name = "github.com/ebuchman/fail-test" + packages = ["."] + revision = "95f809107225be108efcf10a3509e4ea6ceef3c4" + +[[projects]] + branch = "master" + name = "github.com/fortytw2/leaktest" + packages = ["."] + revision = "b008db64ef8daabb22ff6daa557f33b41d8f6ccd" + +[[projects]] + name = "github.com/fsnotify/fsnotify" + packages = ["."] + revision = "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9" + version = "v1.4.7" + [[projects]] name = "github.com/go-kit/kit" packages = [ "log", "log/level", - "log/term" + "log/term", + "metrics", + "metrics/discard", + "metrics/internal/lv", + "metrics/prometheus" ] revision = "4dc7be5d2d12881735283bcab7352178e190fc71" version = "v0.6.0" @@ -45,18 +73,98 @@ name = "github.com/gogo/protobuf" packages = [ "gogoproto", + "jsonpb", "proto", - "protoc-gen-gogo/descriptor" + "protoc-gen-gogo/descriptor", + "sortkeys", + "types" ] revision = "1adfc126b41513cc696b209667c8656ea7aac67c" version = "v1.0.0" +[[projects]] + name = "github.com/golang/protobuf" + packages = [ + "proto", + "ptypes", + "ptypes/any", + "ptypes/duration", + "ptypes/timestamp" + ] + revision = "925541529c1fa6821df4e44ce2723319eb2be768" + version = "v1.0.0" + +[[projects]] + branch = "master" + name = "github.com/golang/snappy" + packages = ["."] + revision = "2e65f85255dbc3072edf28d6b5b8efc472979f5a" + +[[projects]] + name = "github.com/gorilla/websocket" + packages = ["."] + revision = "ea4d1f681babbce9545c9c5f3d5194a789c89f5b" + version = "v1.2.0" + +[[projects]] + branch = "master" + name = "github.com/hashicorp/hcl" + packages = [ + ".", + "hcl/ast", + "hcl/parser", + "hcl/printer", + "hcl/scanner", + "hcl/strconv", + "hcl/token", + "json/parser", + "json/scanner", + "json/token" + ] + revision = "ef8a98b0bbce4a65b5aa4c368430a80ddc533168" + +[[projects]] + name = "github.com/inconshreveable/mousetrap" + packages = ["."] + revision = "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75" + version = "v1.0" + +[[projects]] + branch = "master" + name = "github.com/jmhodges/levigo" + packages = ["."] + revision = "c42d9e0ca023e2198120196f842701bb4c55d7b9" + [[projects]] branch = "master" name = "github.com/kr/logfmt" packages = ["."] revision = "b84e30acd515aadc4b783ad4ff83aff3299bdfe0" +[[projects]] + name = "github.com/magiconair/properties" + packages = ["."] + revision = "c2353362d570a7bfa228149c62842019201cfb71" + version = "v1.8.0" + +[[projects]] + name = "github.com/matttproud/golang_protobuf_extensions" + packages = ["pbutil"] + revision = "c12348ce28de40eed0136aa2b644d0ee0650e56c" + version = "v1.0.1" + +[[projects]] + branch = "master" + name = "github.com/mitchellh/mapstructure" + packages = ["."] + revision = "bb74f1db0675b241733089d5a1faa5dd8b0ef57b" + +[[projects]] + name = "github.com/pelletier/go-toml" + packages = ["."] + revision = "c01d1270ff3e442a8a57cddc1c92dc1138598194" + version = "v1.2.0" + [[projects]] name = "github.com/pkg/errors" packages = ["."] @@ -69,6 +177,87 @@ revision = "792786c7400a136282c1664665ae0a8db921c6c2" version = "v1.0.0" +[[projects]] + name = "github.com/prometheus/client_golang" + packages = [ + "prometheus", + "prometheus/promhttp" + ] + revision = "c5b7fccd204277076155f10851dad72b76a49317" + version = "v0.8.0" + +[[projects]] + branch = "master" + name = "github.com/prometheus/client_model" + packages = ["go"] + revision = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c" + +[[projects]] + branch = "master" + name = "github.com/prometheus/common" + packages = [ + "expfmt", + "internal/bitbucket.org/ww/goautoneg", + "model" + ] + revision = "7600349dcfe1abd18d72d3a1770870d9800a7801" + +[[projects]] + branch = "master" + name = "github.com/prometheus/procfs" + packages = [ + ".", + "internal/util", + "nfs", + "xfs" + ] + revision = "94663424ae5ae9856b40a9f170762b4197024661" + +[[projects]] + branch = "master" + name = "github.com/rcrowley/go-metrics" + packages = ["."] + revision = "e2704e165165ec55d062f5919b4b29494e9fa790" + +[[projects]] + name = "github.com/spf13/afero" + packages = [ + ".", + "mem" + ] + revision = "787d034dfe70e44075ccc060d346146ef53270ad" + version = "v1.1.1" + +[[projects]] + name = "github.com/spf13/cast" + packages = ["."] + revision = "8965335b8c7107321228e3e3702cab9832751bac" + version = "v1.2.0" + +[[projects]] + name = "github.com/spf13/cobra" + packages = ["."] + revision = "ef82de70bb3f60c65fb8eebacbb2d122ef517385" + version = "v0.0.3" + +[[projects]] + branch = "master" + name = "github.com/spf13/jwalterweatherman" + packages = ["."] + revision = "7c0cea34c8ece3fbeb2b27ab9b59511d360fb394" + +[[projects]] + name = "github.com/spf13/pflag" + packages = ["."] + revision = "583c0c0531f06d5278b7d917446061adc344b5cd" + version = "v1.0.1" + +[[projects]] + name = "github.com/spf13/viper" + packages = ["."] + revision = "b5e8006cbee93ec955a89ab31e0e3ce3204f3736" + version = "v1.0.2" + [[projects]] name = "github.com/stretchr/testify" packages = [ @@ -78,6 +267,38 @@ revision = "f35b8ab0b5a2cef36673838d662e249dd9c94686" version = "v1.2.2" +[[projects]] + branch = "master" + name = "github.com/syndtr/goleveldb" + packages = [ + "leveldb", + "leveldb/cache", + "leveldb/comparer", + "leveldb/errors", + "leveldb/filter", + "leveldb/iterator", + "leveldb/journal", + "leveldb/memdb", + "leveldb/opt", + "leveldb/storage", + "leveldb/table", + "leveldb/util" + ] + revision = "e2150783cd35f5b607daca48afd8c57ec54cc995" + +[[projects]] + name = "github.com/tendermint/abci" + packages = [ + "client", + "example/code", + "example/counter", + "example/kvstore", + "server", + "types" + ] + revision = "198dccf0ddfd1bb176f87657e3286a05a6ed9540" + version = "v0.12.0" + [[projects]] branch = "master" name = "github.com/tendermint/ed25519" @@ -94,11 +315,24 @@ revision = "2106ca61d91029c931fd54968c2bb02dc96b1412" version = "0.10.1" +[[projects]] + name = "github.com/tendermint/go-crypto" + packages = ["tmhash"] + revision = "6a6b591a3d7592a04b46af95451cb5be3b114f76" + version = "v0.9.0" + [[projects]] name = "github.com/tendermint/tmlibs" packages = [ + "autofile", + "cli", + "cli/flags", + "clist", "common", + "db", + "flowrate", "log", + "merkle", "test" ] revision = "692f1d86a6e2c0efa698fd1e4541b68c74ffaf38" @@ -111,9 +345,10 @@ "bcrypt", "blowfish", "chacha20poly1305", + "curve25519", "hkdf", "internal/chacha20", - "internal/subtle", + "nacl/box", "nacl/secretbox", "openpgp/armor", "openpgp/errors", @@ -121,17 +356,90 @@ "ripemd160", "salsa20/salsa" ] - revision = "7f39a6fea4fe9364fb61e1def6a268a51b4f3a06" + revision = "8ac0e0d97ce45cd83d1d7243c060cb8461dda5e9" + +[[projects]] + branch = "master" + name = "golang.org/x/net" + packages = [ + "context", + "http/httpguts", + "http2", + "http2/hpack", + "idna", + "internal/timeseries", + "trace" + ] + revision = "db08ff08e8622530d9ed3a0e8ac279f6d4c02196" [[projects]] branch = "master" name = "golang.org/x/sys" - packages = ["cpu"] - revision = "ad87a3a340fa7f3bed189293fbfa7a9b7e021ae1" + packages = [ + "cpu", + "unix" + ] + revision = "a9e25c09b96b8870693763211309e213c6ef299d" + +[[projects]] + name = "golang.org/x/text" + packages = [ + "collate", + "collate/build", + "internal/colltab", + "internal/gen", + "internal/tag", + "internal/triegen", + "internal/ucd", + "language", + "secure/bidirule", + "transform", + "unicode/bidi", + "unicode/cldr", + "unicode/norm", + "unicode/rangetable" + ] + revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0" + version = "v0.3.0" + +[[projects]] + name = "google.golang.org/genproto" + packages = ["googleapis/rpc/status"] + revision = "7fd901a49ba6a7f87732eb344f6e3c5b19d1b200" + +[[projects]] + name = "google.golang.org/grpc" + packages = [ + ".", + "balancer", + "codes", + "connectivity", + "credentials", + "grpclb/grpc_lb_v1/messages", + "grpclog", + "internal", + "keepalive", + "metadata", + "naming", + "peer", + "resolver", + "stats", + "status", + "tap", + "transport" + ] + revision = "5b3c4e850e90a4cf6a20ebd46c8b32a0a3afcb9e" + version = "v1.7.5" + +[[projects]] + name = "gopkg.in/yaml.v2" + packages = ["."] + revision = "5420a8b6744d3b0345ab293f6fcba19c978f1183" + version = "v2.2.1" [solve-meta] analyzer-name = "dep" analyzer-version = 1 - inputs-digest = "027b22b86396a971d5d5c1d298947f531f39743975d65a22e98601140aa1b1a1" + inputs-digest = "d17038089dd6383ff5028229d4026bb92f5c7adc7e9c1cd52584237e2e5fd431" solver-name = "gps-cdcl" solver-version = 1 diff --git a/Gopkg.toml b/Gopkg.toml index a614df866..d9b381337 100644 --- a/Gopkg.toml +++ b/Gopkg.toml @@ -24,26 +24,76 @@ # go-tests = true # unused-packages = true + [[constraint]] - name = "github.com/btcsuite/btcutil" + name = "github.com/ebuchman/fail-test" branch = "master" +[[constraint]] + name = "github.com/fortytw2/leaktest" + branch = "master" + +[[constraint]] + name = "github.com/go-kit/kit" + version = "~0.6.0" + +[[constraint]] + name = "github.com/gogo/protobuf" + version = "~1.0.0" + +[[constraint]] + name = "github.com/golang/protobuf" + version = "~1.0.0" + +[[constraint]] + name = "github.com/gorilla/websocket" + version = "~1.2.0" + +[[constraint]] + name = "github.com/pkg/errors" + version = "~0.8.0" + +[[constraint]] + name = "github.com/rcrowley/go-metrics" + branch = "master" + +[[constraint]] + name = "github.com/spf13/cobra" + version = "~0.0.1" + +[[constraint]] + name = "github.com/spf13/viper" + version = "~1.0.0" + [[constraint]] name = "github.com/stretchr/testify" - version = "1.2.1" + version = "~1.2.1" [[constraint]] - name = "github.com/tendermint/ed25519" - branch = "master" + name = "github.com/tendermint/abci" + version = "~0.12.0" [[constraint]] name = "github.com/tendermint/go-amino" - version = "0.10.0-rc2" + version = "~0.10.1" + +[[override]] + name = "github.com/tendermint/tmlibs" + version = "~0.8.4" [[constraint]] - name = "github.com/tendermint/tmlibs" - version = "0.8.1" + name = "google.golang.org/grpc" + version = "~1.7.3" + +# this got updated and broke, so locked to an old working commit ... +[[override]] + name = "google.golang.org/genproto" + revision = "7fd901a49ba6a7f87732eb344f6e3c5b19d1b200" [prune] go-tests = true unused-packages = true + +[[constraint]] + name = "github.com/prometheus/client_golang" + version = "0.8.0" diff --git a/LICENSE b/LICENSE index 3beb77b13..bb66bb350 100644 --- a/LICENSE +++ b/LICENSE @@ -1,11 +1,9 @@ -Tendermint Go-Crypto -Copyright (C) 2015 Tendermint - - +Tendermint Core +License: Apache2.0 Apache License Version 2.0, January 2004 - https://www.apache.org/licenses/ + http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -180,11 +178,24 @@ Copyright (C) 2015 Tendermint END OF TERMS AND CONDITIONS + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2016 All in Bits, Inc + Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - https://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, diff --git a/Makefile b/Makefile index a4fd3c37f..079c58f90 100644 --- a/Makefile +++ b/Makefile @@ -1,57 +1,143 @@ GOTOOLS = \ github.com/golang/dep/cmd/dep \ - # gopkg.in/alecthomas/gometalinter.v2 \ + gopkg.in/alecthomas/gometalinter.v2 +PACKAGES=$(shell go list ./... | grep -v '/vendor/') +BUILD_TAGS?=tendermint +BUILD_FLAGS = -ldflags "-X github.com/tendermint/tendermint/version.GitCommit=`git rev-parse --short=8 HEAD`" -GOTOOLS_CHECK = dep #gometalinter.v2 +all: check build test install -all: check get_vendor_deps build test install - -check: check_tools +check: check_tools ensure_deps ######################################## -### Build +### Build -# Command to generate the workd list (kept here for documentation purposes only): -wordlist: - # To re-generate wordlist.go run: - # go-bindata -ignore ".*\.go" -o keys/words/bip39/wordlist.go -pkg "wordlist" keys/bip39/wordlist/... +build: + CGO_ENABLED=0 go build $(BUILD_FLAGS) -tags '$(BUILD_TAGS)' -o build/tendermint ./cmd/tendermint/ -build: wordlist - # Nothing else to build! +build_race: + CGO_ENABLED=0 go build -race $(BUILD_FLAGS) -tags '$(BUILD_TAGS)' -o build/tendermint ./cmd/tendermint install: - # Nothing to install! + CGO_ENABLED=0 go install $(BUILD_FLAGS) -tags '$(BUILD_TAGS)' ./cmd/tendermint +######################################## +### Distribution + +# dist builds binaries for all platforms and packages them for distribution +dist: + @BUILD_TAGS='$(BUILD_TAGS)' sh -c "'$(CURDIR)/scripts/dist.sh'" ######################################## ### Tools & dependencies check_tools: @# https://stackoverflow.com/a/25668869 - @echo "Found tools: $(foreach tool,$(GOTOOLS_CHECK),\ + @echo "Found tools: $(foreach tool,$(notdir $(GOTOOLS)),\ $(if $(shell which $(tool)),$(tool),$(error "No $(tool) in PATH")))" get_tools: @echo "--> Installing tools" go get -u -v $(GOTOOLS) - #@gometalinter.v2 --install + @gometalinter.v2 --install update_tools: @echo "--> Updating tools" @go get -u $(GOTOOLS) +#Run this from CI get_vendor_deps: @rm -rf vendor/ - @echo "--> Running dep ensure" + @echo "--> Running dep" + @dep ensure -vendor-only + + +#Run this locally. +ensure_deps: + @rm -rf vendor/ + @echo "--> Running dep" @dep ensure +draw_deps: + @# requires brew install graphviz or apt-get install graphviz + go get github.com/RobotsAndPencils/goviz + @goviz -i github.com/tendermint/tendermint/cmd/tendermint -d 3 | dot -Tpng -o dependency-graph.png + +get_deps_bin_size: + @# Copy of build recipe with additional flags to perform binary size analysis + $(eval $(shell go build -work -a $(BUILD_FLAGS) -tags '$(BUILD_TAGS)' -o build/tendermint ./cmd/tendermint/ 2>&1)) + @find $(WORK) -type f -name "*.a" | xargs -I{} du -hxs "{}" | sort -rh | sed -e s:${WORK}/::g > deps_bin_size.log + @echo "Results can be found here: $(CURDIR)/deps_bin_size.log" ######################################## ### Testing +## required to be run first by most tests +build_docker_test_image: + docker build -t tester -f ./test/docker/Dockerfile . + +### coverage, app, persistence, and libs tests +test_cover: + # run the go unit tests with coverage + bash test/test_cover.sh + +test_apps: + # run the app tests using bash + # requires `abci-cli` and `tendermint` binaries installed + bash test/app/test.sh + +test_persistence: + # run the persistence tests using bash + # requires `abci-cli` installed + docker run --name run_persistence -t tester bash test/persist/test_failure_indices.sh + + # TODO undockerize + # bash test/persist/test_failure_indices.sh + +test_p2p: + docker rm -f rsyslog || true + rm -rf test/logs || true + mkdir test/logs + cd test/ + docker run -d -v "logs:/var/log/" -p 127.0.0.1:5514:514/udp --name rsyslog voxxit/rsyslog + cd .. + # requires 'tester' the image from above + bash test/p2p/test.sh tester + +need_abci: + bash scripts/install_abci_apps.sh + +test_integrations: + make build_docker_test_image + make get_tools + make get_vendor_deps + make install + make need_abci + make test_cover + make test_apps + make test_persistence + make test_p2p + +test_release: + @go test -tags release $(PACKAGES) + +test100: + @for i in {1..100}; do make test; done + +vagrant_test: + vagrant up + vagrant ssh -c 'make test_integrations' + +### go tests test: - CGO_ENABLED=0 go test -p 1 $(shell go list ./... | grep -v vendor) + @echo "--> Running go test" + @go test $(PACKAGES) + +test_race: + @echo "--> Running go test --race" + @go test -v -race $(PACKAGES) + ######################################## ### Formatting, linting, and vetting @@ -60,40 +146,91 @@ fmt: @go fmt ./... metalinter: - @echo "==> Running linter" - gometalinter.v2 --vendor --deadline=600s --disable-all \ - --enable=maligned \ + @echo "--> Running linter" + @gometalinter.v2 --vendor --deadline=600s --disable-all \ --enable=deadcode \ - --enable=goconst \ - --enable=goimports \ --enable=gosimple \ - --enable=ineffassign \ - --enable=megacheck \ - --enable=misspell \ - --enable=staticcheck \ + --enable=misspell \ --enable=safesql \ - --enable=structcheck \ - --enable=unconvert \ - --enable=unused \ - --enable=varcheck \ - --enable=vetshadow \ ./... #--enable=gas \ + #--enable=maligned \ #--enable=dupl \ #--enable=errcheck \ + #--enable=goconst \ #--enable=gocyclo \ + #--enable=goimports \ #--enable=golint \ <== comments on anything exported #--enable=gotype \ - #--enable=interfacer \ - #--enable=unparam \ + #--enable=ineffassign \ + #--enable=interfacer \ + #--enable=megacheck \ + #--enable=staticcheck \ + #--enable=structcheck \ + #--enable=unconvert \ + #--enable=unparam \ + #--enable=unused \ + #--enable=varcheck \ #--enable=vet \ + #--enable=vetshadow \ metalinter_all: - protoc $(INCLUDE) --lint_out=. types/*.proto + @echo "--> Running linter (all)" gometalinter.v2 --vendor --deadline=600s --enable-all --disable=lll ./... +########################################################### +### Docker image + +build-docker: + cp build/tendermint DOCKER/tendermint + docker build --label=tendermint --tag="tendermint/tendermint" DOCKER + rm -rf DOCKER/tendermint + +########################################################### +### Local testnet using docker + +# Build linux binary on other platforms +build-linux: + GOOS=linux GOARCH=amd64 $(MAKE) build + +build-docker-localnode: + cd networks/local + make + +# Run a 4-node testnet locally +localnet-start: localnet-stop + @if ! [ -f build/node0/config/genesis.json ]; then docker run --rm -v $(CURDIR)/build:/tendermint:Z tendermint/localnode testnet --v 4 --o . --populate-persistent-peers --starting-ip-address 192.167.10.2 ; fi + docker-compose up + +# Stop testnet +localnet-stop: + docker-compose down + +########################################################### +### Remote full-nodes (sentry) using terraform and ansible + +# Server management +sentry-start: + @if [ -z "$(DO_API_TOKEN)" ]; then echo "DO_API_TOKEN environment variable not set." ; false ; fi + @if ! [ -f $(HOME)/.ssh/id_rsa.pub ]; then ssh-keygen ; fi + cd networks/remote/terraform && terraform init && terraform apply -var DO_API_TOKEN="$(DO_API_TOKEN)" -var SSH_KEY_FILE="$(HOME)/.ssh/id_rsa.pub" + @if ! [ -f $(CURDIR)/build/node0/config/genesis.json ]; then docker run --rm -v $(CURDIR)/build:/tendermint:Z tendermint/localnode testnet --v 0 --n 4 --o . ; fi + cd networks/remote/ansible && ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i inventory/digital_ocean.py -l sentrynet install.yml + @echo "Next step: Add your validator setup in the genesis.json and config.tml files and run \"make sentry-config\". (Public key of validator, chain ID, peer IP and node ID.)" + +# Configuration management +sentry-config: + cd networks/remote/ansible && ansible-playbook -i inventory/digital_ocean.py -l sentrynet config.yml -e BINARY=$(CURDIR)/build/tendermint -e CONFIGDIR=$(CURDIR)/build + +sentry-stop: + @if [ -z "$(DO_API_TOKEN)" ]; then echo "DO_API_TOKEN environment variable not set." ; false ; fi + cd networks/remote/terraform && terraform destroy -var DO_API_TOKEN="$(DO_API_TOKEN)" -var SSH_KEY_FILE="$(HOME)/.ssh/id_rsa.pub" + +# meant for the CI, inspect script & adapt accordingly +build-slate: + bash scripts/slate.sh # To avoid unintended conflicts with file names, always add to .PHONY # unless there is a reason not to. # https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html -.PHONEY: check build install check_tools get_tools update_tools get_vendor_deps test fmt metalinter metalinter_all +.PHONY: check build build_race dist install check_tools get_tools update_tools get_vendor_deps draw_deps test_cover test_apps test_persistence test_p2p test test_race test_integrations test_release test100 vagrant_test fmt build-linux localnet-start localnet-stop build-docker build-docker-localnode sentry-start sentry-config sentry-stop build-slate diff --git a/README.md b/README.md index be087e045..c31c44dbe 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,138 @@ -# go-crypto [![GoDoc](https://godoc.org/github.com/tendermint/go-crypto?status.svg)](https://godoc.org/github.com/tendermint/go-crypto) +# Tendermint -go-crypto is the cryptographic package adapted for Tendermint's uses +[Byzantine-Fault Tolerant](https://en.wikipedia.org/wiki/Byzantine_fault_tolerance) +[State Machine Replication](https://en.wikipedia.org/wiki/State_machine_replication). +Or [Blockchain](https://en.wikipedia.org/wiki/Blockchain_(database)) for short. -## Importing it -`import "github.com/tendermint/go-crypto"` +[![version](https://img.shields.io/github/tag/tendermint/tendermint.svg)](https://github.com/tendermint/tendermint/releases/latest) +[![API Reference]( +https://camo.githubusercontent.com/915b7be44ada53c290eb157634330494ebe3e30a/68747470733a2f2f676f646f632e6f72672f6769746875622e636f6d2f676f6c616e672f6764646f3f7374617475732e737667 +)](https://godoc.org/github.com/tendermint/tendermint) +[![Go version](https://img.shields.io/badge/go-1.9.2-blue.svg)](https://github.com/moovweb/gvm) +[![riot.im](https://img.shields.io/badge/riot.im-JOIN%20CHAT-green.svg)](https://riot.im/app/#/room/#tendermint:matrix.org) +[![license](https://img.shields.io/github/license/tendermint/tendermint.svg)](https://github.com/tendermint/tendermint/blob/master/LICENSE) +[![](https://tokei.rs/b1/github/tendermint/tendermint?category=lines)](https://github.com/tendermint/tendermint) -## Binary encoding -For Binary encoding, please refer to the [Tendermint encoding spec](https://github.com/tendermint/tendermint/blob/master/docs/spec/blockchain/encoding.md). +Branch | Tests | Coverage +----------|-------|---------- +master | [![CircleCI](https://circleci.com/gh/tendermint/tendermint/tree/master.svg?style=shield)](https://circleci.com/gh/tendermint/tendermint/tree/master) | [![codecov](https://codecov.io/gh/tendermint/tendermint/branch/master/graph/badge.svg)](https://codecov.io/gh/tendermint/tendermint) +develop | [![CircleCI](https://circleci.com/gh/tendermint/tendermint/tree/develop.svg?style=shield)](https://circleci.com/gh/tendermint/tendermint/tree/develop) | [![codecov](https://codecov.io/gh/tendermint/tendermint/branch/develop/graph/badge.svg)](https://codecov.io/gh/tendermint/tendermint) -## JSON Encoding +Tendermint Core is Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine - written in any programming language - +and securely replicates it on many machines. -go-crypto `.Bytes()` uses Amino:binary encoding, but Amino:JSON is also supported. +For protocol details, see [the specification](/docs/spec). -```go -Example Amino:JSON encodings: +## A Note on Production Readiness -crypto.PrivKeyEd25519 - {"type":"954568A3288910","value":"EVkqJO/jIXp3rkASXfh9YnyToYXRXhBr6g9cQVxPFnQBP/5povV4HTjvsy530kybxKHwEi85iU8YL0qQhSYVoQ=="} -crypto.SignatureEd25519 - {"type":"6BF5903DA1DB28","value":"77sQNZOrf7ltExpf7AV1WaYPCHbyRLgjBsoWVzcduuLk+jIGmYk+s5R6Emm29p12HeiNAuhUJgdFGmwkpeGJCA=="} -crypto.PubKeyEd25519 - {"type":"AC26791624DE60","value":"AT/+aaL1eB0477Mud9JMm8Sh8BIvOYlPGC9KkIUmFaE="} -crypto.PrivKeySecp256k1 - {"type":"019E82E1B0F798","value":"zx4Pnh67N+g2V+5vZbQzEyRerX9c4ccNZOVzM9RvJ0Y="} -crypto.SignatureSecp256k1 - {"type":"6D1EA416E1FEE8","value":"MEUCIQCIg5TqS1l7I+MKTrSPIuUN2+4m5tA29dcauqn3NhEJ2wIgICaZ+lgRc5aOTVahU/XoLopXKn8BZcl0bnuYWLvohR8="} -crypto.PubKeySecp256k1 - {"type":"F8CCEAEB5AE980","value":"A8lPKJXcNl5VHt1FK8a244K9EJuS4WX1hFBnwisi0IJx"} -``` +While Tendermint is being used in production in private, permissioned +environments, we are still working actively to harden and audit it in preparation +for use in public blockchains, such as the [Cosmos Network](https://cosmos.network/). +We are also still making breaking changes to the protocol and the APIs. +Thus we tag the releases as *alpha software*. + +In any case, if you intend to run Tendermint in production, +please [contact us](https://riot.im/app/#/room/#tendermint:matrix.org) :) + +## Security + +To report a security vulnerability, see our [bug bounty +program](https://tendermint.com/security). + +For examples of the kinds of bugs we're looking for, see [SECURITY.md](SECURITY.md) + +## Minimum requirements + +Requirement|Notes +---|--- +Go version | Go1.9 or higher + +## Install + +See the [install instructions](/docs/install.rst) + +## Quick Start + +- [Single node](/docs/using-tendermint.rst) +- [Local cluster using docker-compose](/networks/local) +- [Remote cluster using terraform and ansible](/docs/terraform-and-ansible.rst) +- [Join the public testnet](https://cosmos.network/testnet) + +## Resources + +### Tendermint Core + +For details about the blockchain data structures and the p2p protocols, see the +the [Tendermint specification](/docs/spec). + +For details on using the software, [Read The Docs](https://tendermint.readthedocs.io/en/master/). +Additional information about some - and eventually all - of the sub-projects below, can be found at Read The Docs. + + +### Sub-projects + +* [ABCI](http://github.com/tendermint/abci), the Application Blockchain Interface +* [Go-Wire](http://github.com/tendermint/go-wire), a deterministic serialization library +* [Go-Crypto](http://github.com/tendermint/tendermint/crypto), an elliptic curve cryptography library +* [TmLibs](http://github.com/tendermint/tmlibs), an assortment of Go libraries used internally +* [IAVL](http://github.com/tendermint/iavl), Merkleized IAVL+ Tree implementation + +### Tools +* [Deployment, Benchmarking, and Monitoring](http://tendermint.readthedocs.io/projects/tools/en/develop/index.html#tendermint-tools) + +### Applications + +* [Cosmos SDK](http://github.com/cosmos/cosmos-sdk); a cryptocurrency application framework +* [Ethermint](http://github.com/tendermint/ethermint); Ethereum on Tendermint +* [Many more](https://tendermint.readthedocs.io/en/master/ecosystem.html#abci-applications) + +### More + +* [Master's Thesis on Tendermint](https://atrium.lib.uoguelph.ca/xmlui/handle/10214/9769) +* [Original Whitepaper](https://tendermint.com/static/docs/tendermint.pdf) +* [Tendermint Blog](https://blog.cosmos.network/tendermint/home) +* [Cosmos Blog](https://blog.cosmos.network) + +## Contributing + +Yay open source! Please see our [contributing guidelines](CONTRIBUTING.md). + +## Versioning + +### SemVer + +Tendermint uses [SemVer](http://semver.org/) to determine when and how the version changes. +According to SemVer, anything in the public API can change at any time before version 1.0.0 + +To provide some stability to Tendermint users in these 0.X.X days, the MINOR version is used +to signal breaking changes across a subset of the total public API. This subset includes all +interfaces exposed to other processes (cli, rpc, p2p, etc.), but does not +include the in-process Go APIs. + +That said, breaking changes in the following packages will be documented in the +CHANGELOG even if they don't lead to MINOR version bumps: + +- types +- rpc/client +- config +- node + +Exported objects in these packages that are not covered by the versioning scheme +are explicitly marked by `// UNSTABLE` in their go doc comment and may change at any time. +Functions, types, and values in any other package may also change at any time. + +### Upgrades + +In an effort to avoid accumulating technical debt prior to 1.0.0, +we do not guarantee that breaking changes (ie. bumps in the MINOR version) +will work with existing tendermint blockchains. In these cases you will +have to start a new blockchain, or write something custom to get the old +data into the new chain. + +However, any bump in the PATCH version should be compatible with existing histories +(if not please open an [issue](https://github.com/tendermint/tendermint/issues)). + +## Code of Conduct + +Please read, understand and adhere to our [code of conduct](CODE_OF_CONDUCT.md). diff --git a/ROADMAP.md b/ROADMAP.md new file mode 100644 index 000000000..60c284333 --- /dev/null +++ b/ROADMAP.md @@ -0,0 +1,23 @@ +# Roadmap + +BREAKING CHANGES: +- Better support for injecting randomness +- Upgrade consensus for more real-time use of evidence + +FEATURES: +- Use the chain as its own CA for nodes and validators +- Tooling to run multiple blockchains/apps, possibly in a single process +- State syncing (without transaction replay) +- Add authentication and rate-limitting to the RPC + +IMPROVEMENTS: +- Improve subtleties around mempool caching and logic +- Consensus optimizations: + - cache block parts for faster agreement after round changes + - propagate block parts rarest first +- Better testing of the consensus state machine (ie. use a DSL) +- Auto compiled serialization/deserialization code instead of go-wire reflection + +BUG FIXES: +- Graceful handling/recovery for apps that have non-determinism or fail to halt +- Graceful handling/recovery for violations of safety, or liveness diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 000000000..8b9793782 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,71 @@ +# Security + +As part of our [Coordinated Vulnerability Disclosure +Policy](https://tendermint.com/security), we operate a bug bounty. +See the policy for more details on submissions and rewards. + +Here is a list of examples of the kinds of bugs we're most interested in: + +## Specification + +- Conceptual flaws +- Ambiguities, inconsistencies, or incorrect statements +- Mis-match between specification and implementation of any component + +## Consensus + +Assuming less than 1/3 of the voting power is Byzantine (malicious): + +- Validation of blockchain data structures, including blocks, block parts, + votes, and so on +- Execution of blocks +- Validator set changes +- Proposer round robin +- Two nodes committing conflicting blocks for the same height (safety failure) +- A correct node signing conflicting votes +- A node halting (liveness failure) +- Syncing new and old nodes + +## Networking + +- Authenticated encryption (MITM, information leakage) +- Eclipse attacks +- Sybil attacks +- Long-range attacks +- Denial-of-Service + +## RPC + +- Write-access to anything besides sending transactions +- Denial-of-Service +- Leakage of secrets + +## Denial-of-Service + +Attacks may come through the P2P network or the RPC: + +- Amplification attacks +- Resource abuse +- Deadlocks and race conditions +- Panics and unhandled errors + +## Libraries + +- Serialization (Amino) +- Reading/Writing files and databases +- Logging and monitoring + +## Cryptography + +- Elliptic curves for validator signatures +- Hash algorithms and Merkle trees for block validation +- Authenticated encryption for P2P connections + +## Light Client + +- Validation of blockchain data structures +- Correctly validating an incorrect proof +- Incorrectly validating a correct proof +- Syncing validator set changes + + diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 000000000..095a6b061 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,58 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +Vagrant.configure("2") do |config| + config.vm.box = "ubuntu/xenial64" + + config.vm.provider "virtualbox" do |v| + v.memory = 4096 + v.cpus = 2 + end + + config.vm.provision "shell", inline: <<-SHELL + apt-get update + + # install base requirements + apt-get install -y --no-install-recommends wget curl jq zip \ + make shellcheck bsdmainutils psmisc + apt-get install -y language-pack-en + + # install docker + apt-get install -y --no-install-recommends apt-transport-https \ + ca-certificates curl software-properties-common + curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - + add-apt-repository \ + "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ + $(lsb_release -cs) \ + stable" + apt-get install -y docker-ce + usermod -a -G docker vagrant + + # install go + wget -q https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz + tar -xvf go1.10.1.linux-amd64.tar.gz + mv go /usr/local + rm -f go1.10.1.linux-amd64.tar.gz + + # cleanup + apt-get autoremove -y + + # set env variables + echo 'export GOROOT=/usr/local/go' >> /home/vagrant/.bash_profile + echo 'export GOPATH=/home/vagrant/go' >> /home/vagrant/.bash_profile + echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> /home/vagrant/.bash_profile + echo 'export LC_ALL=en_US.UTF-8' >> /home/vagrant/.bash_profile + echo 'cd go/src/github.com/tendermint/tendermint' >> /home/vagrant/.bash_profile + + mkdir -p /home/vagrant/go/bin + mkdir -p /home/vagrant/go/src/github.com/tendermint + ln -s /vagrant /home/vagrant/go/src/github.com/tendermint/tendermint + + chown -R vagrant:vagrant /home/vagrant/go + chown vagrant:vagrant /home/vagrant/.bash_profile + + # get all deps and tools, ready to install/test + su - vagrant -c 'source /home/vagrant/.bash_profile' + su - vagrant -c 'cd /home/vagrant/go/src/github.com/tendermint/tendermint && make get_tools && make get_vendor_deps' + SHELL +end diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 000000000..1ddf8fdd2 --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,13 @@ +version: 1.0.{build} +configuration: Release +platform: +- x64 +- x86 +clone_folder: c:\go\path\src\github.com\tendermint\tendermint +before_build: +- cmd: set GOPATH=%GOROOT%\path +- cmd: set PATH=%GOPATH%\bin;%PATH% +- cmd: make get_vendor_deps +build_script: +- cmd: make test +test: off diff --git a/benchmarks/atomic_test.go b/benchmarks/atomic_test.go new file mode 100644 index 000000000..5fe4832df --- /dev/null +++ b/benchmarks/atomic_test.go @@ -0,0 +1,29 @@ +package benchmarks + +import ( + "sync/atomic" + "testing" + "unsafe" +) + +func BenchmarkAtomicUintPtr(b *testing.B) { + b.StopTimer() + pointers := make([]uintptr, 1000) + b.Log(unsafe.Sizeof(pointers[0])) + b.StartTimer() + + for j := 0; j < b.N; j++ { + atomic.StoreUintptr(&pointers[j%1000], uintptr(j)) + } +} + +func BenchmarkAtomicPointer(b *testing.B) { + b.StopTimer() + pointers := make([]unsafe.Pointer, 1000) + b.Log(unsafe.Sizeof(pointers[0])) + b.StartTimer() + + for j := 0; j < b.N; j++ { + atomic.StorePointer(&pointers[j%1000], unsafe.Pointer(uintptr(j))) + } +} diff --git a/benchmarks/blockchain/.gitignore b/benchmarks/blockchain/.gitignore new file mode 100644 index 000000000..9e67bd47d --- /dev/null +++ b/benchmarks/blockchain/.gitignore @@ -0,0 +1,2 @@ +data + diff --git a/benchmarks/blockchain/localsync.sh b/benchmarks/blockchain/localsync.sh new file mode 100755 index 000000000..2dc3e49c0 --- /dev/null +++ b/benchmarks/blockchain/localsync.sh @@ -0,0 +1,80 @@ +#!/bin/bash + +DATA=$GOPATH/src/github.com/tendermint/tendermint/benchmarks/blockchain/data +if [ ! -d $DATA ]; then + echo "no data found, generating a chain... (this only has to happen once)" + + tendermint init --home $DATA + cp $DATA/config.toml $DATA/config2.toml + echo " + [consensus] + timeout_commit = 0 + " >> $DATA/config.toml + + echo "starting node" + tendermint node \ + --home $DATA \ + --proxy_app kvstore \ + --p2p.laddr tcp://127.0.0.1:56656 \ + --rpc.laddr tcp://127.0.0.1:56657 \ + --log_level error & + + echo "making blocks for 60s" + sleep 60 + + mv $DATA/config2.toml $DATA/config.toml + + kill %1 + + echo "done generating chain." +fi + +# validator node +HOME1=$TMPDIR$RANDOM$RANDOM +cp -R $DATA $HOME1 +echo "starting validator node" +tendermint node \ + --home $HOME1 \ + --proxy_app kvstore \ + --p2p.laddr tcp://127.0.0.1:56656 \ + --rpc.laddr tcp://127.0.0.1:56657 \ + --log_level error & +sleep 1 + +# downloader node +HOME2=$TMPDIR$RANDOM$RANDOM +tendermint init --home $HOME2 +cp $HOME1/genesis.json $HOME2 +printf "starting downloader node" +tendermint node \ + --home $HOME2 \ + --proxy_app kvstore \ + --p2p.laddr tcp://127.0.0.1:56666 \ + --rpc.laddr tcp://127.0.0.1:56667 \ + --p2p.persistent_peers 127.0.0.1:56656 \ + --log_level error & + +# wait for node to start up so we only count time where we are actually syncing +sleep 0.5 +while curl localhost:56667/status 2> /dev/null | grep "\"latest_block_height\": 0," > /dev/null +do + printf '.' + sleep 0.2 +done +echo + +echo "syncing blockchain for 10s" +for i in {1..10} +do + sleep 1 + HEIGHT="$(curl localhost:56667/status 2> /dev/null \ + | grep 'latest_block_height' \ + | grep -o ' [0-9]*' \ + | xargs)" + let 'RATE = HEIGHT / i' + echo "height: $HEIGHT, blocks/sec: $RATE" +done + +kill %1 +kill %2 +rm -rf $HOME1 $HOME2 diff --git a/benchmarks/chan_test.go b/benchmarks/chan_test.go new file mode 100644 index 000000000..78b70c9be --- /dev/null +++ b/benchmarks/chan_test.go @@ -0,0 +1,19 @@ +package benchmarks + +import ( + "testing" +) + +func BenchmarkChanMakeClose(b *testing.B) { + b.StopTimer() + b.StartTimer() + + for j := 0; j < b.N; j++ { + foo := make(chan struct{}) + close(foo) + something, ok := <-foo + if ok { + b.Error(something, ok) + } + } +} diff --git a/benchmarks/codec_test.go b/benchmarks/codec_test.go new file mode 100644 index 000000000..ee61cc9a4 --- /dev/null +++ b/benchmarks/codec_test.go @@ -0,0 +1,129 @@ +package benchmarks + +import ( + "testing" + "time" + + "github.com/tendermint/go-amino" + + "github.com/tendermint/tendermint/crypto" + proto "github.com/tendermint/tendermint/benchmarks/proto" + "github.com/tendermint/tendermint/p2p" + ctypes "github.com/tendermint/tendermint/rpc/core/types" +) + +func BenchmarkEncodeStatusWire(b *testing.B) { + b.StopTimer() + cdc := amino.NewCodec() + ctypes.RegisterAmino(cdc) + nodeKey := p2p.NodeKey{PrivKey: crypto.GenPrivKeyEd25519()} + status := &ctypes.ResultStatus{ + NodeInfo: p2p.NodeInfo{ + ID: nodeKey.ID(), + Moniker: "SOMENAME", + Network: "SOMENAME", + ListenAddr: "SOMEADDR", + Version: "SOMEVER", + Other: []string{"SOMESTRING", "OTHERSTRING"}, + }, + SyncInfo: ctypes.SyncInfo{ + LatestBlockHash: []byte("SOMEBYTES"), + LatestBlockHeight: 123, + LatestBlockTime: time.Unix(0, 1234), + }, + ValidatorInfo: ctypes.ValidatorInfo{ + PubKey: nodeKey.PubKey(), + }, + } + b.StartTimer() + + counter := 0 + for i := 0; i < b.N; i++ { + jsonBytes, err := cdc.MarshalJSON(status) + if err != nil { + panic(err) + } + counter += len(jsonBytes) + } + +} + +func BenchmarkEncodeNodeInfoWire(b *testing.B) { + b.StopTimer() + cdc := amino.NewCodec() + ctypes.RegisterAmino(cdc) + nodeKey := p2p.NodeKey{PrivKey: crypto.GenPrivKeyEd25519()} + nodeInfo := p2p.NodeInfo{ + ID: nodeKey.ID(), + Moniker: "SOMENAME", + Network: "SOMENAME", + ListenAddr: "SOMEADDR", + Version: "SOMEVER", + Other: []string{"SOMESTRING", "OTHERSTRING"}, + } + b.StartTimer() + + counter := 0 + for i := 0; i < b.N; i++ { + jsonBytes, err := cdc.MarshalJSON(nodeInfo) + if err != nil { + panic(err) + } + counter += len(jsonBytes) + } +} + +func BenchmarkEncodeNodeInfoBinary(b *testing.B) { + b.StopTimer() + cdc := amino.NewCodec() + ctypes.RegisterAmino(cdc) + nodeKey := p2p.NodeKey{PrivKey: crypto.GenPrivKeyEd25519()} + nodeInfo := p2p.NodeInfo{ + ID: nodeKey.ID(), + Moniker: "SOMENAME", + Network: "SOMENAME", + ListenAddr: "SOMEADDR", + Version: "SOMEVER", + Other: []string{"SOMESTRING", "OTHERSTRING"}, + } + b.StartTimer() + + counter := 0 + for i := 0; i < b.N; i++ { + jsonBytes := cdc.MustMarshalBinaryBare(nodeInfo) + counter += len(jsonBytes) + } + +} + +func BenchmarkEncodeNodeInfoProto(b *testing.B) { + b.StopTimer() + nodeKey := p2p.NodeKey{PrivKey: crypto.GenPrivKeyEd25519()} + nodeID := string(nodeKey.ID()) + someName := "SOMENAME" + someAddr := "SOMEADDR" + someVer := "SOMEVER" + someString := "SOMESTRING" + otherString := "OTHERSTRING" + nodeInfo := proto.NodeInfo{ + Id: &proto.ID{Id: &nodeID}, + Moniker: &someName, + Network: &someName, + ListenAddr: &someAddr, + Version: &someVer, + Other: []string{someString, otherString}, + } + b.StartTimer() + + counter := 0 + for i := 0; i < b.N; i++ { + bytes, err := nodeInfo.Marshal() + if err != nil { + b.Fatal(err) + return + } + //jsonBytes := wire.JSONBytes(nodeInfo) + counter += len(bytes) + } + +} diff --git a/benchmarks/empty.go b/benchmarks/empty.go new file mode 100644 index 000000000..20f08f14b --- /dev/null +++ b/benchmarks/empty.go @@ -0,0 +1 @@ +package benchmarks diff --git a/benchmarks/map_test.go b/benchmarks/map_test.go new file mode 100644 index 000000000..2d9789026 --- /dev/null +++ b/benchmarks/map_test.go @@ -0,0 +1,35 @@ +package benchmarks + +import ( + "testing" + + cmn "github.com/tendermint/tmlibs/common" +) + +func BenchmarkSomething(b *testing.B) { + b.StopTimer() + numItems := 100000 + numChecks := 100000 + keys := make([]string, numItems) + for i := 0; i < numItems; i++ { + keys[i] = cmn.RandStr(100) + } + txs := make([]string, numChecks) + for i := 0; i < numChecks; i++ { + txs[i] = cmn.RandStr(100) + } + b.StartTimer() + + counter := 0 + for j := 0; j < b.N; j++ { + foo := make(map[string]string) + for _, key := range keys { + foo[key] = key + } + for _, tx := range txs { + if _, ok := foo[tx]; ok { + counter++ + } + } + } +} diff --git a/benchmarks/os_test.go b/benchmarks/os_test.go new file mode 100644 index 000000000..dfadc3128 --- /dev/null +++ b/benchmarks/os_test.go @@ -0,0 +1,33 @@ +package benchmarks + +import ( + "os" + "testing" + + cmn "github.com/tendermint/tmlibs/common" +) + +func BenchmarkFileWrite(b *testing.B) { + b.StopTimer() + file, err := os.OpenFile("benchmark_file_write.out", + os.O_RDWR|os.O_CREATE|os.O_APPEND, 0600) + if err != nil { + b.Error(err) + } + testString := cmn.RandStr(200) + "\n" + b.StartTimer() + + for i := 0; i < b.N; i++ { + _, err := file.Write([]byte(testString)) + if err != nil { + b.Error(err) + } + } + + if err := file.Close(); err != nil { + b.Error(err) + } + if err := os.Remove("benchmark_file_write.out"); err != nil { + b.Error(err) + } +} diff --git a/benchmarks/proto/README b/benchmarks/proto/README new file mode 100644 index 000000000..87ece2576 --- /dev/null +++ b/benchmarks/proto/README @@ -0,0 +1,2 @@ +Doing some protobuf tests here. +Using gogoprotobuf. diff --git a/benchmarks/proto/test.pb.go b/benchmarks/proto/test.pb.go new file mode 100644 index 000000000..d430eeb08 --- /dev/null +++ b/benchmarks/proto/test.pb.go @@ -0,0 +1,1456 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: test.proto + +/* + Package test is a generated protocol buffer package. + + It is generated from these files: + test.proto + + It has these top-level messages: + ResultStatus + NodeInfo + ID + PubKey + PubKeyEd25519 +*/ +package test + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +type ResultStatus struct { + NodeInfo *NodeInfo `protobuf:"bytes,1,opt,name=nodeInfo" json:"nodeInfo,omitempty"` + PubKey *PubKey `protobuf:"bytes,2,req,name=pubKey" json:"pubKey,omitempty"` + LatestBlockHash []byte `protobuf:"bytes,3,req,name=latestBlockHash" json:"latestBlockHash,omitempty"` + LatestBlockHeight *int64 `protobuf:"varint,4,req,name=latestBlockHeight" json:"latestBlockHeight,omitempty"` + LatestBlocktime *int64 `protobuf:"varint,5,req,name=latestBlocktime" json:"latestBlocktime,omitempty"` + XXX_unrecognized []byte `json:"-"` +} + +func (m *ResultStatus) Reset() { *m = ResultStatus{} } +func (m *ResultStatus) String() string { return proto.CompactTextString(m) } +func (*ResultStatus) ProtoMessage() {} +func (*ResultStatus) Descriptor() ([]byte, []int) { return fileDescriptorTest, []int{0} } + +func (m *ResultStatus) GetNodeInfo() *NodeInfo { + if m != nil { + return m.NodeInfo + } + return nil +} + +func (m *ResultStatus) GetPubKey() *PubKey { + if m != nil { + return m.PubKey + } + return nil +} + +func (m *ResultStatus) GetLatestBlockHash() []byte { + if m != nil { + return m.LatestBlockHash + } + return nil +} + +func (m *ResultStatus) GetLatestBlockHeight() int64 { + if m != nil && m.LatestBlockHeight != nil { + return *m.LatestBlockHeight + } + return 0 +} + +func (m *ResultStatus) GetLatestBlocktime() int64 { + if m != nil && m.LatestBlocktime != nil { + return *m.LatestBlocktime + } + return 0 +} + +type NodeInfo struct { + Id *ID `protobuf:"bytes,1,req,name=id" json:"id,omitempty"` + Moniker *string `protobuf:"bytes,2,req,name=moniker" json:"moniker,omitempty"` + Network *string `protobuf:"bytes,3,req,name=network" json:"network,omitempty"` + RemoteAddr *string `protobuf:"bytes,4,req,name=remoteAddr" json:"remoteAddr,omitempty"` + ListenAddr *string `protobuf:"bytes,5,req,name=listenAddr" json:"listenAddr,omitempty"` + Version *string `protobuf:"bytes,6,req,name=version" json:"version,omitempty"` + Other []string `protobuf:"bytes,7,rep,name=other" json:"other,omitempty"` + XXX_unrecognized []byte `json:"-"` +} + +func (m *NodeInfo) Reset() { *m = NodeInfo{} } +func (m *NodeInfo) String() string { return proto.CompactTextString(m) } +func (*NodeInfo) ProtoMessage() {} +func (*NodeInfo) Descriptor() ([]byte, []int) { return fileDescriptorTest, []int{1} } + +func (m *NodeInfo) GetId() *ID { + if m != nil { + return m.Id + } + return nil +} + +func (m *NodeInfo) GetMoniker() string { + if m != nil && m.Moniker != nil { + return *m.Moniker + } + return "" +} + +func (m *NodeInfo) GetNetwork() string { + if m != nil && m.Network != nil { + return *m.Network + } + return "" +} + +func (m *NodeInfo) GetRemoteAddr() string { + if m != nil && m.RemoteAddr != nil { + return *m.RemoteAddr + } + return "" +} + +func (m *NodeInfo) GetListenAddr() string { + if m != nil && m.ListenAddr != nil { + return *m.ListenAddr + } + return "" +} + +func (m *NodeInfo) GetVersion() string { + if m != nil && m.Version != nil { + return *m.Version + } + return "" +} + +func (m *NodeInfo) GetOther() []string { + if m != nil { + return m.Other + } + return nil +} + +type ID struct { + Id *string `protobuf:"bytes,1,req,name=id" json:"id,omitempty"` + XXX_unrecognized []byte `json:"-"` +} + +func (m *ID) Reset() { *m = ID{} } +func (m *ID) String() string { return proto.CompactTextString(m) } +func (*ID) ProtoMessage() {} +func (*ID) Descriptor() ([]byte, []int) { return fileDescriptorTest, []int{2} } + +func (m *ID) GetId() string { + if m != nil && m.Id != nil { + return *m.Id + } + return "" +} + +type PubKey struct { + Ed25519 *PubKeyEd25519 `protobuf:"bytes,1,opt,name=ed25519" json:"ed25519,omitempty"` + XXX_unrecognized []byte `json:"-"` +} + +func (m *PubKey) Reset() { *m = PubKey{} } +func (m *PubKey) String() string { return proto.CompactTextString(m) } +func (*PubKey) ProtoMessage() {} +func (*PubKey) Descriptor() ([]byte, []int) { return fileDescriptorTest, []int{3} } + +func (m *PubKey) GetEd25519() *PubKeyEd25519 { + if m != nil { + return m.Ed25519 + } + return nil +} + +type PubKeyEd25519 struct { + Bytes []byte `protobuf:"bytes,1,req,name=bytes" json:"bytes,omitempty"` + XXX_unrecognized []byte `json:"-"` +} + +func (m *PubKeyEd25519) Reset() { *m = PubKeyEd25519{} } +func (m *PubKeyEd25519) String() string { return proto.CompactTextString(m) } +func (*PubKeyEd25519) ProtoMessage() {} +func (*PubKeyEd25519) Descriptor() ([]byte, []int) { return fileDescriptorTest, []int{4} } + +func (m *PubKeyEd25519) GetBytes() []byte { + if m != nil { + return m.Bytes + } + return nil +} + +func init() { + proto.RegisterType((*ResultStatus)(nil), "ResultStatus") + proto.RegisterType((*NodeInfo)(nil), "NodeInfo") + proto.RegisterType((*ID)(nil), "ID") + proto.RegisterType((*PubKey)(nil), "PubKey") + proto.RegisterType((*PubKeyEd25519)(nil), "PubKeyEd25519") +} +func (m *ResultStatus) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ResultStatus) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.NodeInfo != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintTest(dAtA, i, uint64(m.NodeInfo.Size())) + n1, err := m.NodeInfo.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + } + if m.PubKey == nil { + return 0, proto.NewRequiredNotSetError("pubKey") + } else { + dAtA[i] = 0x12 + i++ + i = encodeVarintTest(dAtA, i, uint64(m.PubKey.Size())) + n2, err := m.PubKey.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + } + if m.LatestBlockHash == nil { + return 0, proto.NewRequiredNotSetError("latestBlockHash") + } else { + dAtA[i] = 0x1a + i++ + i = encodeVarintTest(dAtA, i, uint64(len(m.LatestBlockHash))) + i += copy(dAtA[i:], m.LatestBlockHash) + } + if m.LatestBlockHeight == nil { + return 0, proto.NewRequiredNotSetError("latestBlockHeight") + } else { + dAtA[i] = 0x20 + i++ + i = encodeVarintTest(dAtA, i, uint64(*m.LatestBlockHeight)) + } + if m.LatestBlocktime == nil { + return 0, proto.NewRequiredNotSetError("latestBlocktime") + } else { + dAtA[i] = 0x28 + i++ + i = encodeVarintTest(dAtA, i, uint64(*m.LatestBlocktime)) + } + if m.XXX_unrecognized != nil { + i += copy(dAtA[i:], m.XXX_unrecognized) + } + return i, nil +} + +func (m *NodeInfo) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NodeInfo) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Id == nil { + return 0, proto.NewRequiredNotSetError("id") + } else { + dAtA[i] = 0xa + i++ + i = encodeVarintTest(dAtA, i, uint64(m.Id.Size())) + n3, err := m.Id.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + } + if m.Moniker == nil { + return 0, proto.NewRequiredNotSetError("moniker") + } else { + dAtA[i] = 0x12 + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.Moniker))) + i += copy(dAtA[i:], *m.Moniker) + } + if m.Network == nil { + return 0, proto.NewRequiredNotSetError("network") + } else { + dAtA[i] = 0x1a + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.Network))) + i += copy(dAtA[i:], *m.Network) + } + if m.RemoteAddr == nil { + return 0, proto.NewRequiredNotSetError("remoteAddr") + } else { + dAtA[i] = 0x22 + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.RemoteAddr))) + i += copy(dAtA[i:], *m.RemoteAddr) + } + if m.ListenAddr == nil { + return 0, proto.NewRequiredNotSetError("listenAddr") + } else { + dAtA[i] = 0x2a + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.ListenAddr))) + i += copy(dAtA[i:], *m.ListenAddr) + } + if m.Version == nil { + return 0, proto.NewRequiredNotSetError("version") + } else { + dAtA[i] = 0x32 + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.Version))) + i += copy(dAtA[i:], *m.Version) + } + if len(m.Other) > 0 { + for _, s := range m.Other { + dAtA[i] = 0x3a + i++ + l = len(s) + for l >= 1<<7 { + dAtA[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + dAtA[i] = uint8(l) + i++ + i += copy(dAtA[i:], s) + } + } + if m.XXX_unrecognized != nil { + i += copy(dAtA[i:], m.XXX_unrecognized) + } + return i, nil +} + +func (m *ID) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ID) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Id == nil { + return 0, proto.NewRequiredNotSetError("id") + } else { + dAtA[i] = 0xa + i++ + i = encodeVarintTest(dAtA, i, uint64(len(*m.Id))) + i += copy(dAtA[i:], *m.Id) + } + if m.XXX_unrecognized != nil { + i += copy(dAtA[i:], m.XXX_unrecognized) + } + return i, nil +} + +func (m *PubKey) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PubKey) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Ed25519 != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintTest(dAtA, i, uint64(m.Ed25519.Size())) + n4, err := m.Ed25519.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + } + if m.XXX_unrecognized != nil { + i += copy(dAtA[i:], m.XXX_unrecognized) + } + return i, nil +} + +func (m *PubKeyEd25519) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PubKeyEd25519) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Bytes == nil { + return 0, proto.NewRequiredNotSetError("bytes") + } else { + dAtA[i] = 0xa + i++ + i = encodeVarintTest(dAtA, i, uint64(len(m.Bytes))) + i += copy(dAtA[i:], m.Bytes) + } + if m.XXX_unrecognized != nil { + i += copy(dAtA[i:], m.XXX_unrecognized) + } + return i, nil +} + +func encodeVarintTest(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *ResultStatus) Size() (n int) { + var l int + _ = l + if m.NodeInfo != nil { + l = m.NodeInfo.Size() + n += 1 + l + sovTest(uint64(l)) + } + if m.PubKey != nil { + l = m.PubKey.Size() + n += 1 + l + sovTest(uint64(l)) + } + if m.LatestBlockHash != nil { + l = len(m.LatestBlockHash) + n += 1 + l + sovTest(uint64(l)) + } + if m.LatestBlockHeight != nil { + n += 1 + sovTest(uint64(*m.LatestBlockHeight)) + } + if m.LatestBlocktime != nil { + n += 1 + sovTest(uint64(*m.LatestBlocktime)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *NodeInfo) Size() (n int) { + var l int + _ = l + if m.Id != nil { + l = m.Id.Size() + n += 1 + l + sovTest(uint64(l)) + } + if m.Moniker != nil { + l = len(*m.Moniker) + n += 1 + l + sovTest(uint64(l)) + } + if m.Network != nil { + l = len(*m.Network) + n += 1 + l + sovTest(uint64(l)) + } + if m.RemoteAddr != nil { + l = len(*m.RemoteAddr) + n += 1 + l + sovTest(uint64(l)) + } + if m.ListenAddr != nil { + l = len(*m.ListenAddr) + n += 1 + l + sovTest(uint64(l)) + } + if m.Version != nil { + l = len(*m.Version) + n += 1 + l + sovTest(uint64(l)) + } + if len(m.Other) > 0 { + for _, s := range m.Other { + l = len(s) + n += 1 + l + sovTest(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *ID) Size() (n int) { + var l int + _ = l + if m.Id != nil { + l = len(*m.Id) + n += 1 + l + sovTest(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *PubKey) Size() (n int) { + var l int + _ = l + if m.Ed25519 != nil { + l = m.Ed25519.Size() + n += 1 + l + sovTest(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *PubKeyEd25519) Size() (n int) { + var l int + _ = l + if m.Bytes != nil { + l = len(m.Bytes) + n += 1 + l + sovTest(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func sovTest(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} + +func (m *ResultStatus) Unmarshal(dAtA []byte) error { + var hasFields [1]uint64 + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ResultStatus: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ResultStatus: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NodeInfo", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NodeInfo == nil { + m.NodeInfo = &NodeInfo{} + } + if err := m.NodeInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PubKey", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PubKey == nil { + m.PubKey = &PubKey{} + } + if err := m.PubKey.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + hasFields[0] |= uint64(0x00000001) + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LatestBlockHash", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + byteLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.LatestBlockHash = append(m.LatestBlockHash[:0], dAtA[iNdEx:postIndex]...) + if m.LatestBlockHash == nil { + m.LatestBlockHash = []byte{} + } + iNdEx = postIndex + hasFields[0] |= uint64(0x00000002) + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field LatestBlockHeight", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.LatestBlockHeight = &v + hasFields[0] |= uint64(0x00000004) + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field LatestBlocktime", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.LatestBlocktime = &v + hasFields[0] |= uint64(0x00000008) + default: + iNdEx = preIndex + skippy, err := skipTest(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTest + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + if hasFields[0]&uint64(0x00000001) == 0 { + return proto.NewRequiredNotSetError("pubKey") + } + if hasFields[0]&uint64(0x00000002) == 0 { + return proto.NewRequiredNotSetError("latestBlockHash") + } + if hasFields[0]&uint64(0x00000004) == 0 { + return proto.NewRequiredNotSetError("latestBlockHeight") + } + if hasFields[0]&uint64(0x00000008) == 0 { + return proto.NewRequiredNotSetError("latestBlocktime") + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NodeInfo) Unmarshal(dAtA []byte) error { + var hasFields [1]uint64 + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NodeInfo: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NodeInfo: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Id == nil { + m.Id = &ID{} + } + if err := m.Id.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + hasFields[0] |= uint64(0x00000001) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Moniker", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.Moniker = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000002) + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Network", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.Network = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000004) + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RemoteAddr", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.RemoteAddr = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000008) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListenAddr", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.ListenAddr = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000010) + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.Version = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000020) + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Other", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Other = append(m.Other, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTest(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTest + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + if hasFields[0]&uint64(0x00000001) == 0 { + return proto.NewRequiredNotSetError("id") + } + if hasFields[0]&uint64(0x00000002) == 0 { + return proto.NewRequiredNotSetError("moniker") + } + if hasFields[0]&uint64(0x00000004) == 0 { + return proto.NewRequiredNotSetError("network") + } + if hasFields[0]&uint64(0x00000008) == 0 { + return proto.NewRequiredNotSetError("remoteAddr") + } + if hasFields[0]&uint64(0x00000010) == 0 { + return proto.NewRequiredNotSetError("listenAddr") + } + if hasFields[0]&uint64(0x00000020) == 0 { + return proto.NewRequiredNotSetError("version") + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ID) Unmarshal(dAtA []byte) error { + var hasFields [1]uint64 + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ID: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ID: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + s := string(dAtA[iNdEx:postIndex]) + m.Id = &s + iNdEx = postIndex + hasFields[0] |= uint64(0x00000001) + default: + iNdEx = preIndex + skippy, err := skipTest(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTest + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + if hasFields[0]&uint64(0x00000001) == 0 { + return proto.NewRequiredNotSetError("id") + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PubKey) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PubKey: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PubKey: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ed25519", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Ed25519 == nil { + m.Ed25519 = &PubKeyEd25519{} + } + if err := m.Ed25519.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTest(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTest + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PubKeyEd25519) Unmarshal(dAtA []byte) error { + var hasFields [1]uint64 + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PubKeyEd25519: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PubKeyEd25519: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Bytes", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTest + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthTest + } + postIndex := iNdEx + byteLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Bytes = append(m.Bytes[:0], dAtA[iNdEx:postIndex]...) + if m.Bytes == nil { + m.Bytes = []byte{} + } + iNdEx = postIndex + hasFields[0] |= uint64(0x00000001) + default: + iNdEx = preIndex + skippy, err := skipTest(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthTest + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + if hasFields[0]&uint64(0x00000001) == 0 { + return proto.NewRequiredNotSetError("bytes") + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipTest(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTest + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTest + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTest + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthTest + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowTest + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipTest(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthTest = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowTest = fmt.Errorf("proto: integer overflow") +) + +func init() { proto.RegisterFile("test.proto", fileDescriptorTest) } + +var fileDescriptorTest = []byte{ + // 342 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x91, 0x41, 0x4b, 0xf3, 0x30, + 0x1c, 0xc6, 0x49, 0xfb, 0x6e, 0x5d, 0xff, 0xeb, 0x3b, 0x31, 0xee, 0x90, 0x53, 0x2d, 0x85, 0x41, + 0x0f, 0x52, 0xb0, 0xb0, 0x83, 0x47, 0xc7, 0x04, 0x87, 0x20, 0x23, 0x7e, 0x82, 0xcd, 0xfe, 0x75, + 0x65, 0x5d, 0x33, 0x92, 0x4c, 0xd9, 0xe7, 0xf3, 0xe2, 0xd1, 0xa3, 0x47, 0xd9, 0x27, 0x91, 0xa6, + 0xed, 0x9c, 0xf3, 0xf8, 0xfc, 0x7e, 0xe5, 0xc9, 0xd3, 0x04, 0x40, 0xa3, 0xd2, 0xf1, 0x5a, 0x0a, + 0x2d, 0xc2, 0x4f, 0x02, 0x1e, 0x47, 0xb5, 0xc9, 0xf5, 0x83, 0x9e, 0xe9, 0x8d, 0xa2, 0x03, 0xe8, + 0x14, 0x22, 0xc5, 0x49, 0xf1, 0x24, 0x18, 0x09, 0x48, 0xd4, 0x4d, 0xdc, 0xf8, 0xbe, 0x06, 0x7c, + 0xaf, 0xe8, 0x39, 0xb4, 0xd7, 0x9b, 0xf9, 0x1d, 0x6e, 0x99, 0x15, 0x58, 0x51, 0x37, 0x71, 0xe2, + 0xa9, 0x89, 0xbc, 0xc6, 0x34, 0x82, 0x93, 0x7c, 0x56, 0x1e, 0x34, 0xca, 0xc5, 0xe3, 0xf2, 0x76, + 0xa6, 0x16, 0xcc, 0x0e, 0xac, 0xc8, 0xe3, 0xc7, 0x98, 0x5e, 0xc0, 0xe9, 0x21, 0xc2, 0xec, 0x79, + 0xa1, 0xd9, 0xbf, 0xc0, 0x8a, 0x6c, 0xfe, 0x57, 0x1c, 0xf5, 0xea, 0x6c, 0x85, 0xac, 0x65, 0xbe, + 0x3d, 0xc6, 0xe1, 0x1b, 0x81, 0x4e, 0xb3, 0x9c, 0x9e, 0x81, 0x95, 0xa5, 0x8c, 0x98, 0xad, 0x76, + 0x3c, 0x19, 0x73, 0x2b, 0x4b, 0x29, 0x03, 0x67, 0x25, 0x8a, 0x6c, 0x89, 0xd2, 0xfc, 0x85, 0xcb, + 0x9b, 0x58, 0x9a, 0x02, 0xf5, 0xab, 0x90, 0x4b, 0xb3, 0xda, 0xe5, 0x4d, 0xa4, 0x3e, 0x80, 0xc4, + 0x95, 0xd0, 0x78, 0x9d, 0xa6, 0xd2, 0xcc, 0x74, 0xf9, 0x01, 0x29, 0x7d, 0x9e, 0x29, 0x8d, 0x85, + 0xf1, 0xad, 0xca, 0xff, 0x90, 0xb2, 0xf9, 0x05, 0xa5, 0xca, 0x44, 0xc1, 0xda, 0x55, 0x73, 0x1d, + 0x69, 0x1f, 0x5a, 0x42, 0x2f, 0x50, 0x32, 0x27, 0xb0, 0x23, 0x97, 0x57, 0x21, 0xec, 0x83, 0x35, + 0x19, 0xd3, 0xde, 0x7e, 0xbe, 0x5b, 0x2e, 0x0f, 0x13, 0x68, 0x4f, 0x9b, 0x7b, 0x76, 0x30, 0x4d, + 0x86, 0xc3, 0xcb, 0xab, 0xfa, 0xb9, 0x7a, 0xf5, 0x4b, 0xdc, 0x54, 0x94, 0x37, 0x3a, 0x1c, 0xc0, + 0xff, 0x5f, 0xa6, 0x3c, 0x70, 0xbe, 0xd5, 0xa8, 0x4c, 0xaf, 0xc7, 0xab, 0x30, 0xf2, 0xde, 0x77, + 0x3e, 0xf9, 0xd8, 0xf9, 0xe4, 0x6b, 0xe7, 0x93, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb1, 0xee, + 0x6b, 0xdd, 0x2c, 0x02, 0x00, 0x00, +} diff --git a/benchmarks/proto/test.proto b/benchmarks/proto/test.proto new file mode 100644 index 000000000..6d770d98a --- /dev/null +++ b/benchmarks/proto/test.proto @@ -0,0 +1,29 @@ +message ResultStatus { + optional NodeInfo nodeInfo = 1; + required PubKey pubKey = 2; + required bytes latestBlockHash = 3; + required int64 latestBlockHeight = 4; + required int64 latestBlocktime = 5; +} + +message NodeInfo { + required ID id = 1; + required string moniker = 2; + required string network = 3; + required string remoteAddr = 4; + required string listenAddr = 5; + required string version = 6; + repeated string other = 7; +} + +message ID { + required string id = 1; +} + +message PubKey { + optional PubKeyEd25519 ed25519 = 1; +} + +message PubKeyEd25519 { + required bytes bytes = 1; +} diff --git a/benchmarks/simu/counter.go b/benchmarks/simu/counter.go new file mode 100644 index 000000000..dd00408cb --- /dev/null +++ b/benchmarks/simu/counter.go @@ -0,0 +1,47 @@ +package main + +import ( + "context" + "encoding/binary" + "fmt" + "time" + + rpcclient "github.com/tendermint/tendermint/rpc/lib/client" + cmn "github.com/tendermint/tmlibs/common" +) + +func main() { + wsc := rpcclient.NewWSClient("127.0.0.1:26657", "/websocket") + err := wsc.Start() + if err != nil { + cmn.Exit(err.Error()) + } + defer wsc.Stop() + + // Read a bunch of responses + go func() { + for { + _, ok := <-wsc.ResponsesCh + if !ok { + break + } + //fmt.Println("Received response", string(wire.JSONBytes(res))) + } + }() + + // Make a bunch of requests + buf := make([]byte, 32) + for i := 0; ; i++ { + binary.BigEndian.PutUint64(buf, uint64(i)) + //txBytes := hex.EncodeToString(buf[:n]) + fmt.Print(".") + err = wsc.Call(context.TODO(), "broadcast_tx", map[string]interface{}{"tx": buf[:8]}) + if err != nil { + cmn.Exit(err.Error()) + } + if i%1000 == 0 { + fmt.Println(i) + } + time.Sleep(time.Microsecond * 1000) + } +} diff --git a/blockchain/pool.go b/blockchain/pool.go new file mode 100644 index 000000000..8b964e81a --- /dev/null +++ b/blockchain/pool.go @@ -0,0 +1,587 @@ +package blockchain + +import ( + "errors" + "fmt" + "math" + "sync" + "sync/atomic" + "time" + + cmn "github.com/tendermint/tmlibs/common" + flow "github.com/tendermint/tmlibs/flowrate" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/types" +) + +/* +eg, L = latency = 0.1s + P = num peers = 10 + FN = num full nodes + BS = 1kB block size + CB = 1 Mbit/s = 128 kB/s + CB/P = 12.8 kB + B/S = CB/P/BS = 12.8 blocks/s + + 12.8 * 0.1 = 1.28 blocks on conn +*/ + +const ( + requestIntervalMS = 100 + maxTotalRequesters = 1000 + maxPendingRequests = maxTotalRequesters + maxPendingRequestsPerPeer = 50 + + // Minimum recv rate to ensure we're receiving blocks from a peer fast + // enough. If a peer is not sending us data at at least that rate, we + // consider them to have timedout and we disconnect. + // + // Assuming a DSL connection (not a good choice) 128 Kbps (upload) ~ 15 KB/s, + // sending data across atlantic ~ 7.5 KB/s. + minRecvRate = 7680 + + // Maximum difference between current and new block's height. + maxDiffBetweenCurrentAndReceivedBlockHeight = 100 +) + +var peerTimeout = 15 * time.Second // not const so we can override with tests + +/* + Peers self report their heights when we join the block pool. + Starting from our latest pool.height, we request blocks + in sequence from peers that reported higher heights than ours. + Every so often we ask peers what height they're on so we can keep going. + + Requests are continuously made for blocks of higher heights until + the limit is reached. If most of the requests have no available peers, and we + are not at peer limits, we can probably switch to consensus reactor +*/ + +type BlockPool struct { + cmn.BaseService + startTime time.Time + + mtx sync.Mutex + // block requests + requesters map[int64]*bpRequester + height int64 // the lowest key in requesters. + // peers + peers map[p2p.ID]*bpPeer + maxPeerHeight int64 + + // atomic + numPending int32 // number of requests pending assignment or block response + + requestsCh chan<- BlockRequest + errorsCh chan<- peerError +} + +func NewBlockPool(start int64, requestsCh chan<- BlockRequest, errorsCh chan<- peerError) *BlockPool { + bp := &BlockPool{ + peers: make(map[p2p.ID]*bpPeer), + + requesters: make(map[int64]*bpRequester), + height: start, + numPending: 0, + + requestsCh: requestsCh, + errorsCh: errorsCh, + } + bp.BaseService = *cmn.NewBaseService(nil, "BlockPool", bp) + return bp +} + +func (pool *BlockPool) OnStart() error { + go pool.makeRequestersRoutine() + pool.startTime = time.Now() + return nil +} + +func (pool *BlockPool) OnStop() {} + +// Run spawns requesters as needed. +func (pool *BlockPool) makeRequestersRoutine() { + for { + if !pool.IsRunning() { + break + } + + _, numPending, lenRequesters := pool.GetStatus() + if numPending >= maxPendingRequests { + // sleep for a bit. + time.Sleep(requestIntervalMS * time.Millisecond) + // check for timed out peers + pool.removeTimedoutPeers() + } else if lenRequesters >= maxTotalRequesters { + // sleep for a bit. + time.Sleep(requestIntervalMS * time.Millisecond) + // check for timed out peers + pool.removeTimedoutPeers() + } else { + // request for more blocks. + pool.makeNextRequester() + } + } +} + +func (pool *BlockPool) removeTimedoutPeers() { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + for _, peer := range pool.peers { + if !peer.didTimeout && peer.numPending > 0 { + curRate := peer.recvMonitor.Status().CurRate + // curRate can be 0 on start + if curRate != 0 && curRate < minRecvRate { + err := errors.New("peer is not sending us data fast enough") + pool.sendError(err, peer.id) + pool.Logger.Error("SendTimeout", "peer", peer.id, + "reason", err, + "curRate", fmt.Sprintf("%d KB/s", curRate/1024), + "minRate", fmt.Sprintf("%d KB/s", minRecvRate/1024)) + peer.didTimeout = true + } + } + if peer.didTimeout { + pool.removePeer(peer.id) + } + } +} + +func (pool *BlockPool) GetStatus() (height int64, numPending int32, lenRequesters int) { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + return pool.height, atomic.LoadInt32(&pool.numPending), len(pool.requesters) +} + +// TODO: relax conditions, prevent abuse. +func (pool *BlockPool) IsCaughtUp() bool { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + // Need at least 1 peer to be considered caught up. + if len(pool.peers) == 0 { + pool.Logger.Debug("Blockpool has no peers") + return false + } + + // some conditions to determine if we're caught up + receivedBlockOrTimedOut := (pool.height > 0 || time.Since(pool.startTime) > 5*time.Second) + ourChainIsLongestAmongPeers := pool.maxPeerHeight == 0 || pool.height >= pool.maxPeerHeight + isCaughtUp := receivedBlockOrTimedOut && ourChainIsLongestAmongPeers + return isCaughtUp +} + +// We need to see the second block's Commit to validate the first block. +// So we peek two blocks at a time. +// The caller will verify the commit. +func (pool *BlockPool) PeekTwoBlocks() (first *types.Block, second *types.Block) { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + if r := pool.requesters[pool.height]; r != nil { + first = r.getBlock() + } + if r := pool.requesters[pool.height+1]; r != nil { + second = r.getBlock() + } + return +} + +// Pop the first block at pool.height +// It must have been validated by 'second'.Commit from PeekTwoBlocks(). +func (pool *BlockPool) PopRequest() { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + if r := pool.requesters[pool.height]; r != nil { + /* The block can disappear at any time, due to removePeer(). + if r := pool.requesters[pool.height]; r == nil || r.block == nil { + PanicSanity("PopRequest() requires a valid block") + } + */ + r.Stop() + delete(pool.requesters, pool.height) + pool.height++ + } else { + panic(fmt.Sprintf("Expected requester to pop, got nothing at height %v", pool.height)) + } +} + +// Invalidates the block at pool.height, +// Remove the peer and redo request from others. +// Returns the ID of the removed peer. +func (pool *BlockPool) RedoRequest(height int64) p2p.ID { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + request := pool.requesters[height] + + if request.block == nil { + panic("Expected block to be non-nil") + } + + // RemovePeer will redo all requesters associated with this peer. + pool.removePeer(request.peerID) + return request.peerID +} + +// TODO: ensure that blocks come in order for each peer. +func (pool *BlockPool) AddBlock(peerID p2p.ID, block *types.Block, blockSize int) { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + requester := pool.requesters[block.Height] + if requester == nil { + pool.Logger.Info("peer sent us a block we didn't expect", "peer", peerID, "curHeight", pool.height, "blockHeight", block.Height) + diff := pool.height - block.Height + if diff < 0 { + diff *= -1 + } + if diff > maxDiffBetweenCurrentAndReceivedBlockHeight { + pool.sendError(errors.New("peer sent us a block we didn't expect with a height too far ahead/behind"), peerID) + } + return + } + + if requester.setBlock(block, peerID) { + atomic.AddInt32(&pool.numPending, -1) + peer := pool.peers[peerID] + if peer != nil { + peer.decrPending(blockSize) + } + } else { + // Bad peer? + } +} + +// MaxPeerHeight returns the highest height reported by a peer. +func (pool *BlockPool) MaxPeerHeight() int64 { + pool.mtx.Lock() + defer pool.mtx.Unlock() + return pool.maxPeerHeight +} + +// Sets the peer's alleged blockchain height. +func (pool *BlockPool) SetPeerHeight(peerID p2p.ID, height int64) { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + peer := pool.peers[peerID] + if peer != nil { + peer.height = height + } else { + peer = newBPPeer(pool, peerID, height) + peer.setLogger(pool.Logger.With("peer", peerID)) + pool.peers[peerID] = peer + } + + if height > pool.maxPeerHeight { + pool.maxPeerHeight = height + } +} + +func (pool *BlockPool) RemovePeer(peerID p2p.ID) { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + pool.removePeer(peerID) +} + +func (pool *BlockPool) removePeer(peerID p2p.ID) { + for _, requester := range pool.requesters { + if requester.getPeerID() == peerID { + requester.redo() + } + } + delete(pool.peers, peerID) +} + +// Pick an available peer with at least the given minHeight. +// If no peers are available, returns nil. +func (pool *BlockPool) pickIncrAvailablePeer(minHeight int64) *bpPeer { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + for _, peer := range pool.peers { + if peer.didTimeout { + pool.removePeer(peer.id) + continue + } + if peer.numPending >= maxPendingRequestsPerPeer { + continue + } + if peer.height < minHeight { + continue + } + peer.incrPending() + return peer + } + return nil +} + +func (pool *BlockPool) makeNextRequester() { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + nextHeight := pool.height + pool.requestersLen() + request := newBPRequester(pool, nextHeight) + // request.SetLogger(pool.Logger.With("height", nextHeight)) + + pool.requesters[nextHeight] = request + atomic.AddInt32(&pool.numPending, 1) + + err := request.Start() + if err != nil { + request.Logger.Error("Error starting request", "err", err) + } +} + +func (pool *BlockPool) requestersLen() int64 { + return int64(len(pool.requesters)) +} + +func (pool *BlockPool) sendRequest(height int64, peerID p2p.ID) { + if !pool.IsRunning() { + return + } + pool.requestsCh <- BlockRequest{height, peerID} +} + +func (pool *BlockPool) sendError(err error, peerID p2p.ID) { + if !pool.IsRunning() { + return + } + pool.errorsCh <- peerError{err, peerID} +} + +// unused by tendermint; left for debugging purposes +func (pool *BlockPool) debug() string { + pool.mtx.Lock() + defer pool.mtx.Unlock() + + str := "" + nextHeight := pool.height + pool.requestersLen() + for h := pool.height; h < nextHeight; h++ { + if pool.requesters[h] == nil { + str += cmn.Fmt("H(%v):X ", h) + } else { + str += cmn.Fmt("H(%v):", h) + str += cmn.Fmt("B?(%v) ", pool.requesters[h].block != nil) + } + } + return str +} + +//------------------------------------- + +type bpPeer struct { + pool *BlockPool + id p2p.ID + recvMonitor *flow.Monitor + + height int64 + numPending int32 + timeout *time.Timer + didTimeout bool + + logger log.Logger +} + +func newBPPeer(pool *BlockPool, peerID p2p.ID, height int64) *bpPeer { + peer := &bpPeer{ + pool: pool, + id: peerID, + height: height, + numPending: 0, + logger: log.NewNopLogger(), + } + return peer +} + +func (peer *bpPeer) setLogger(l log.Logger) { + peer.logger = l +} + +func (peer *bpPeer) resetMonitor() { + peer.recvMonitor = flow.New(time.Second, time.Second*40) + initialValue := float64(minRecvRate) * math.E + peer.recvMonitor.SetREMA(initialValue) +} + +func (peer *bpPeer) resetTimeout() { + if peer.timeout == nil { + peer.timeout = time.AfterFunc(peerTimeout, peer.onTimeout) + } else { + peer.timeout.Reset(peerTimeout) + } +} + +func (peer *bpPeer) incrPending() { + if peer.numPending == 0 { + peer.resetMonitor() + peer.resetTimeout() + } + peer.numPending++ +} + +func (peer *bpPeer) decrPending(recvSize int) { + peer.numPending-- + if peer.numPending == 0 { + peer.timeout.Stop() + } else { + peer.recvMonitor.Update(recvSize) + peer.resetTimeout() + } +} + +func (peer *bpPeer) onTimeout() { + peer.pool.mtx.Lock() + defer peer.pool.mtx.Unlock() + + err := errors.New("peer did not send us anything") + peer.pool.sendError(err, peer.id) + peer.logger.Error("SendTimeout", "reason", err, "timeout", peerTimeout) + peer.didTimeout = true +} + +//------------------------------------- + +type bpRequester struct { + cmn.BaseService + pool *BlockPool + height int64 + gotBlockCh chan struct{} + redoCh chan struct{} + + mtx sync.Mutex + peerID p2p.ID + block *types.Block +} + +func newBPRequester(pool *BlockPool, height int64) *bpRequester { + bpr := &bpRequester{ + pool: pool, + height: height, + gotBlockCh: make(chan struct{}, 1), + redoCh: make(chan struct{}, 1), + + peerID: "", + block: nil, + } + bpr.BaseService = *cmn.NewBaseService(nil, "bpRequester", bpr) + return bpr +} + +func (bpr *bpRequester) OnStart() error { + go bpr.requestRoutine() + return nil +} + +// Returns true if the peer matches and block doesn't already exist. +func (bpr *bpRequester) setBlock(block *types.Block, peerID p2p.ID) bool { + bpr.mtx.Lock() + if bpr.block != nil || bpr.peerID != peerID { + bpr.mtx.Unlock() + return false + } + bpr.block = block + bpr.mtx.Unlock() + + select { + case bpr.gotBlockCh <- struct{}{}: + default: + } + return true +} + +func (bpr *bpRequester) getBlock() *types.Block { + bpr.mtx.Lock() + defer bpr.mtx.Unlock() + return bpr.block +} + +func (bpr *bpRequester) getPeerID() p2p.ID { + bpr.mtx.Lock() + defer bpr.mtx.Unlock() + return bpr.peerID +} + +// This is called from the requestRoutine, upon redo(). +func (bpr *bpRequester) reset() { + bpr.mtx.Lock() + defer bpr.mtx.Unlock() + + if bpr.block != nil { + atomic.AddInt32(&bpr.pool.numPending, 1) + } + + bpr.peerID = "" + bpr.block = nil +} + +// Tells bpRequester to pick another peer and try again. +// NOTE: Nonblocking, and does nothing if another redo +// was already requested. +func (bpr *bpRequester) redo() { + select { + case bpr.redoCh <- struct{}{}: + default: + } +} + +// Responsible for making more requests as necessary +// Returns only when a block is found (e.g. AddBlock() is called) +func (bpr *bpRequester) requestRoutine() { +OUTER_LOOP: + for { + // Pick a peer to send request to. + var peer *bpPeer + PICK_PEER_LOOP: + for { + if !bpr.IsRunning() || !bpr.pool.IsRunning() { + return + } + peer = bpr.pool.pickIncrAvailablePeer(bpr.height) + if peer == nil { + //log.Info("No peers available", "height", height) + time.Sleep(requestIntervalMS * time.Millisecond) + continue PICK_PEER_LOOP + } + break PICK_PEER_LOOP + } + bpr.mtx.Lock() + bpr.peerID = peer.id + bpr.mtx.Unlock() + + // Send request and wait. + bpr.pool.sendRequest(bpr.height, peer.id) + WAIT_LOOP: + for { + select { + case <-bpr.pool.Quit(): + bpr.Stop() + return + case <-bpr.Quit(): + return + case <-bpr.redoCh: + bpr.reset() + continue OUTER_LOOP + case <-bpr.gotBlockCh: + // We got a block! + // Continue the for-loop and wait til Quit. + continue WAIT_LOOP + } + } + } +} + +//------------------------------------- + +type BlockRequest struct { + Height int64 + PeerID p2p.ID +} diff --git a/blockchain/pool_test.go b/blockchain/pool_test.go new file mode 100644 index 000000000..82120eaef --- /dev/null +++ b/blockchain/pool_test.go @@ -0,0 +1,148 @@ +package blockchain + +import ( + "math/rand" + "testing" + "time" + + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/types" +) + +func init() { + peerTimeout = 2 * time.Second +} + +type testPeer struct { + id p2p.ID + height int64 +} + +func makePeers(numPeers int, minHeight, maxHeight int64) map[p2p.ID]testPeer { + peers := make(map[p2p.ID]testPeer, numPeers) + for i := 0; i < numPeers; i++ { + peerID := p2p.ID(cmn.RandStr(12)) + height := minHeight + rand.Int63n(maxHeight-minHeight) + peers[peerID] = testPeer{peerID, height} + } + return peers +} + +func TestBasic(t *testing.T) { + start := int64(42) + peers := makePeers(10, start+1, 1000) + errorsCh := make(chan peerError, 1000) + requestsCh := make(chan BlockRequest, 1000) + pool := NewBlockPool(start, requestsCh, errorsCh) + pool.SetLogger(log.TestingLogger()) + + err := pool.Start() + if err != nil { + t.Error(err) + } + + defer pool.Stop() + + // Introduce each peer. + go func() { + for _, peer := range peers { + pool.SetPeerHeight(peer.id, peer.height) + } + }() + + // Start a goroutine to pull blocks + go func() { + for { + if !pool.IsRunning() { + return + } + first, second := pool.PeekTwoBlocks() + if first != nil && second != nil { + pool.PopRequest() + } else { + time.Sleep(1 * time.Second) + } + } + }() + + // Pull from channels + for { + select { + case err := <-errorsCh: + t.Error(err) + case request := <-requestsCh: + t.Logf("Pulled new BlockRequest %v", request) + if request.Height == 300 { + return // Done! + } + // Request desired, pretend like we got the block immediately. + go func() { + block := &types.Block{Header: &types.Header{Height: request.Height}} + pool.AddBlock(request.PeerID, block, 123) + t.Logf("Added block from peer %v (height: %v)", request.PeerID, request.Height) + }() + } + } +} + +func TestTimeout(t *testing.T) { + start := int64(42) + peers := makePeers(10, start+1, 1000) + errorsCh := make(chan peerError, 1000) + requestsCh := make(chan BlockRequest, 1000) + pool := NewBlockPool(start, requestsCh, errorsCh) + pool.SetLogger(log.TestingLogger()) + err := pool.Start() + if err != nil { + t.Error(err) + } + defer pool.Stop() + + for _, peer := range peers { + t.Logf("Peer %v", peer.id) + } + + // Introduce each peer. + go func() { + for _, peer := range peers { + pool.SetPeerHeight(peer.id, peer.height) + } + }() + + // Start a goroutine to pull blocks + go func() { + for { + if !pool.IsRunning() { + return + } + first, second := pool.PeekTwoBlocks() + if first != nil && second != nil { + pool.PopRequest() + } else { + time.Sleep(1 * time.Second) + } + } + }() + + // Pull from channels + counter := 0 + timedOut := map[p2p.ID]struct{}{} + for { + select { + case err := <-errorsCh: + t.Log(err) + // consider error to be always timeout here + if _, ok := timedOut[err.peerID]; !ok { + counter++ + if counter == len(peers) { + return // Done! + } + } + case request := <-requestsCh: + t.Logf("Pulled new BlockRequest %+v", request) + } + } +} diff --git a/blockchain/reactor.go b/blockchain/reactor.go new file mode 100644 index 000000000..33dfdd288 --- /dev/null +++ b/blockchain/reactor.go @@ -0,0 +1,405 @@ +package blockchain + +import ( + "fmt" + "reflect" + "time" + + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/p2p" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" +) + +const ( + // BlockchainChannel is a channel for blocks and status updates (`BlockStore` height) + BlockchainChannel = byte(0x40) + + trySyncIntervalMS = 50 + // stop syncing when last block's time is + // within this much of the system time. + // stopSyncingDurationMinutes = 10 + + // ask for best height every 10s + statusUpdateIntervalSeconds = 10 + // check if we should switch to consensus reactor + switchToConsensusIntervalSeconds = 1 + + // NOTE: keep up to date with bcBlockResponseMessage + bcBlockResponseMessagePrefixSize = 4 + bcBlockResponseMessageFieldKeySize = 1 + maxMsgSize = types.MaxBlockSizeBytes + + bcBlockResponseMessagePrefixSize + + bcBlockResponseMessageFieldKeySize +) + +type consensusReactor interface { + // for when we switch from blockchain reactor and fast sync to + // the consensus machine + SwitchToConsensus(sm.State, int) +} + +type peerError struct { + err error + peerID p2p.ID +} + +func (e peerError) Error() string { + return fmt.Sprintf("error with peer %v: %s", e.peerID, e.err.Error()) +} + +// BlockchainReactor handles long-term catchup syncing. +type BlockchainReactor struct { + p2p.BaseReactor + + // immutable + initialState sm.State + + blockExec *sm.BlockExecutor + store *BlockStore + pool *BlockPool + fastSync bool + + requestsCh <-chan BlockRequest + errorsCh <-chan peerError +} + +// NewBlockchainReactor returns new reactor instance. +func NewBlockchainReactor(state sm.State, blockExec *sm.BlockExecutor, store *BlockStore, + fastSync bool) *BlockchainReactor { + + if state.LastBlockHeight != store.Height() { + panic(fmt.Sprintf("state (%v) and store (%v) height mismatch", state.LastBlockHeight, + store.Height())) + } + + const capacity = 1000 // must be bigger than peers count + requestsCh := make(chan BlockRequest, capacity) + errorsCh := make(chan peerError, capacity) // so we don't block in #Receive#pool.AddBlock + + pool := NewBlockPool( + store.Height()+1, + requestsCh, + errorsCh, + ) + + bcR := &BlockchainReactor{ + initialState: state, + blockExec: blockExec, + store: store, + pool: pool, + fastSync: fastSync, + requestsCh: requestsCh, + errorsCh: errorsCh, + } + bcR.BaseReactor = *p2p.NewBaseReactor("BlockchainReactor", bcR) + return bcR +} + +// SetLogger implements cmn.Service by setting the logger on reactor and pool. +func (bcR *BlockchainReactor) SetLogger(l log.Logger) { + bcR.BaseService.Logger = l + bcR.pool.Logger = l +} + +// OnStart implements cmn.Service. +func (bcR *BlockchainReactor) OnStart() error { + if err := bcR.BaseReactor.OnStart(); err != nil { + return err + } + if bcR.fastSync { + err := bcR.pool.Start() + if err != nil { + return err + } + go bcR.poolRoutine() + } + return nil +} + +// OnStop implements cmn.Service. +func (bcR *BlockchainReactor) OnStop() { + bcR.BaseReactor.OnStop() + bcR.pool.Stop() +} + +// GetChannels implements Reactor +func (bcR *BlockchainReactor) GetChannels() []*p2p.ChannelDescriptor { + return []*p2p.ChannelDescriptor{ + { + ID: BlockchainChannel, + Priority: 10, + SendQueueCapacity: 1000, + RecvBufferCapacity: 50 * 4096, + RecvMessageCapacity: maxMsgSize, + }, + } +} + +// AddPeer implements Reactor by sending our state to peer. +func (bcR *BlockchainReactor) AddPeer(peer p2p.Peer) { + msgBytes := cdc.MustMarshalBinaryBare(&bcStatusResponseMessage{bcR.store.Height()}) + if !peer.Send(BlockchainChannel, msgBytes) { + // doing nothing, will try later in `poolRoutine` + } + // peer is added to the pool once we receive the first + // bcStatusResponseMessage from the peer and call pool.SetPeerHeight +} + +// RemovePeer implements Reactor by removing peer from the pool. +func (bcR *BlockchainReactor) RemovePeer(peer p2p.Peer, reason interface{}) { + bcR.pool.RemovePeer(peer.ID()) +} + +// respondToPeer loads a block and sends it to the requesting peer, +// if we have it. Otherwise, we'll respond saying we don't have it. +// According to the Tendermint spec, if all nodes are honest, +// no node should be requesting for a block that's non-existent. +func (bcR *BlockchainReactor) respondToPeer(msg *bcBlockRequestMessage, + src p2p.Peer) (queued bool) { + + block := bcR.store.LoadBlock(msg.Height) + if block != nil { + msgBytes := cdc.MustMarshalBinaryBare(&bcBlockResponseMessage{Block: block}) + return src.TrySend(BlockchainChannel, msgBytes) + } + + bcR.Logger.Info("Peer asking for a block we don't have", "src", src, "height", msg.Height) + + msgBytes := cdc.MustMarshalBinaryBare(&bcNoBlockResponseMessage{Height: msg.Height}) + return src.TrySend(BlockchainChannel, msgBytes) +} + +// Receive implements Reactor by handling 4 types of messages (look below). +func (bcR *BlockchainReactor) Receive(chID byte, src p2p.Peer, msgBytes []byte) { + msg, err := DecodeMessage(msgBytes) + if err != nil { + bcR.Logger.Error("Error decoding message", "src", src, "chId", chID, "msg", msg, "err", err, "bytes", msgBytes) + bcR.Switch.StopPeerForError(src, err) + return + } + + bcR.Logger.Debug("Receive", "src", src, "chID", chID, "msg", msg) + + switch msg := msg.(type) { + case *bcBlockRequestMessage: + if queued := bcR.respondToPeer(msg, src); !queued { + // Unfortunately not queued since the queue is full. + } + case *bcBlockResponseMessage: + // Got a block. + bcR.pool.AddBlock(src.ID(), msg.Block, len(msgBytes)) + case *bcStatusRequestMessage: + // Send peer our state. + msgBytes := cdc.MustMarshalBinaryBare(&bcStatusResponseMessage{bcR.store.Height()}) + queued := src.TrySend(BlockchainChannel, msgBytes) + if !queued { + // sorry + } + case *bcStatusResponseMessage: + // Got a peer status. Unverified. + bcR.pool.SetPeerHeight(src.ID(), msg.Height) + default: + bcR.Logger.Error(cmn.Fmt("Unknown message type %v", reflect.TypeOf(msg))) + } +} + +// Handle messages from the poolReactor telling the reactor what to do. +// NOTE: Don't sleep in the FOR_LOOP or otherwise slow it down! +// (Except for the SYNC_LOOP, which is the primary purpose and must be synchronous.) +func (bcR *BlockchainReactor) poolRoutine() { + + trySyncTicker := time.NewTicker(trySyncIntervalMS * time.Millisecond) + statusUpdateTicker := time.NewTicker(statusUpdateIntervalSeconds * time.Second) + switchToConsensusTicker := time.NewTicker(switchToConsensusIntervalSeconds * time.Second) + + blocksSynced := 0 + + chainID := bcR.initialState.ChainID + state := bcR.initialState + + lastHundred := time.Now() + lastRate := 0.0 + +FOR_LOOP: + for { + select { + case request := <-bcR.requestsCh: + peer := bcR.Switch.Peers().Get(request.PeerID) + if peer == nil { + continue FOR_LOOP // Peer has since been disconnected. + } + msgBytes := cdc.MustMarshalBinaryBare(&bcBlockRequestMessage{request.Height}) + queued := peer.TrySend(BlockchainChannel, msgBytes) + if !queued { + // We couldn't make the request, send-queue full. + // The pool handles timeouts, just let it go. + continue FOR_LOOP + } + case err := <-bcR.errorsCh: + peer := bcR.Switch.Peers().Get(err.peerID) + if peer != nil { + bcR.Switch.StopPeerForError(peer, err) + } + case <-statusUpdateTicker.C: + // ask for status updates + go bcR.BroadcastStatusRequest() // nolint: errcheck + case <-switchToConsensusTicker.C: + height, numPending, lenRequesters := bcR.pool.GetStatus() + outbound, inbound, _ := bcR.Switch.NumPeers() + bcR.Logger.Debug("Consensus ticker", "numPending", numPending, "total", lenRequesters, + "outbound", outbound, "inbound", inbound) + if bcR.pool.IsCaughtUp() { + bcR.Logger.Info("Time to switch to consensus reactor!", "height", height) + bcR.pool.Stop() + + conR := bcR.Switch.Reactor("CONSENSUS").(consensusReactor) + conR.SwitchToConsensus(state, blocksSynced) + + break FOR_LOOP + } + case <-trySyncTicker.C: // chan time + // This loop can be slow as long as it's doing syncing work. + SYNC_LOOP: + for i := 0; i < 10; i++ { + // See if there are any blocks to sync. + first, second := bcR.pool.PeekTwoBlocks() + //bcR.Logger.Info("TrySync peeked", "first", first, "second", second) + if first == nil || second == nil { + // We need both to sync the first block. + break SYNC_LOOP + } + firstParts := first.MakePartSet(state.ConsensusParams.BlockPartSizeBytes) + firstPartsHeader := firstParts.Header() + firstID := types.BlockID{first.Hash(), firstPartsHeader} + // Finally, verify the first block using the second's commit + // NOTE: we can probably make this more efficient, but note that calling + // first.Hash() doesn't verify the tx contents, so MakePartSet() is + // currently necessary. + err := state.Validators.VerifyCommit( + chainID, firstID, first.Height, second.LastCommit) + if err != nil { + bcR.Logger.Error("Error in validation", "err", err) + peerID := bcR.pool.RedoRequest(first.Height) + peer := bcR.Switch.Peers().Get(peerID) + if peer != nil { + bcR.Switch.StopPeerForError(peer, fmt.Errorf("BlockchainReactor validation error: %v", err)) + } + break SYNC_LOOP + } else { + bcR.pool.PopRequest() + + // TODO: batch saves so we dont persist to disk every block + bcR.store.SaveBlock(first, firstParts, second.LastCommit) + + // TODO: same thing for app - but we would need a way to + // get the hash without persisting the state + var err error + state, err = bcR.blockExec.ApplyBlock(state, firstID, first) + if err != nil { + // TODO This is bad, are we zombie? + cmn.PanicQ(cmn.Fmt("Failed to process committed block (%d:%X): %v", + first.Height, first.Hash(), err)) + } + blocksSynced++ + + if blocksSynced%100 == 0 { + lastRate = 0.9*lastRate + 0.1*(100/time.Since(lastHundred).Seconds()) + bcR.Logger.Info("Fast Sync Rate", "height", bcR.pool.height, + "max_peer_height", bcR.pool.MaxPeerHeight(), "blocks/s", lastRate) + lastHundred = time.Now() + } + } + } + continue FOR_LOOP + case <-bcR.Quit(): + break FOR_LOOP + } + } +} + +// BroadcastStatusRequest broadcasts `BlockStore` height. +func (bcR *BlockchainReactor) BroadcastStatusRequest() error { + msgBytes := cdc.MustMarshalBinaryBare(&bcStatusRequestMessage{bcR.store.Height()}) + bcR.Switch.Broadcast(BlockchainChannel, msgBytes) + return nil +} + +//----------------------------------------------------------------------------- +// Messages + +// BlockchainMessage is a generic message for this reactor. +type BlockchainMessage interface{} + +func RegisterBlockchainMessages(cdc *amino.Codec) { + cdc.RegisterInterface((*BlockchainMessage)(nil), nil) + cdc.RegisterConcrete(&bcBlockRequestMessage{}, "tendermint/mempool/BlockRequest", nil) + cdc.RegisterConcrete(&bcBlockResponseMessage{}, "tendermint/mempool/BlockResponse", nil) + cdc.RegisterConcrete(&bcNoBlockResponseMessage{}, "tendermint/mempool/NoBlockResponse", nil) + cdc.RegisterConcrete(&bcStatusResponseMessage{}, "tendermint/mempool/StatusResponse", nil) + cdc.RegisterConcrete(&bcStatusRequestMessage{}, "tendermint/mempool/StatusRequest", nil) +} + +// DecodeMessage decodes BlockchainMessage. +// TODO: ensure that bz is completely read. +func DecodeMessage(bz []byte) (msg BlockchainMessage, err error) { + if len(bz) > maxMsgSize { + return msg, fmt.Errorf("Msg exceeds max size (%d > %d)", + len(bz), maxMsgSize) + } + err = cdc.UnmarshalBinaryBare(bz, &msg) + if err != nil { + err = cmn.ErrorWrap(err, "DecodeMessage() had bytes left over") + } + return +} + +//------------------------------------- + +type bcBlockRequestMessage struct { + Height int64 +} + +func (m *bcBlockRequestMessage) String() string { + return cmn.Fmt("[bcBlockRequestMessage %v]", m.Height) +} + +type bcNoBlockResponseMessage struct { + Height int64 +} + +func (brm *bcNoBlockResponseMessage) String() string { + return cmn.Fmt("[bcNoBlockResponseMessage %d]", brm.Height) +} + +//------------------------------------- + +type bcBlockResponseMessage struct { + Block *types.Block +} + +func (m *bcBlockResponseMessage) String() string { + return cmn.Fmt("[bcBlockResponseMessage %v]", m.Block.Height) +} + +//------------------------------------- + +type bcStatusRequestMessage struct { + Height int64 +} + +func (m *bcStatusRequestMessage) String() string { + return cmn.Fmt("[bcStatusRequestMessage %v]", m.Height) +} + +//------------------------------------- + +type bcStatusResponseMessage struct { + Height int64 +} + +func (m *bcStatusResponseMessage) String() string { + return cmn.Fmt("[bcStatusResponseMessage %v]", m.Height) +} diff --git a/blockchain/reactor_test.go b/blockchain/reactor_test.go new file mode 100644 index 000000000..c7f7e9afd --- /dev/null +++ b/blockchain/reactor_test.go @@ -0,0 +1,208 @@ +package blockchain + +import ( + "net" + "testing" + + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/proxy" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" +) + +func makeStateAndBlockStore(logger log.Logger) (sm.State, *BlockStore) { + config := cfg.ResetTestRoot("blockchain_reactor_test") + // blockDB := dbm.NewDebugDB("blockDB", dbm.NewMemDB()) + // stateDB := dbm.NewDebugDB("stateDB", dbm.NewMemDB()) + blockDB := dbm.NewMemDB() + stateDB := dbm.NewMemDB() + blockStore := NewBlockStore(blockDB) + state, err := sm.LoadStateFromDBOrGenesisFile(stateDB, config.GenesisFile()) + if err != nil { + panic(cmn.ErrorWrap(err, "error constructing state from genesis file")) + } + return state, blockStore +} + +func newBlockchainReactor(logger log.Logger, maxBlockHeight int64) *BlockchainReactor { + state, blockStore := makeStateAndBlockStore(logger) + + // Make the blockchainReactor itself + fastSync := true + var nilApp proxy.AppConnConsensus + blockExec := sm.NewBlockExecutor(dbm.NewMemDB(), log.TestingLogger(), nilApp, + sm.MockMempool{}, sm.MockEvidencePool{}) + + bcReactor := NewBlockchainReactor(state.Copy(), blockExec, blockStore, fastSync) + bcReactor.SetLogger(logger.With("module", "blockchain")) + + // Next: we need to set a switch in order for peers to be added in + bcReactor.Switch = p2p.NewSwitch(cfg.DefaultP2PConfig()) + + // Lastly: let's add some blocks in + for blockHeight := int64(1); blockHeight <= maxBlockHeight; blockHeight++ { + firstBlock := makeBlock(blockHeight, state) + secondBlock := makeBlock(blockHeight+1, state) + firstParts := firstBlock.MakePartSet(state.ConsensusParams.BlockGossip.BlockPartSizeBytes) + blockStore.SaveBlock(firstBlock, firstParts, secondBlock.LastCommit) + } + + return bcReactor +} + +func TestNoBlockResponse(t *testing.T) { + maxBlockHeight := int64(20) + + bcr := newBlockchainReactor(log.TestingLogger(), maxBlockHeight) + bcr.Start() + defer bcr.Stop() + + // Add some peers in + peer := newbcrTestPeer(p2p.ID(cmn.RandStr(12))) + bcr.AddPeer(peer) + + chID := byte(0x01) + + tests := []struct { + height int64 + existent bool + }{ + {maxBlockHeight + 2, false}, + {10, true}, + {1, true}, + {100, false}, + } + + // receive a request message from peer, + // wait for our response to be received on the peer + for _, tt := range tests { + reqBlockMsg := &bcBlockRequestMessage{tt.height} + reqBlockBytes := cdc.MustMarshalBinaryBare(reqBlockMsg) + bcr.Receive(chID, peer, reqBlockBytes) + msg := peer.lastBlockchainMessage() + + if tt.existent { + if blockMsg, ok := msg.(*bcBlockResponseMessage); !ok { + t.Fatalf("Expected to receive a block response for height %d", tt.height) + } else if blockMsg.Block.Height != tt.height { + t.Fatalf("Expected response to be for height %d, got %d", tt.height, blockMsg.Block.Height) + } + } else { + if noBlockMsg, ok := msg.(*bcNoBlockResponseMessage); !ok { + t.Fatalf("Expected to receive a no block response for height %d", tt.height) + } else if noBlockMsg.Height != tt.height { + t.Fatalf("Expected response to be for height %d, got %d", tt.height, noBlockMsg.Height) + } + } + } +} + +/* +// NOTE: This is too hard to test without +// an easy way to add test peer to switch +// or without significant refactoring of the module. +// Alternatively we could actually dial a TCP conn but +// that seems extreme. +func TestBadBlockStopsPeer(t *testing.T) { + maxBlockHeight := int64(20) + + bcr := newBlockchainReactor(log.TestingLogger(), maxBlockHeight) + bcr.Start() + defer bcr.Stop() + + // Add some peers in + peer := newbcrTestPeer(p2p.ID(cmn.RandStr(12))) + + // XXX: This doesn't add the peer to anything, + // so it's hard to check that it's later removed + bcr.AddPeer(peer) + assert.True(t, bcr.Switch.Peers().Size() > 0) + + // send a bad block from the peer + // default blocks already dont have commits, so should fail + block := bcr.store.LoadBlock(3) + msg := &bcBlockResponseMessage{Block: block} + peer.Send(BlockchainChannel, struct{ BlockchainMessage }{msg}) + + ticker := time.NewTicker(time.Millisecond * 10) + timer := time.NewTimer(time.Second * 2) +LOOP: + for { + select { + case <-ticker.C: + if bcr.Switch.Peers().Size() == 0 { + break LOOP + } + case <-timer.C: + t.Fatal("Timed out waiting to disconnect peer") + } + } +} +*/ + +//---------------------------------------------- +// utility funcs + +func makeTxs(height int64) (txs []types.Tx) { + for i := 0; i < 10; i++ { + txs = append(txs, types.Tx([]byte{byte(height), byte(i)})) + } + return txs +} + +func makeBlock(height int64, state sm.State) *types.Block { + block, _ := state.MakeBlock(height, makeTxs(height), new(types.Commit)) + return block +} + +// The Test peer +type bcrTestPeer struct { + cmn.BaseService + id p2p.ID + ch chan interface{} +} + +var _ p2p.Peer = (*bcrTestPeer)(nil) + +func newbcrTestPeer(id p2p.ID) *bcrTestPeer { + bcr := &bcrTestPeer{ + id: id, + ch: make(chan interface{}, 2), + } + bcr.BaseService = *cmn.NewBaseService(nil, "bcrTestPeer", bcr) + return bcr +} + +func (tp *bcrTestPeer) lastBlockchainMessage() interface{} { return <-tp.ch } + +func (tp *bcrTestPeer) TrySend(chID byte, msgBytes []byte) bool { + var msg BlockchainMessage + err := cdc.UnmarshalBinaryBare(msgBytes, &msg) + if err != nil { + panic(cmn.ErrorWrap(err, "Error while trying to parse a BlockchainMessage")) + } + if _, ok := msg.(*bcStatusResponseMessage); ok { + // Discard status response messages since they skew our results + // We only want to deal with: + // + bcBlockResponseMessage + // + bcNoBlockResponseMessage + } else { + tp.ch <- msg + } + return true +} + +func (tp *bcrTestPeer) Send(chID byte, msgBytes []byte) bool { return tp.TrySend(chID, msgBytes) } +func (tp *bcrTestPeer) NodeInfo() p2p.NodeInfo { return p2p.NodeInfo{} } +func (tp *bcrTestPeer) Status() p2p.ConnectionStatus { return p2p.ConnectionStatus{} } +func (tp *bcrTestPeer) ID() p2p.ID { return tp.id } +func (tp *bcrTestPeer) IsOutbound() bool { return false } +func (tp *bcrTestPeer) IsPersistent() bool { return true } +func (tp *bcrTestPeer) Get(s string) interface{} { return s } +func (tp *bcrTestPeer) Set(string, interface{}) {} +func (tp *bcrTestPeer) RemoteIP() net.IP { return []byte{127, 0, 0, 1} } diff --git a/blockchain/store.go b/blockchain/store.go new file mode 100644 index 000000000..e7608b2cc --- /dev/null +++ b/blockchain/store.go @@ -0,0 +1,247 @@ +package blockchain + +import ( + "fmt" + "sync" + + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + + "github.com/tendermint/tendermint/types" +) + +/* +BlockStore is a simple low level store for blocks. + +There are three types of information stored: + - BlockMeta: Meta information about each block + - Block part: Parts of each block, aggregated w/ PartSet + - Commit: The commit part of each block, for gossiping precommit votes + +Currently the precommit signatures are duplicated in the Block parts as +well as the Commit. In the future this may change, perhaps by moving +the Commit data outside the Block. (TODO) + +// NOTE: BlockStore methods will panic if they encounter errors +// deserializing loaded data, indicating probable corruption on disk. +*/ +type BlockStore struct { + db dbm.DB + + mtx sync.RWMutex + height int64 +} + +// NewBlockStore returns a new BlockStore with the given DB, +// initialized to the last height that was committed to the DB. +func NewBlockStore(db dbm.DB) *BlockStore { + bsjson := LoadBlockStoreStateJSON(db) + return &BlockStore{ + height: bsjson.Height, + db: db, + } +} + +// Height returns the last known contiguous block height. +func (bs *BlockStore) Height() int64 { + bs.mtx.RLock() + defer bs.mtx.RUnlock() + return bs.height +} + +// LoadBlock returns the block with the given height. +// If no block is found for that height, it returns nil. +func (bs *BlockStore) LoadBlock(height int64) *types.Block { + var blockMeta = bs.LoadBlockMeta(height) + if blockMeta == nil { + return nil + } + + var block = new(types.Block) + buf := []byte{} + for i := 0; i < blockMeta.BlockID.PartsHeader.Total; i++ { + part := bs.LoadBlockPart(height, i) + buf = append(buf, part.Bytes...) + } + err := cdc.UnmarshalBinary(buf, block) + if err != nil { + // NOTE: The existence of meta should imply the existence of the + // block. So, make sure meta is only saved after blocks are saved. + panic(cmn.ErrorWrap(err, "Error reading block")) + } + return block +} + +// LoadBlockPart returns the Part at the given index +// from the block at the given height. +// If no part is found for the given height and index, it returns nil. +func (bs *BlockStore) LoadBlockPart(height int64, index int) *types.Part { + var part = new(types.Part) + bz := bs.db.Get(calcBlockPartKey(height, index)) + if len(bz) == 0 { + return nil + } + err := cdc.UnmarshalBinaryBare(bz, part) + if err != nil { + panic(cmn.ErrorWrap(err, "Error reading block part")) + } + return part +} + +// LoadBlockMeta returns the BlockMeta for the given height. +// If no block is found for the given height, it returns nil. +func (bs *BlockStore) LoadBlockMeta(height int64) *types.BlockMeta { + var blockMeta = new(types.BlockMeta) + bz := bs.db.Get(calcBlockMetaKey(height)) + if len(bz) == 0 { + return nil + } + err := cdc.UnmarshalBinaryBare(bz, blockMeta) + if err != nil { + panic(cmn.ErrorWrap(err, "Error reading block meta")) + } + return blockMeta +} + +// LoadBlockCommit returns the Commit for the given height. +// This commit consists of the +2/3 and other Precommit-votes for block at `height`, +// and it comes from the block.LastCommit for `height+1`. +// If no commit is found for the given height, it returns nil. +func (bs *BlockStore) LoadBlockCommit(height int64) *types.Commit { + var commit = new(types.Commit) + bz := bs.db.Get(calcBlockCommitKey(height)) + if len(bz) == 0 { + return nil + } + err := cdc.UnmarshalBinaryBare(bz, commit) + if err != nil { + panic(cmn.ErrorWrap(err, "Error reading block commit")) + } + return commit +} + +// LoadSeenCommit returns the locally seen Commit for the given height. +// This is useful when we've seen a commit, but there has not yet been +// a new block at `height + 1` that includes this commit in its block.LastCommit. +func (bs *BlockStore) LoadSeenCommit(height int64) *types.Commit { + var commit = new(types.Commit) + bz := bs.db.Get(calcSeenCommitKey(height)) + if len(bz) == 0 { + return nil + } + err := cdc.UnmarshalBinaryBare(bz, commit) + if err != nil { + panic(cmn.ErrorWrap(err, "Error reading block seen commit")) + } + return commit +} + +// SaveBlock persists the given block, blockParts, and seenCommit to the underlying db. +// blockParts: Must be parts of the block +// seenCommit: The +2/3 precommits that were seen which committed at height. +// If all the nodes restart after committing a block, +// we need this to reload the precommits to catch-up nodes to the +// most recent height. Otherwise they'd stall at H-1. +func (bs *BlockStore) SaveBlock(block *types.Block, blockParts *types.PartSet, seenCommit *types.Commit) { + if block == nil { + cmn.PanicSanity("BlockStore can only save a non-nil block") + } + height := block.Height + if g, w := height, bs.Height()+1; g != w { + cmn.PanicSanity(cmn.Fmt("BlockStore can only save contiguous blocks. Wanted %v, got %v", w, g)) + } + if !blockParts.IsComplete() { + cmn.PanicSanity(cmn.Fmt("BlockStore can only save complete block part sets")) + } + + // Save block meta + blockMeta := types.NewBlockMeta(block, blockParts) + metaBytes := cdc.MustMarshalBinaryBare(blockMeta) + bs.db.Set(calcBlockMetaKey(height), metaBytes) + + // Save block parts + for i := 0; i < blockParts.Total(); i++ { + part := blockParts.GetPart(i) + bs.saveBlockPart(height, i, part) + } + + // Save block commit (duplicate and separate from the Block) + blockCommitBytes := cdc.MustMarshalBinaryBare(block.LastCommit) + bs.db.Set(calcBlockCommitKey(height-1), blockCommitBytes) + + // Save seen commit (seen +2/3 precommits for block) + // NOTE: we can delete this at a later height + seenCommitBytes := cdc.MustMarshalBinaryBare(seenCommit) + bs.db.Set(calcSeenCommitKey(height), seenCommitBytes) + + // Save new BlockStoreStateJSON descriptor + BlockStoreStateJSON{Height: height}.Save(bs.db) + + // Done! + bs.mtx.Lock() + bs.height = height + bs.mtx.Unlock() + + // Flush + bs.db.SetSync(nil, nil) +} + +func (bs *BlockStore) saveBlockPart(height int64, index int, part *types.Part) { + if height != bs.Height()+1 { + cmn.PanicSanity(cmn.Fmt("BlockStore can only save contiguous blocks. Wanted %v, got %v", bs.Height()+1, height)) + } + partBytes := cdc.MustMarshalBinaryBare(part) + bs.db.Set(calcBlockPartKey(height, index), partBytes) +} + +//----------------------------------------------------------------------------- + +func calcBlockMetaKey(height int64) []byte { + return []byte(fmt.Sprintf("H:%v", height)) +} + +func calcBlockPartKey(height int64, partIndex int) []byte { + return []byte(fmt.Sprintf("P:%v:%v", height, partIndex)) +} + +func calcBlockCommitKey(height int64) []byte { + return []byte(fmt.Sprintf("C:%v", height)) +} + +func calcSeenCommitKey(height int64) []byte { + return []byte(fmt.Sprintf("SC:%v", height)) +} + +//----------------------------------------------------------------------------- + +var blockStoreKey = []byte("blockStore") + +type BlockStoreStateJSON struct { + Height int64 `json:"height"` +} + +// Save persists the blockStore state to the database as JSON. +func (bsj BlockStoreStateJSON) Save(db dbm.DB) { + bytes, err := cdc.MarshalJSON(bsj) + if err != nil { + cmn.PanicSanity(cmn.Fmt("Could not marshal state bytes: %v", err)) + } + db.SetSync(blockStoreKey, bytes) +} + +// LoadBlockStoreStateJSON returns the BlockStoreStateJSON as loaded from disk. +// If no BlockStoreStateJSON was previously persisted, it returns the zero value. +func LoadBlockStoreStateJSON(db dbm.DB) BlockStoreStateJSON { + bytes := db.Get(blockStoreKey) + if len(bytes) == 0 { + return BlockStoreStateJSON{ + Height: 0, + } + } + bsj := BlockStoreStateJSON{} + err := cdc.UnmarshalJSON(bytes, &bsj) + if err != nil { + panic(fmt.Sprintf("Could not unmarshal bytes: %X", bytes)) + } + return bsj +} diff --git a/blockchain/store_test.go b/blockchain/store_test.go new file mode 100644 index 000000000..1e0c223ad --- /dev/null +++ b/blockchain/store_test.go @@ -0,0 +1,383 @@ +package blockchain + +import ( + "bytes" + "fmt" + "runtime/debug" + "strings" + "testing" + "time" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/tendermint/types" +) + +func TestLoadBlockStoreStateJSON(t *testing.T) { + db := db.NewMemDB() + + bsj := &BlockStoreStateJSON{Height: 1000} + bsj.Save(db) + + retrBSJ := LoadBlockStoreStateJSON(db) + + assert.Equal(t, *bsj, retrBSJ, "expected the retrieved DBs to match") +} + +func TestNewBlockStore(t *testing.T) { + db := db.NewMemDB() + db.Set(blockStoreKey, []byte(`{"height": "10000"}`)) + bs := NewBlockStore(db) + require.Equal(t, int64(10000), bs.Height(), "failed to properly parse blockstore") + + panicCausers := []struct { + data []byte + wantErr string + }{ + {[]byte("artful-doger"), "not unmarshal bytes"}, + {[]byte(" "), "unmarshal bytes"}, + } + + for i, tt := range panicCausers { + // Expecting a panic here on trying to parse an invalid blockStore + _, _, panicErr := doFn(func() (interface{}, error) { + db.Set(blockStoreKey, tt.data) + _ = NewBlockStore(db) + return nil, nil + }) + require.NotNil(t, panicErr, "#%d panicCauser: %q expected a panic", i, tt.data) + assert.Contains(t, panicErr.Error(), tt.wantErr, "#%d data: %q", i, tt.data) + } + + db.Set(blockStoreKey, nil) + bs = NewBlockStore(db) + assert.Equal(t, bs.Height(), int64(0), "expecting nil bytes to be unmarshaled alright") +} + +func freshBlockStore() (*BlockStore, db.DB) { + db := db.NewMemDB() + return NewBlockStore(db), db +} + +var ( + state, _ = makeStateAndBlockStore(log.NewTMLogger(new(bytes.Buffer))) + + block = makeBlock(1, state) + partSet = block.MakePartSet(2) + part1 = partSet.GetPart(0) + part2 = partSet.GetPart(1) + seenCommit1 = &types.Commit{Precommits: []*types.Vote{{Height: 10, + Timestamp: time.Now().UTC()}}} +) + +// TODO: This test should be simplified ... + +func TestBlockStoreSaveLoadBlock(t *testing.T) { + state, bs := makeStateAndBlockStore(log.NewTMLogger(new(bytes.Buffer))) + require.Equal(t, bs.Height(), int64(0), "initially the height should be zero") + + // check there are no blocks at various heights + noBlockHeights := []int64{0, -1, 100, 1000, 2} + for i, height := range noBlockHeights { + if g := bs.LoadBlock(height); g != nil { + t.Errorf("#%d: height(%d) got a block; want nil", i, height) + } + } + + // save a block + block := makeBlock(bs.Height()+1, state) + validPartSet := block.MakePartSet(2) + seenCommit := &types.Commit{Precommits: []*types.Vote{{Height: 10, + Timestamp: time.Now().UTC()}}} + bs.SaveBlock(block, partSet, seenCommit) + require.Equal(t, bs.Height(), block.Header.Height, "expecting the new height to be changed") + + incompletePartSet := types.NewPartSetFromHeader(types.PartSetHeader{Total: 2}) + uncontiguousPartSet := types.NewPartSetFromHeader(types.PartSetHeader{Total: 0}) + uncontiguousPartSet.AddPart(part2) + + header1 := types.Header{ + Height: 1, + NumTxs: 100, + ChainID: "block_test", + Time: time.Now(), + } + header2 := header1 + header2.Height = 4 + + // End of setup, test data + + commitAtH10 := &types.Commit{Precommits: []*types.Vote{{Height: 10, + Timestamp: time.Now().UTC()}}} + tuples := []struct { + block *types.Block + parts *types.PartSet + seenCommit *types.Commit + wantErr bool + wantPanic string + + corruptBlockInDB bool + corruptCommitInDB bool + corruptSeenCommitInDB bool + eraseCommitInDB bool + eraseSeenCommitInDB bool + }{ + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + }, + + { + block: nil, + wantPanic: "only save a non-nil block", + }, + + { + block: newBlock(&header2, commitAtH10), + parts: uncontiguousPartSet, + wantPanic: "only save contiguous blocks", // and incomplete and uncontiguous parts + }, + + { + block: newBlock(&header1, commitAtH10), + parts: incompletePartSet, + wantPanic: "only save complete block", // incomplete parts + }, + + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + corruptCommitInDB: true, // Corrupt the DB's commit entry + wantPanic: "Error reading block commit", + }, + + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + wantPanic: "Error reading block", + corruptBlockInDB: true, // Corrupt the DB's block entry + }, + + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + + // Expecting no error and we want a nil back + eraseSeenCommitInDB: true, + }, + + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + + corruptSeenCommitInDB: true, + wantPanic: "Error reading block seen commit", + }, + + { + block: newBlock(&header1, commitAtH10), + parts: validPartSet, + seenCommit: seenCommit1, + + // Expecting no error and we want a nil back + eraseCommitInDB: true, + }, + } + + type quad struct { + block *types.Block + commit *types.Commit + meta *types.BlockMeta + + seenCommit *types.Commit + } + + for i, tuple := range tuples { + bs, db := freshBlockStore() + // SaveBlock + res, err, panicErr := doFn(func() (interface{}, error) { + bs.SaveBlock(tuple.block, tuple.parts, tuple.seenCommit) + if tuple.block == nil { + return nil, nil + } + + if tuple.corruptBlockInDB { + db.Set(calcBlockMetaKey(tuple.block.Height), []byte("block-bogus")) + } + bBlock := bs.LoadBlock(tuple.block.Height) + bBlockMeta := bs.LoadBlockMeta(tuple.block.Height) + + if tuple.eraseSeenCommitInDB { + db.Delete(calcSeenCommitKey(tuple.block.Height)) + } + if tuple.corruptSeenCommitInDB { + db.Set(calcSeenCommitKey(tuple.block.Height), []byte("bogus-seen-commit")) + } + bSeenCommit := bs.LoadSeenCommit(tuple.block.Height) + + commitHeight := tuple.block.Height - 1 + if tuple.eraseCommitInDB { + db.Delete(calcBlockCommitKey(commitHeight)) + } + if tuple.corruptCommitInDB { + db.Set(calcBlockCommitKey(commitHeight), []byte("foo-bogus")) + } + bCommit := bs.LoadBlockCommit(commitHeight) + return &quad{block: bBlock, seenCommit: bSeenCommit, commit: bCommit, + meta: bBlockMeta}, nil + }) + + if subStr := tuple.wantPanic; subStr != "" { + if panicErr == nil { + t.Errorf("#%d: want a non-nil panic", i) + } else if got := panicErr.Error(); !strings.Contains(got, subStr) { + t.Errorf("#%d:\n\tgotErr: %q\nwant substring: %q", i, got, subStr) + } + continue + } + + if tuple.wantErr { + if err == nil { + t.Errorf("#%d: got nil error", i) + } + continue + } + + assert.Nil(t, panicErr, "#%d: unexpected panic", i) + assert.Nil(t, err, "#%d: expecting a non-nil error", i) + qua, ok := res.(*quad) + if !ok || qua == nil { + t.Errorf("#%d: got nil quad back; gotType=%T", i, res) + continue + } + if tuple.eraseSeenCommitInDB { + assert.Nil(t, qua.seenCommit, + "erased the seenCommit in the DB hence we should get back a nil seenCommit") + } + if tuple.eraseCommitInDB { + assert.Nil(t, qua.commit, + "erased the commit in the DB hence we should get back a nil commit") + } + } +} + +func TestLoadBlockPart(t *testing.T) { + bs, db := freshBlockStore() + height, index := int64(10), 1 + loadPart := func() (interface{}, error) { + part := bs.LoadBlockPart(height, index) + return part, nil + } + + // Initially no contents. + // 1. Requesting for a non-existent block shouldn't fail + res, _, panicErr := doFn(loadPart) + require.Nil(t, panicErr, "a non-existent block part shouldn't cause a panic") + require.Nil(t, res, "a non-existent block part should return nil") + + // 2. Next save a corrupted block then try to load it + db.Set(calcBlockPartKey(height, index), []byte("Tendermint")) + res, _, panicErr = doFn(loadPart) + require.NotNil(t, panicErr, "expecting a non-nil panic") + require.Contains(t, panicErr.Error(), "Error reading block part") + + // 3. A good block serialized and saved to the DB should be retrievable + db.Set(calcBlockPartKey(height, index), cdc.MustMarshalBinaryBare(part1)) + gotPart, _, panicErr := doFn(loadPart) + require.Nil(t, panicErr, "an existent and proper block should not panic") + require.Nil(t, res, "a properly saved block should return a proper block") + require.Equal(t, gotPart.(*types.Part).Hash(), part1.Hash(), + "expecting successful retrieval of previously saved block") +} + +func TestLoadBlockMeta(t *testing.T) { + bs, db := freshBlockStore() + height := int64(10) + loadMeta := func() (interface{}, error) { + meta := bs.LoadBlockMeta(height) + return meta, nil + } + + // Initially no contents. + // 1. Requesting for a non-existent blockMeta shouldn't fail + res, _, panicErr := doFn(loadMeta) + require.Nil(t, panicErr, "a non-existent blockMeta shouldn't cause a panic") + require.Nil(t, res, "a non-existent blockMeta should return nil") + + // 2. Next save a corrupted blockMeta then try to load it + db.Set(calcBlockMetaKey(height), []byte("Tendermint-Meta")) + res, _, panicErr = doFn(loadMeta) + require.NotNil(t, panicErr, "expecting a non-nil panic") + require.Contains(t, panicErr.Error(), "Error reading block meta") + + // 3. A good blockMeta serialized and saved to the DB should be retrievable + meta := &types.BlockMeta{} + db.Set(calcBlockMetaKey(height), cdc.MustMarshalBinaryBare(meta)) + gotMeta, _, panicErr := doFn(loadMeta) + require.Nil(t, panicErr, "an existent and proper block should not panic") + require.Nil(t, res, "a properly saved blockMeta should return a proper blocMeta ") + require.Equal(t, cdc.MustMarshalBinaryBare(meta), cdc.MustMarshalBinaryBare(gotMeta), + "expecting successful retrieval of previously saved blockMeta") +} + +func TestBlockFetchAtHeight(t *testing.T) { + state, bs := makeStateAndBlockStore(log.NewTMLogger(new(bytes.Buffer))) + require.Equal(t, bs.Height(), int64(0), "initially the height should be zero") + block := makeBlock(bs.Height()+1, state) + + partSet := block.MakePartSet(2) + seenCommit := &types.Commit{Precommits: []*types.Vote{{Height: 10, + Timestamp: time.Now().UTC()}}} + + bs.SaveBlock(block, partSet, seenCommit) + require.Equal(t, bs.Height(), block.Header.Height, "expecting the new height to be changed") + + blockAtHeight := bs.LoadBlock(bs.Height()) + bz1 := cdc.MustMarshalBinaryBare(block) + bz2 := cdc.MustMarshalBinaryBare(blockAtHeight) + require.Equal(t, bz1, bz2) + require.Equal(t, block.Hash(), blockAtHeight.Hash(), + "expecting a successful load of the last saved block") + + blockAtHeightPlus1 := bs.LoadBlock(bs.Height() + 1) + require.Nil(t, blockAtHeightPlus1, "expecting an unsuccessful load of Height()+1") + blockAtHeightPlus2 := bs.LoadBlock(bs.Height() + 2) + require.Nil(t, blockAtHeightPlus2, "expecting an unsuccessful load of Height()+2") +} + +func doFn(fn func() (interface{}, error)) (res interface{}, err error, panicErr error) { + defer func() { + if r := recover(); r != nil { + switch e := r.(type) { + case error: + panicErr = e + case string: + panicErr = fmt.Errorf("%s", e) + default: + if st, ok := r.(fmt.Stringer); ok { + panicErr = fmt.Errorf("%s", st) + } else { + panicErr = fmt.Errorf("%s", debug.Stack()) + } + } + } + }() + + res, err = fn() + return res, err, panicErr +} + +func newBlock(hdr *types.Header, lastCommit *types.Commit) *types.Block { + return &types.Block{ + Header: hdr, + LastCommit: lastCommit, + } +} diff --git a/blockchain/wire.go b/blockchain/wire.go new file mode 100644 index 000000000..70b50565d --- /dev/null +++ b/blockchain/wire.go @@ -0,0 +1,13 @@ +package blockchain + +import ( + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/crypto" +) + +var cdc = amino.NewCodec() + +func init() { + RegisterBlockchainMessages(cdc) + crypto.RegisterAmino(cdc) +} diff --git a/cmd/priv_val_server/main.go b/cmd/priv_val_server/main.go new file mode 100644 index 000000000..ac7dd91ba --- /dev/null +++ b/cmd/priv_val_server/main.go @@ -0,0 +1,53 @@ +package main + +import ( + "flag" + "os" + + crypto "github.com/tendermint/tendermint/crypto" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/tendermint/privval" +) + +func main() { + var ( + addr = flag.String("addr", ":26659", "Address of client to connect to") + chainID = flag.String("chain-id", "mychain", "chain id") + privValPath = flag.String("priv", "", "priv val file path") + + logger = log.NewTMLogger( + log.NewSyncWriter(os.Stdout), + ).With("module", "priv_val") + ) + flag.Parse() + + logger.Info( + "Starting private validator", + "addr", *addr, + "chainID", *chainID, + "privPath", *privValPath, + ) + + pv := privval.LoadFilePV(*privValPath) + + rs := privval.NewRemoteSigner( + logger, + *chainID, + *addr, + pv, + crypto.GenPrivKeyEd25519(), + ) + err := rs.Start() + if err != nil { + panic(err) + } + + cmn.TrapSignal(func() { + err := rs.Stop() + if err != nil { + panic(err) + } + }) +} diff --git a/cmd/tendermint/commands/gen_node_key.go b/cmd/tendermint/commands/gen_node_key.go new file mode 100644 index 000000000..4990be477 --- /dev/null +++ b/cmd/tendermint/commands/gen_node_key.go @@ -0,0 +1,32 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/p2p" + cmn "github.com/tendermint/tmlibs/common" +) + +// GenNodeKeyCmd allows the generation of a node key. It prints node's ID to +// the standard output. +var GenNodeKeyCmd = &cobra.Command{ + Use: "gen_node_key", + Short: "Generate a node key for this node and print its ID", + RunE: genNodeKey, +} + +func genNodeKey(cmd *cobra.Command, args []string) error { + nodeKeyFile := config.NodeKeyFile() + if cmn.FileExists(nodeKeyFile) { + return fmt.Errorf("node key at %s already exists", nodeKeyFile) + } + + nodeKey, err := p2p.LoadOrGenNodeKey(nodeKeyFile) + if err != nil { + return err + } + fmt.Println(nodeKey.ID()) + return nil +} diff --git a/cmd/tendermint/commands/gen_validator.go b/cmd/tendermint/commands/gen_validator.go new file mode 100644 index 000000000..20d43d4dd --- /dev/null +++ b/cmd/tendermint/commands/gen_validator.go @@ -0,0 +1,27 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/privval" +) + +// GenValidatorCmd allows the generation of a keypair for a +// validator. +var GenValidatorCmd = &cobra.Command{ + Use: "gen_validator", + Short: "Generate new validator keypair", + Run: genValidator, +} + +func genValidator(cmd *cobra.Command, args []string) { + pv := privval.GenFilePV("") + jsbz, err := cdc.MarshalJSON(pv) + if err != nil { + panic(err) + } + fmt.Printf(`%v +`, string(jsbz)) +} diff --git a/cmd/tendermint/commands/init.go b/cmd/tendermint/commands/init.go new file mode 100644 index 000000000..45812b9ed --- /dev/null +++ b/cmd/tendermint/commands/init.go @@ -0,0 +1,70 @@ +package commands + +import ( + "time" + + "github.com/spf13/cobra" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/privval" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +// InitFilesCmd initialises a fresh Tendermint Core instance. +var InitFilesCmd = &cobra.Command{ + Use: "init", + Short: "Initialize Tendermint", + RunE: initFiles, +} + +func initFiles(cmd *cobra.Command, args []string) error { + return initFilesWithConfig(config) +} + +func initFilesWithConfig(config *cfg.Config) error { + // private validator + privValFile := config.PrivValidatorFile() + var pv *privval.FilePV + if cmn.FileExists(privValFile) { + pv = privval.LoadFilePV(privValFile) + logger.Info("Found private validator", "path", privValFile) + } else { + pv = privval.GenFilePV(privValFile) + pv.Save() + logger.Info("Generated private validator", "path", privValFile) + } + + nodeKeyFile := config.NodeKeyFile() + if cmn.FileExists(nodeKeyFile) { + logger.Info("Found node key", "path", nodeKeyFile) + } else { + if _, err := p2p.LoadOrGenNodeKey(nodeKeyFile); err != nil { + return err + } + logger.Info("Generated node key", "path", nodeKeyFile) + } + + // genesis file + genFile := config.GenesisFile() + if cmn.FileExists(genFile) { + logger.Info("Found genesis file", "path", genFile) + } else { + genDoc := types.GenesisDoc{ + ChainID: cmn.Fmt("test-chain-%v", cmn.RandStr(6)), + GenesisTime: time.Now(), + } + genDoc.Validators = []types.GenesisValidator{{ + PubKey: pv.GetPubKey(), + Power: 10, + }} + + if err := genDoc.SaveAs(genFile); err != nil { + return err + } + logger.Info("Generated genesis file", "path", genFile) + } + + return nil +} diff --git a/cmd/tendermint/commands/lite.go b/cmd/tendermint/commands/lite.go new file mode 100644 index 000000000..6987b7f19 --- /dev/null +++ b/cmd/tendermint/commands/lite.go @@ -0,0 +1,87 @@ +package commands + +import ( + "fmt" + "net/url" + + "github.com/spf13/cobra" + + cmn "github.com/tendermint/tmlibs/common" + + "github.com/tendermint/tendermint/lite/proxy" + rpcclient "github.com/tendermint/tendermint/rpc/client" +) + +// LiteCmd represents the base command when called without any subcommands +var LiteCmd = &cobra.Command{ + Use: "lite", + Short: "Run lite-client proxy server, verifying tendermint rpc", + Long: `This node will run a secure proxy to a tendermint rpc server. + +All calls that can be tracked back to a block header by a proof +will be verified before passing them back to the caller. Other that +that it will present the same interface as a full tendermint node, +just with added trust and running locally.`, + RunE: runProxy, + SilenceUsage: true, +} + +var ( + listenAddr string + nodeAddr string + chainID string + home string +) + +func init() { + LiteCmd.Flags().StringVar(&listenAddr, "laddr", "tcp://localhost:8888", "Serve the proxy on the given address") + LiteCmd.Flags().StringVar(&nodeAddr, "node", "tcp://localhost:26657", "Connect to a Tendermint node at this address") + LiteCmd.Flags().StringVar(&chainID, "chain-id", "tendermint", "Specify the Tendermint chain ID") + LiteCmd.Flags().StringVar(&home, "home-dir", ".tendermint-lite", "Specify the home directory") +} + +func ensureAddrHasSchemeOrDefaultToTCP(addr string) (string, error) { + u, err := url.Parse(addr) + if err != nil { + return "", err + } + switch u.Scheme { + case "tcp", "unix": + case "": + u.Scheme = "tcp" + default: + return "", fmt.Errorf("unknown scheme %q, use either tcp or unix", u.Scheme) + } + return u.String(), nil +} + +func runProxy(cmd *cobra.Command, args []string) error { + nodeAddr, err := ensureAddrHasSchemeOrDefaultToTCP(nodeAddr) + if err != nil { + return err + } + listenAddr, err := ensureAddrHasSchemeOrDefaultToTCP(listenAddr) + if err != nil { + return err + } + + // First, connect a client + node := rpcclient.NewHTTP(nodeAddr, "/websocket") + + cert, err := proxy.GetCertifier(chainID, home, nodeAddr) + if err != nil { + return err + } + sc := proxy.SecureClient(node, cert) + + err = proxy.StartProxy(sc, listenAddr, logger) + if err != nil { + return err + } + + cmn.TrapSignal(func() { + // TODO: close up shop + }) + + return nil +} diff --git a/cmd/tendermint/commands/probe_upnp.go b/cmd/tendermint/commands/probe_upnp.go new file mode 100644 index 000000000..35c3c354d --- /dev/null +++ b/cmd/tendermint/commands/probe_upnp.go @@ -0,0 +1,31 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/p2p/upnp" +) + +// ProbeUpnpCmd adds capabilities to test the UPnP functionality. +var ProbeUpnpCmd = &cobra.Command{ + Use: "probe_upnp", + Short: "Test UPnP functionality", + RunE: probeUpnp, +} + +func probeUpnp(cmd *cobra.Command, args []string) error { + capabilities, err := upnp.Probe(logger) + if err != nil { + fmt.Println("Probe failed: ", err) + } else { + fmt.Println("Probe success!") + jsonBytes, err := cdc.MarshalJSON(capabilities) + if err != nil { + return err + } + fmt.Println(string(jsonBytes)) + } + return nil +} diff --git a/cmd/tendermint/commands/replay.go b/cmd/tendermint/commands/replay.go new file mode 100644 index 000000000..303ccba6b --- /dev/null +++ b/cmd/tendermint/commands/replay.go @@ -0,0 +1,26 @@ +package commands + +import ( + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/consensus" +) + +// ReplayCmd allows replaying of messages from the WAL. +var ReplayCmd = &cobra.Command{ + Use: "replay", + Short: "Replay messages from WAL", + Run: func(cmd *cobra.Command, args []string) { + consensus.RunReplayFile(config.BaseConfig, config.Consensus, false) + }, +} + +// ReplayConsoleCmd allows replaying of messages from the WAL in a +// console. +var ReplayConsoleCmd = &cobra.Command{ + Use: "replay_console", + Short: "Replay messages from WAL in a console", + Run: func(cmd *cobra.Command, args []string) { + consensus.RunReplayFile(config.BaseConfig, config.Consensus, true) + }, +} diff --git a/cmd/tendermint/commands/reset_priv_validator.go b/cmd/tendermint/commands/reset_priv_validator.go new file mode 100644 index 000000000..32d7b1433 --- /dev/null +++ b/cmd/tendermint/commands/reset_priv_validator.go @@ -0,0 +1,69 @@ +package commands + +import ( + "os" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/privval" + "github.com/tendermint/tmlibs/log" +) + +// ResetAllCmd removes the database of this Tendermint core +// instance. +var ResetAllCmd = &cobra.Command{ + Use: "unsafe_reset_all", + Short: "(unsafe) Remove all the data and WAL, reset this node's validator to genesis state", + Run: resetAll, +} + +// ResetPrivValidatorCmd resets the private validator files. +var ResetPrivValidatorCmd = &cobra.Command{ + Use: "unsafe_reset_priv_validator", + Short: "(unsafe) Reset this node's validator to genesis state", + Run: resetPrivValidator, +} + +// XXX: this is totally unsafe. +// it's only suitable for testnets. +func resetAll(cmd *cobra.Command, args []string) { + ResetAll(config.DBDir(), config.P2P.AddrBookFile(), config.PrivValidatorFile(), logger) +} + +// XXX: this is totally unsafe. +// it's only suitable for testnets. +func resetPrivValidator(cmd *cobra.Command, args []string) { + resetFilePV(config.PrivValidatorFile(), logger) +} + +// ResetAll removes the privValidator and address book files plus all data. +// Exported so other CLI tools can use it. +func ResetAll(dbDir, addrBookFile, privValFile string, logger log.Logger) { + resetFilePV(privValFile, logger) + removeAddrBook(addrBookFile, logger) + if err := os.RemoveAll(dbDir); err == nil { + logger.Info("Removed all blockchain history", "dir", dbDir) + } else { + logger.Error("Error removing all blockchain history", "dir", dbDir, "err", err) + } +} + +func resetFilePV(privValFile string, logger log.Logger) { + if _, err := os.Stat(privValFile); err == nil { + pv := privval.LoadFilePV(privValFile) + pv.Reset() + logger.Info("Reset private validator file to genesis state", "file", privValFile) + } else { + pv := privval.GenFilePV(privValFile) + pv.Save() + logger.Info("Generated private validator file", "file", privValFile) + } +} + +func removeAddrBook(addrBookFile string, logger log.Logger) { + if err := os.Remove(addrBookFile); err == nil { + logger.Info("Removed existing address book", "file", addrBookFile) + } else if !os.IsNotExist(err) { + logger.Info("Error removing address book", "file", addrBookFile, "err", err) + } +} diff --git a/cmd/tendermint/commands/root.go b/cmd/tendermint/commands/root.go new file mode 100644 index 000000000..f229a7889 --- /dev/null +++ b/cmd/tendermint/commands/root.go @@ -0,0 +1,63 @@ +package commands + +import ( + "os" + + "github.com/spf13/cobra" + "github.com/spf13/viper" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tmlibs/cli" + tmflags "github.com/tendermint/tmlibs/cli/flags" + "github.com/tendermint/tmlibs/log" +) + +var ( + config = cfg.DefaultConfig() + logger = log.NewTMLogger(log.NewSyncWriter(os.Stdout)) +) + +func init() { + registerFlagsRootCmd(RootCmd) +} + +func registerFlagsRootCmd(cmd *cobra.Command) { + cmd.PersistentFlags().String("log_level", config.LogLevel, "Log level") +} + +// ParseConfig retrieves the default environment configuration, +// sets up the Tendermint root and ensures that the root exists +func ParseConfig() (*cfg.Config, error) { + conf := cfg.DefaultConfig() + err := viper.Unmarshal(conf) + if err != nil { + return nil, err + } + conf.SetRoot(conf.RootDir) + cfg.EnsureRoot(conf.RootDir) + return conf, err +} + +// RootCmd is the root command for Tendermint core. +var RootCmd = &cobra.Command{ + Use: "tendermint", + Short: "Tendermint Core (BFT Consensus) in Go", + PersistentPreRunE: func(cmd *cobra.Command, args []string) (err error) { + if cmd.Name() == VersionCmd.Name() { + return nil + } + config, err = ParseConfig() + if err != nil { + return err + } + logger, err = tmflags.ParseLogLevel(config.LogLevel, logger, cfg.DefaultLogLevel()) + if err != nil { + return err + } + if viper.GetBool(cli.TraceFlag) { + logger = log.NewTracingLogger(logger) + } + logger = logger.With("module", "main") + return nil + }, +} diff --git a/cmd/tendermint/commands/root_test.go b/cmd/tendermint/commands/root_test.go new file mode 100644 index 000000000..59d258af7 --- /dev/null +++ b/cmd/tendermint/commands/root_test.go @@ -0,0 +1,176 @@ +package commands + +import ( + "fmt" + "io/ioutil" + "os" + "path/filepath" + "strconv" + "testing" + + "github.com/spf13/cobra" + "github.com/spf13/viper" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tmlibs/cli" + cmn "github.com/tendermint/tmlibs/common" +) + +var ( + defaultRoot = os.ExpandEnv("$HOME/.some/test/dir") +) + +const ( + rootName = "root" +) + +// clearConfig clears env vars, the given root dir, and resets viper. +func clearConfig(dir string) { + if err := os.Unsetenv("TMHOME"); err != nil { + panic(err) + } + if err := os.Unsetenv("TM_HOME"); err != nil { + panic(err) + } + + if err := os.RemoveAll(dir); err != nil { + panic(err) + } + viper.Reset() + config = cfg.DefaultConfig() +} + +// prepare new rootCmd +func testRootCmd() *cobra.Command { + rootCmd := &cobra.Command{ + Use: RootCmd.Use, + PersistentPreRunE: RootCmd.PersistentPreRunE, + Run: func(cmd *cobra.Command, args []string) {}, + } + registerFlagsRootCmd(rootCmd) + var l string + rootCmd.PersistentFlags().String("log", l, "Log") + return rootCmd +} + +func testSetup(rootDir string, args []string, env map[string]string) error { + clearConfig(defaultRoot) + + rootCmd := testRootCmd() + cmd := cli.PrepareBaseCmd(rootCmd, "TM", defaultRoot) + + // run with the args and env + args = append([]string{rootCmd.Use}, args...) + return cli.RunWithArgs(cmd, args, env) +} + +func TestRootHome(t *testing.T) { + newRoot := filepath.Join(defaultRoot, "something-else") + cases := []struct { + args []string + env map[string]string + root string + }{ + {nil, nil, defaultRoot}, + {[]string{"--home", newRoot}, nil, newRoot}, + {nil, map[string]string{"TMHOME": newRoot}, newRoot}, + } + + for i, tc := range cases { + idxString := strconv.Itoa(i) + + err := testSetup(defaultRoot, tc.args, tc.env) + require.Nil(t, err, idxString) + + assert.Equal(t, tc.root, config.RootDir, idxString) + assert.Equal(t, tc.root, config.P2P.RootDir, idxString) + assert.Equal(t, tc.root, config.Consensus.RootDir, idxString) + assert.Equal(t, tc.root, config.Mempool.RootDir, idxString) + } +} + +func TestRootFlagsEnv(t *testing.T) { + + // defaults + defaults := cfg.DefaultConfig() + defaultLogLvl := defaults.LogLevel + + cases := []struct { + args []string + env map[string]string + logLevel string + }{ + {[]string{"--log", "debug"}, nil, defaultLogLvl}, // wrong flag + {[]string{"--log_level", "debug"}, nil, "debug"}, // right flag + {nil, map[string]string{"TM_LOW": "debug"}, defaultLogLvl}, // wrong env flag + {nil, map[string]string{"MT_LOG_LEVEL": "debug"}, defaultLogLvl}, // wrong env prefix + {nil, map[string]string{"TM_LOG_LEVEL": "debug"}, "debug"}, // right env + } + + for i, tc := range cases { + idxString := strconv.Itoa(i) + + err := testSetup(defaultRoot, tc.args, tc.env) + require.Nil(t, err, idxString) + + assert.Equal(t, tc.logLevel, config.LogLevel, idxString) + } +} + +func TestRootConfig(t *testing.T) { + + // write non-default config + nonDefaultLogLvl := "abc:debug" + cvals := map[string]string{ + "log_level": nonDefaultLogLvl, + } + + cases := []struct { + args []string + env map[string]string + + logLvl string + }{ + {nil, nil, nonDefaultLogLvl}, // should load config + {[]string{"--log_level=abc:info"}, nil, "abc:info"}, // flag over rides + {nil, map[string]string{"TM_LOG_LEVEL": "abc:info"}, "abc:info"}, // env over rides + } + + for i, tc := range cases { + idxString := strconv.Itoa(i) + clearConfig(defaultRoot) + + // XXX: path must match cfg.defaultConfigPath + configFilePath := filepath.Join(defaultRoot, "config") + err := cmn.EnsureDir(configFilePath, 0700) + require.Nil(t, err) + + // write the non-defaults to a different path + // TODO: support writing sub configs so we can test that too + err = WriteConfigVals(configFilePath, cvals) + require.Nil(t, err) + + rootCmd := testRootCmd() + cmd := cli.PrepareBaseCmd(rootCmd, "TM", defaultRoot) + + // run with the args and env + tc.args = append([]string{rootCmd.Use}, tc.args...) + err = cli.RunWithArgs(cmd, tc.args, tc.env) + require.Nil(t, err, idxString) + + assert.Equal(t, tc.logLvl, config.LogLevel, idxString) + } +} + +// WriteConfigVals writes a toml file with the given values. +// It returns an error if writing was impossible. +func WriteConfigVals(dir string, vals map[string]string) error { + data := "" + for k, v := range vals { + data = data + fmt.Sprintf("%s = \"%s\"\n", k, v) + } + cfile := filepath.Join(dir, "config.toml") + return ioutil.WriteFile(cfile, []byte(data), 0666) +} diff --git a/cmd/tendermint/commands/run_node.go b/cmd/tendermint/commands/run_node.go new file mode 100644 index 000000000..0d50f9e4b --- /dev/null +++ b/cmd/tendermint/commands/run_node.go @@ -0,0 +1,72 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + nm "github.com/tendermint/tendermint/node" +) + +// AddNodeFlags exposes some common configuration options on the command-line +// These are exposed for convenience of commands embedding a tendermint node +func AddNodeFlags(cmd *cobra.Command) { + // bind flags + cmd.Flags().String("moniker", config.Moniker, "Node Name") + + // priv val flags + cmd.Flags().String("priv_validator_laddr", config.PrivValidatorListenAddr, "Socket address to listen on for connections from external priv_validator process") + + // node flags + cmd.Flags().Bool("fast_sync", config.FastSync, "Fast blockchain syncing") + + // abci flags + cmd.Flags().String("proxy_app", config.ProxyApp, "Proxy app address, or 'nilapp' or 'kvstore' for local testing.") + cmd.Flags().String("abci", config.ABCI, "Specify abci transport (socket | grpc)") + + // rpc flags + cmd.Flags().String("rpc.laddr", config.RPC.ListenAddress, "RPC listen address. Port required") + cmd.Flags().String("rpc.grpc_laddr", config.RPC.GRPCListenAddress, "GRPC listen address (BroadcastTx only). Port required") + cmd.Flags().Bool("rpc.unsafe", config.RPC.Unsafe, "Enabled unsafe rpc methods") + + // p2p flags + cmd.Flags().String("p2p.laddr", config.P2P.ListenAddress, "Node listen address. (0.0.0.0:0 means any interface, any port)") + cmd.Flags().String("p2p.seeds", config.P2P.Seeds, "Comma-delimited ID@host:port seed nodes") + cmd.Flags().String("p2p.persistent_peers", config.P2P.PersistentPeers, "Comma-delimited ID@host:port persistent peers") + cmd.Flags().Bool("p2p.skip_upnp", config.P2P.SkipUPNP, "Skip UPNP configuration") + cmd.Flags().Bool("p2p.pex", config.P2P.PexReactor, "Enable/disable Peer-Exchange") + cmd.Flags().Bool("p2p.seed_mode", config.P2P.SeedMode, "Enable/disable seed mode") + cmd.Flags().String("p2p.private_peer_ids", config.P2P.PrivatePeerIDs, "Comma-delimited private peer IDs") + + // consensus flags + cmd.Flags().Bool("consensus.create_empty_blocks", config.Consensus.CreateEmptyBlocks, "Set this to false to only produce blocks when there are txs or when the AppHash changes") +} + +// NewRunNodeCmd returns the command that allows the CLI to start a node. +// It can be used with a custom PrivValidator and in-process ABCI application. +func NewRunNodeCmd(nodeProvider nm.NodeProvider) *cobra.Command { + cmd := &cobra.Command{ + Use: "node", + Short: "Run the tendermint node", + RunE: func(cmd *cobra.Command, args []string) error { + // Create & start node + n, err := nodeProvider(config, logger) + if err != nil { + return fmt.Errorf("Failed to create node: %v", err) + } + + if err := n.Start(); err != nil { + return fmt.Errorf("Failed to start node: %v", err) + } + logger.Info("Started node", "nodeInfo", n.Switch().NodeInfo()) + + // Trap signal, run forever. + n.RunForever() + + return nil + }, + } + + AddNodeFlags(cmd) + return cmd +} diff --git a/cmd/tendermint/commands/show_node_id.go b/cmd/tendermint/commands/show_node_id.go new file mode 100644 index 000000000..02ab1a9bb --- /dev/null +++ b/cmd/tendermint/commands/show_node_id.go @@ -0,0 +1,27 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/p2p" +) + +// ShowNodeIDCmd dumps node's ID to the standard output. +var ShowNodeIDCmd = &cobra.Command{ + Use: "show_node_id", + Short: "Show this node's ID", + RunE: showNodeID, +} + +func showNodeID(cmd *cobra.Command, args []string) error { + + nodeKey, err := p2p.LoadNodeKey(config.NodeKeyFile()) + if err != nil { + return err + } + fmt.Println(nodeKey.ID()) + + return nil +} diff --git a/cmd/tendermint/commands/show_validator.go b/cmd/tendermint/commands/show_validator.go new file mode 100644 index 000000000..54765164b --- /dev/null +++ b/cmd/tendermint/commands/show_validator.go @@ -0,0 +1,22 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/privval" +) + +// ShowValidatorCmd adds capabilities for showing the validator info. +var ShowValidatorCmd = &cobra.Command{ + Use: "show_validator", + Short: "Show this node's validator info", + Run: showValidator, +} + +func showValidator(cmd *cobra.Command, args []string) { + privValidator := privval.LoadOrGenFilePV(config.PrivValidatorFile()) + pubKeyJSONBytes, _ := cdc.MarshalJSON(privValidator.GetPubKey()) + fmt.Println(string(pubKeyJSONBytes)) +} diff --git a/cmd/tendermint/commands/testnet.go b/cmd/tendermint/commands/testnet.go new file mode 100644 index 000000000..29d29502e --- /dev/null +++ b/cmd/tendermint/commands/testnet.go @@ -0,0 +1,183 @@ +package commands + +import ( + "fmt" + "net" + "os" + "path/filepath" + "strings" + "time" + + "github.com/spf13/cobra" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/privval" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +var ( + nValidators int + nNonValidators int + outputDir string + nodeDirPrefix string + + populatePersistentPeers bool + hostnamePrefix string + startingIPAddress string + p2pPort int +) + +const ( + nodeDirPerm = 0755 +) + +func init() { + TestnetFilesCmd.Flags().IntVar(&nValidators, "v", 4, + "Number of validators to initialize the testnet with") + TestnetFilesCmd.Flags().IntVar(&nNonValidators, "n", 0, + "Number of non-validators to initialize the testnet with") + TestnetFilesCmd.Flags().StringVar(&outputDir, "o", "./mytestnet", + "Directory to store initialization data for the testnet") + TestnetFilesCmd.Flags().StringVar(&nodeDirPrefix, "node-dir-prefix", "node", + "Prefix the directory name for each node with (node results in node0, node1, ...)") + + TestnetFilesCmd.Flags().BoolVar(&populatePersistentPeers, "populate-persistent-peers", true, + "Update config of each node with the list of persistent peers build using either hostname-prefix or starting-ip-address") + TestnetFilesCmd.Flags().StringVar(&hostnamePrefix, "hostname-prefix", "node", + "Hostname prefix (node results in persistent peers list ID0@node0:26656, ID1@node1:26656, ...)") + TestnetFilesCmd.Flags().StringVar(&startingIPAddress, "starting-ip-address", "", + "Starting IP address (192.168.0.1 results in persistent peers list ID0@192.168.0.1:26656, ID1@192.168.0.2:26656, ...)") + TestnetFilesCmd.Flags().IntVar(&p2pPort, "p2p-port", 26656, + "P2P Port") +} + +// TestnetFilesCmd allows initialisation of files for a Tendermint testnet. +var TestnetFilesCmd = &cobra.Command{ + Use: "testnet", + Short: "Initialize files for a Tendermint testnet", + Long: `testnet will create "v" + "n" number of directories and populate each with +necessary files (private validator, genesis, config, etc.). + +Note, strict routability for addresses is turned off in the config file. + +Optionally, it will fill in persistent_peers list in config file using either hostnames or IPs. + +Example: + + tendermint testnet --v 4 --o ./output --populate-persistent-peers --starting-ip-address 192.168.10.2 + `, + RunE: testnetFiles, +} + +func testnetFiles(cmd *cobra.Command, args []string) error { + config := cfg.DefaultConfig() + genVals := make([]types.GenesisValidator, nValidators) + + for i := 0; i < nValidators; i++ { + nodeDirName := cmn.Fmt("%s%d", nodeDirPrefix, i) + nodeDir := filepath.Join(outputDir, nodeDirName) + config.SetRoot(nodeDir) + + err := os.MkdirAll(filepath.Join(nodeDir, "config"), nodeDirPerm) + if err != nil { + _ = os.RemoveAll(outputDir) + return err + } + + initFilesWithConfig(config) + + pvFile := filepath.Join(nodeDir, config.BaseConfig.PrivValidator) + pv := privval.LoadFilePV(pvFile) + genVals[i] = types.GenesisValidator{ + PubKey: pv.GetPubKey(), + Power: 1, + Name: nodeDirName, + } + } + + for i := 0; i < nNonValidators; i++ { + nodeDir := filepath.Join(outputDir, cmn.Fmt("%s%d", nodeDirPrefix, i+nValidators)) + config.SetRoot(nodeDir) + + err := os.MkdirAll(filepath.Join(nodeDir, "config"), nodeDirPerm) + if err != nil { + _ = os.RemoveAll(outputDir) + return err + } + + initFilesWithConfig(config) + } + + // Generate genesis doc from generated validators + genDoc := &types.GenesisDoc{ + GenesisTime: time.Now(), + ChainID: "chain-" + cmn.RandStr(6), + Validators: genVals, + } + + // Write genesis file. + for i := 0; i < nValidators+nNonValidators; i++ { + nodeDir := filepath.Join(outputDir, cmn.Fmt("%s%d", nodeDirPrefix, i)) + if err := genDoc.SaveAs(filepath.Join(nodeDir, config.BaseConfig.Genesis)); err != nil { + _ = os.RemoveAll(outputDir) + return err + } + } + + if populatePersistentPeers { + err := populatePersistentPeersInConfigAndWriteIt(config) + if err != nil { + _ = os.RemoveAll(outputDir) + return err + } + } + + fmt.Printf("Successfully initialized %v node directories\n", nValidators+nNonValidators) + return nil +} + +func hostnameOrIP(i int) string { + if startingIPAddress != "" { + ip := net.ParseIP(startingIPAddress) + ip = ip.To4() + if ip == nil { + fmt.Printf("%v: non ipv4 address\n", startingIPAddress) + os.Exit(1) + } + + for j := 0; j < i; j++ { + ip[3]++ + } + return ip.String() + } + + return fmt.Sprintf("%s%d", hostnamePrefix, i) +} + +func populatePersistentPeersInConfigAndWriteIt(config *cfg.Config) error { + persistentPeers := make([]string, nValidators+nNonValidators) + for i := 0; i < nValidators+nNonValidators; i++ { + nodeDir := filepath.Join(outputDir, cmn.Fmt("%s%d", nodeDirPrefix, i)) + config.SetRoot(nodeDir) + nodeKey, err := p2p.LoadNodeKey(config.NodeKeyFile()) + if err != nil { + return err + } + persistentPeers[i] = p2p.IDAddressString(nodeKey.ID(), fmt.Sprintf("%s:%d", hostnameOrIP(i), p2pPort)) + } + persistentPeersList := strings.Join(persistentPeers, ",") + + for i := 0; i < nValidators+nNonValidators; i++ { + nodeDir := filepath.Join(outputDir, cmn.Fmt("%s%d", nodeDirPrefix, i)) + config.SetRoot(nodeDir) + config.P2P.PersistentPeers = persistentPeersList + config.P2P.AddrBookStrict = false + + // overwrite default config + cfg.WriteConfigFile(filepath.Join(nodeDir, "config", "config.toml"), config) + } + + return nil +} diff --git a/cmd/tendermint/commands/version.go b/cmd/tendermint/commands/version.go new file mode 100644 index 000000000..f9f545e59 --- /dev/null +++ b/cmd/tendermint/commands/version.go @@ -0,0 +1,18 @@ +package commands + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/tendermint/version" +) + +// VersionCmd ... +var VersionCmd = &cobra.Command{ + Use: "version", + Short: "Show version info", + Run: func(cmd *cobra.Command, args []string) { + fmt.Println(version.Version) + }, +} diff --git a/cmd/tendermint/commands/wire.go b/cmd/tendermint/commands/wire.go new file mode 100644 index 000000000..a09019133 --- /dev/null +++ b/cmd/tendermint/commands/wire.go @@ -0,0 +1,12 @@ +package commands + +import ( + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/crypto" +) + +var cdc = amino.NewCodec() + +func init() { + crypto.RegisterAmino(cdc) +} diff --git a/cmd/tendermint/main.go b/cmd/tendermint/main.go new file mode 100644 index 000000000..8c7f0cd17 --- /dev/null +++ b/cmd/tendermint/main.go @@ -0,0 +1,48 @@ +package main + +import ( + "os" + "path/filepath" + + "github.com/tendermint/tmlibs/cli" + + cmd "github.com/tendermint/tendermint/cmd/tendermint/commands" + cfg "github.com/tendermint/tendermint/config" + nm "github.com/tendermint/tendermint/node" +) + +func main() { + rootCmd := cmd.RootCmd + rootCmd.AddCommand( + cmd.GenValidatorCmd, + cmd.InitFilesCmd, + cmd.ProbeUpnpCmd, + cmd.LiteCmd, + cmd.ReplayCmd, + cmd.ReplayConsoleCmd, + cmd.ResetAllCmd, + cmd.ResetPrivValidatorCmd, + cmd.ShowValidatorCmd, + cmd.TestnetFilesCmd, + cmd.ShowNodeIDCmd, + cmd.GenNodeKeyCmd, + cmd.VersionCmd) + + // NOTE: + // Users wishing to: + // * Use an external signer for their validators + // * Supply an in-proc abci app + // * Supply a genesis doc file from another source + // * Provide their own DB implementation + // can copy this file and use something other than the + // DefaultNewNode function + nodeFunc := nm.DefaultNewNode + + // Create & start node + rootCmd.AddCommand(cmd.NewRunNodeCmd(nodeFunc)) + + cmd := cli.PrepareBaseCmd(rootCmd, "TM", os.ExpandEnv(filepath.Join("$HOME", cfg.DefaultTendermintDir))) + if err := cmd.Execute(); err != nil { + panic(err) + } +} diff --git a/codecov.yml b/codecov.yml new file mode 100644 index 000000000..b190853de --- /dev/null +++ b/codecov.yml @@ -0,0 +1,23 @@ +coverage: + precision: 2 + round: down + range: "70...100" + + status: + project: + default: + threshold: 1% + patch: on + changes: off + +comment: + layout: "diff, files" + behavior: default + require_changes: no + require_base: no + require_head: yes + +ignore: + - "docs" + - "DOCKER" + - "scripts" diff --git a/config/config.go b/config/config.go new file mode 100644 index 000000000..418638a60 --- /dev/null +++ b/config/config.go @@ -0,0 +1,633 @@ +package config + +import ( + "fmt" + "os" + "path/filepath" + "time" +) + +const ( + // FuzzModeDrop is a mode in which we randomly drop reads/writes, connections or sleep + FuzzModeDrop = iota + // FuzzModeDelay is a mode in which we randomly sleep + FuzzModeDelay +) + +// NOTE: Most of the structs & relevant comments + the +// default configuration options were used to manually +// generate the config.toml. Please reflect any changes +// made here in the defaultConfigTemplate constant in +// config/toml.go +// NOTE: tmlibs/cli must know to look in the config dir! +var ( + DefaultTendermintDir = ".tendermint" + defaultConfigDir = "config" + defaultDataDir = "data" + + defaultConfigFileName = "config.toml" + defaultGenesisJSONName = "genesis.json" + + defaultPrivValName = "priv_validator.json" + defaultNodeKeyName = "node_key.json" + defaultAddrBookName = "addrbook.json" + + defaultConfigFilePath = filepath.Join(defaultConfigDir, defaultConfigFileName) + defaultGenesisJSONPath = filepath.Join(defaultConfigDir, defaultGenesisJSONName) + defaultPrivValPath = filepath.Join(defaultConfigDir, defaultPrivValName) + defaultNodeKeyPath = filepath.Join(defaultConfigDir, defaultNodeKeyName) + defaultAddrBookPath = filepath.Join(defaultConfigDir, defaultAddrBookName) +) + +// Config defines the top level configuration for a Tendermint node +type Config struct { + // Top level options use an anonymous struct + BaseConfig `mapstructure:",squash"` + + // Options for services + RPC *RPCConfig `mapstructure:"rpc"` + P2P *P2PConfig `mapstructure:"p2p"` + Mempool *MempoolConfig `mapstructure:"mempool"` + Consensus *ConsensusConfig `mapstructure:"consensus"` + TxIndex *TxIndexConfig `mapstructure:"tx_index"` + Instrumentation *InstrumentationConfig `mapstructure:"instrumentation"` +} + +// DefaultConfig returns a default configuration for a Tendermint node +func DefaultConfig() *Config { + return &Config{ + BaseConfig: DefaultBaseConfig(), + RPC: DefaultRPCConfig(), + P2P: DefaultP2PConfig(), + Mempool: DefaultMempoolConfig(), + Consensus: DefaultConsensusConfig(), + TxIndex: DefaultTxIndexConfig(), + Instrumentation: DefaultInstrumentationConfig(), + } +} + +// TestConfig returns a configuration that can be used for testing +func TestConfig() *Config { + return &Config{ + BaseConfig: TestBaseConfig(), + RPC: TestRPCConfig(), + P2P: TestP2PConfig(), + Mempool: TestMempoolConfig(), + Consensus: TestConsensusConfig(), + TxIndex: TestTxIndexConfig(), + Instrumentation: TestInstrumentationConfig(), + } +} + +// SetRoot sets the RootDir for all Config structs +func (cfg *Config) SetRoot(root string) *Config { + cfg.BaseConfig.RootDir = root + cfg.RPC.RootDir = root + cfg.P2P.RootDir = root + cfg.Mempool.RootDir = root + cfg.Consensus.RootDir = root + return cfg +} + +//----------------------------------------------------------------------------- +// BaseConfig + +// BaseConfig defines the base configuration for a Tendermint node +type BaseConfig struct { + + // chainID is unexposed and immutable but here for convenience + chainID string + + // The root directory for all data. + // This should be set in viper so it can unmarshal into this struct + RootDir string `mapstructure:"home"` + + // Path to the JSON file containing the initial validator set and other meta data + Genesis string `mapstructure:"genesis_file"` + + // Path to the JSON file containing the private key to use as a validator in the consensus protocol + PrivValidator string `mapstructure:"priv_validator_file"` + + // A JSON file containing the private key to use for p2p authenticated encryption + NodeKey string `mapstructure:"node_key_file"` + + // A custom human readable name for this node + Moniker string `mapstructure:"moniker"` + + // TCP or UNIX socket address for Tendermint to listen on for + // connections from an external PrivValidator process + PrivValidatorListenAddr string `mapstructure:"priv_validator_laddr"` + + // TCP or UNIX socket address of the ABCI application, + // or the name of an ABCI application compiled in with the Tendermint binary + ProxyApp string `mapstructure:"proxy_app"` + + // Mechanism to connect to the ABCI application: socket | grpc + ABCI string `mapstructure:"abci"` + + // Output level for logging + LogLevel string `mapstructure:"log_level"` + + // TCP or UNIX socket address for the profiling server to listen on + ProfListenAddress string `mapstructure:"prof_laddr"` + + // If this node is many blocks behind the tip of the chain, FastSync + // allows them to catchup quickly by downloading blocks in parallel + // and verifying their commits + FastSync bool `mapstructure:"fast_sync"` + + // If true, query the ABCI app on connecting to a new peer + // so the app can decide if we should keep the connection or not + FilterPeers bool `mapstructure:"filter_peers"` // false + + // Database backend: leveldb | memdb + DBBackend string `mapstructure:"db_backend"` + + // Database directory + DBPath string `mapstructure:"db_dir"` +} + +// DefaultBaseConfig returns a default base configuration for a Tendermint node +func DefaultBaseConfig() BaseConfig { + return BaseConfig{ + Genesis: defaultGenesisJSONPath, + PrivValidator: defaultPrivValPath, + NodeKey: defaultNodeKeyPath, + Moniker: defaultMoniker, + ProxyApp: "tcp://127.0.0.1:26658", + ABCI: "socket", + LogLevel: DefaultPackageLogLevels(), + ProfListenAddress: "", + FastSync: true, + FilterPeers: false, + DBBackend: "leveldb", + DBPath: "data", + } +} + +// TestBaseConfig returns a base configuration for testing a Tendermint node +func TestBaseConfig() BaseConfig { + cfg := DefaultBaseConfig() + cfg.chainID = "tendermint_test" + cfg.ProxyApp = "kvstore" + cfg.FastSync = false + cfg.DBBackend = "memdb" + return cfg +} + +func (cfg BaseConfig) ChainID() string { + return cfg.chainID +} + +// GenesisFile returns the full path to the genesis.json file +func (cfg BaseConfig) GenesisFile() string { + return rootify(cfg.Genesis, cfg.RootDir) +} + +// PrivValidatorFile returns the full path to the priv_validator.json file +func (cfg BaseConfig) PrivValidatorFile() string { + return rootify(cfg.PrivValidator, cfg.RootDir) +} + +// NodeKeyFile returns the full path to the node_key.json file +func (cfg BaseConfig) NodeKeyFile() string { + return rootify(cfg.NodeKey, cfg.RootDir) +} + +// DBDir returns the full path to the database directory +func (cfg BaseConfig) DBDir() string { + return rootify(cfg.DBPath, cfg.RootDir) +} + +// DefaultLogLevel returns a default log level of "error" +func DefaultLogLevel() string { + return "error" +} + +// DefaultPackageLogLevels returns a default log level setting so all packages +// log at "error", while the `state` and `main` packages log at "info" +func DefaultPackageLogLevels() string { + return fmt.Sprintf("main:info,state:info,*:%s", DefaultLogLevel()) +} + +//----------------------------------------------------------------------------- +// RPCConfig + +// RPCConfig defines the configuration options for the Tendermint RPC server +type RPCConfig struct { + RootDir string `mapstructure:"home"` + + // TCP or UNIX socket address for the RPC server to listen on + ListenAddress string `mapstructure:"laddr"` + + // TCP or UNIX socket address for the gRPC server to listen on + // NOTE: This server only supports /broadcast_tx_commit + GRPCListenAddress string `mapstructure:"grpc_laddr"` + + // Activate unsafe RPC commands like /dial_persistent_peers and /unsafe_flush_mempool + Unsafe bool `mapstructure:"unsafe"` +} + +// DefaultRPCConfig returns a default configuration for the RPC server +func DefaultRPCConfig() *RPCConfig { + return &RPCConfig{ + ListenAddress: "tcp://0.0.0.0:26657", + GRPCListenAddress: "", + Unsafe: false, + } +} + +// TestRPCConfig returns a configuration for testing the RPC server +func TestRPCConfig() *RPCConfig { + cfg := DefaultRPCConfig() + cfg.ListenAddress = "tcp://0.0.0.0:36657" + cfg.GRPCListenAddress = "tcp://0.0.0.0:36658" + cfg.Unsafe = true + return cfg +} + +//----------------------------------------------------------------------------- +// P2PConfig + +// P2PConfig defines the configuration options for the Tendermint peer-to-peer networking layer +type P2PConfig struct { + RootDir string `mapstructure:"home"` + + // Address to listen for incoming connections + ListenAddress string `mapstructure:"laddr"` + + // Comma separated list of seed nodes to connect to + // We only use these if we can’t connect to peers in the addrbook + Seeds string `mapstructure:"seeds"` + + // Comma separated list of nodes to keep persistent connections to + // Do not add private peers to this list if you don't want them advertised + PersistentPeers string `mapstructure:"persistent_peers"` + + // Skip UPNP port forwarding + SkipUPNP bool `mapstructure:"skip_upnp"` + + // Path to address book + AddrBook string `mapstructure:"addr_book_file"` + + // Set true for strict address routability rules + AddrBookStrict bool `mapstructure:"addr_book_strict"` + + // Maximum number of peers to connect to + MaxNumPeers int `mapstructure:"max_num_peers"` + + // Time to wait before flushing messages out on the connection, in ms + FlushThrottleTimeout int `mapstructure:"flush_throttle_timeout"` + + // Maximum size of a message packet, in bytes + // Includes a header, which is ~13 bytes + MaxPacketMsgSize int `mapstructure:"max_packet_msg_size"` + + // Rate at which packets can be sent, in bytes/second + SendRate int64 `mapstructure:"send_rate"` + + // Rate at which packets can be received, in bytes/second + RecvRate int64 `mapstructure:"recv_rate"` + + // Set true to enable the peer-exchange reactor + PexReactor bool `mapstructure:"pex"` + + // Seed mode, in which node constantly crawls the network and looks for + // peers. If another node asks it for addresses, it responds and disconnects. + // + // Does not work if the peer-exchange reactor is disabled. + SeedMode bool `mapstructure:"seed_mode"` + + // Comma separated list of peer IDs to keep private (will not be gossiped to + // other peers) + PrivatePeerIDs string `mapstructure:"private_peer_ids"` + + // Toggle to disable guard against peers connecting from the same ip. + AllowDuplicateIP bool `mapstructure:"allow_duplicate_ip"` + + // Peer connection configuration. + HandshakeTimeout time.Duration `mapstructure:"handshake_timeout"` + DialTimeout time.Duration `mapstructure:"dial_timeout"` + + // Testing params. + // Force dial to fail + TestDialFail bool `mapstructure:"test_dial_fail"` + // FUzz connection + TestFuzz bool `mapstructure:"test_fuzz"` + TestFuzzConfig *FuzzConnConfig `mapstructure:"test_fuzz_config"` +} + +// DefaultP2PConfig returns a default configuration for the peer-to-peer layer +func DefaultP2PConfig() *P2PConfig { + return &P2PConfig{ + ListenAddress: "tcp://0.0.0.0:26656", + AddrBook: defaultAddrBookPath, + AddrBookStrict: true, + MaxNumPeers: 50, + FlushThrottleTimeout: 100, + MaxPacketMsgSize: 1024, // 1 kB + SendRate: 512000, // 500 kB/s + RecvRate: 512000, // 500 kB/s + PexReactor: true, + SeedMode: false, + AllowDuplicateIP: true, // so non-breaking yet + HandshakeTimeout: 20 * time.Second, + DialTimeout: 3 * time.Second, + TestDialFail: false, + TestFuzz: false, + TestFuzzConfig: DefaultFuzzConnConfig(), + } +} + +// TestP2PConfig returns a configuration for testing the peer-to-peer layer +func TestP2PConfig() *P2PConfig { + cfg := DefaultP2PConfig() + cfg.ListenAddress = "tcp://0.0.0.0:36656" + cfg.SkipUPNP = true + cfg.FlushThrottleTimeout = 10 + cfg.AllowDuplicateIP = true + return cfg +} + +// AddrBookFile returns the full path to the address book +func (cfg *P2PConfig) AddrBookFile() string { + return rootify(cfg.AddrBook, cfg.RootDir) +} + +// FuzzConnConfig is a FuzzedConnection configuration. +type FuzzConnConfig struct { + Mode int + MaxDelay time.Duration + ProbDropRW float64 + ProbDropConn float64 + ProbSleep float64 +} + +// DefaultFuzzConnConfig returns the default config. +func DefaultFuzzConnConfig() *FuzzConnConfig { + return &FuzzConnConfig{ + Mode: FuzzModeDrop, + MaxDelay: 3 * time.Second, + ProbDropRW: 0.2, + ProbDropConn: 0.00, + ProbSleep: 0.00, + } +} + +//----------------------------------------------------------------------------- +// MempoolConfig + +// MempoolConfig defines the configuration options for the Tendermint mempool +type MempoolConfig struct { + RootDir string `mapstructure:"home"` + Recheck bool `mapstructure:"recheck"` + RecheckEmpty bool `mapstructure:"recheck_empty"` + Broadcast bool `mapstructure:"broadcast"` + WalPath string `mapstructure:"wal_dir"` + Size int `mapstructure:"size"` + CacheSize int `mapstructure:"cache_size"` +} + +// DefaultMempoolConfig returns a default configuration for the Tendermint mempool +func DefaultMempoolConfig() *MempoolConfig { + return &MempoolConfig{ + Recheck: true, + RecheckEmpty: true, + Broadcast: true, + WalPath: filepath.Join(defaultDataDir, "mempool.wal"), + Size: 100000, + CacheSize: 100000, + } +} + +// TestMempoolConfig returns a configuration for testing the Tendermint mempool +func TestMempoolConfig() *MempoolConfig { + cfg := DefaultMempoolConfig() + cfg.CacheSize = 1000 + return cfg +} + +// WalDir returns the full path to the mempool's write-ahead log +func (cfg *MempoolConfig) WalDir() string { + return rootify(cfg.WalPath, cfg.RootDir) +} + +//----------------------------------------------------------------------------- +// ConsensusConfig + +// ConsensusConfig defines the configuration for the Tendermint consensus service, +// including timeouts and details about the WAL and the block structure. +type ConsensusConfig struct { + RootDir string `mapstructure:"home"` + WalPath string `mapstructure:"wal_file"` + walFile string // overrides WalPath if set + + // All timeouts are in milliseconds + TimeoutPropose int `mapstructure:"timeout_propose"` + TimeoutProposeDelta int `mapstructure:"timeout_propose_delta"` + TimeoutPrevote int `mapstructure:"timeout_prevote"` + TimeoutPrevoteDelta int `mapstructure:"timeout_prevote_delta"` + TimeoutPrecommit int `mapstructure:"timeout_precommit"` + TimeoutPrecommitDelta int `mapstructure:"timeout_precommit_delta"` + TimeoutCommit int `mapstructure:"timeout_commit"` + + // Make progress as soon as we have all the precommits (as if TimeoutCommit = 0) + SkipTimeoutCommit bool `mapstructure:"skip_timeout_commit"` + + // BlockSize + MaxBlockSizeTxs int `mapstructure:"max_block_size_txs"` + MaxBlockSizeBytes int `mapstructure:"max_block_size_bytes"` + + // EmptyBlocks mode and possible interval between empty blocks in seconds + CreateEmptyBlocks bool `mapstructure:"create_empty_blocks"` + CreateEmptyBlocksInterval int `mapstructure:"create_empty_blocks_interval"` + + // Reactor sleep duration parameters are in milliseconds + PeerGossipSleepDuration int `mapstructure:"peer_gossip_sleep_duration"` + PeerQueryMaj23SleepDuration int `mapstructure:"peer_query_maj23_sleep_duration"` +} + +// DefaultConsensusConfig returns a default configuration for the consensus service +func DefaultConsensusConfig() *ConsensusConfig { + return &ConsensusConfig{ + WalPath: filepath.Join(defaultDataDir, "cs.wal", "wal"), + TimeoutPropose: 3000, + TimeoutProposeDelta: 500, + TimeoutPrevote: 1000, + TimeoutPrevoteDelta: 500, + TimeoutPrecommit: 1000, + TimeoutPrecommitDelta: 500, + TimeoutCommit: 1000, + SkipTimeoutCommit: false, + MaxBlockSizeTxs: 10000, + MaxBlockSizeBytes: 1, // TODO + CreateEmptyBlocks: true, + CreateEmptyBlocksInterval: 0, + PeerGossipSleepDuration: 100, + PeerQueryMaj23SleepDuration: 2000, + } +} + +// TestConsensusConfig returns a configuration for testing the consensus service +func TestConsensusConfig() *ConsensusConfig { + cfg := DefaultConsensusConfig() + cfg.TimeoutPropose = 100 + cfg.TimeoutProposeDelta = 1 + cfg.TimeoutPrevote = 10 + cfg.TimeoutPrevoteDelta = 1 + cfg.TimeoutPrecommit = 10 + cfg.TimeoutPrecommitDelta = 1 + cfg.TimeoutCommit = 10 + cfg.SkipTimeoutCommit = true + cfg.PeerGossipSleepDuration = 5 + cfg.PeerQueryMaj23SleepDuration = 250 + return cfg +} + +// WaitForTxs returns true if the consensus should wait for transactions before entering the propose step +func (cfg *ConsensusConfig) WaitForTxs() bool { + return !cfg.CreateEmptyBlocks || cfg.CreateEmptyBlocksInterval > 0 +} + +// EmptyBlocks returns the amount of time to wait before proposing an empty block or starting the propose timer if there are no txs available +func (cfg *ConsensusConfig) EmptyBlocksInterval() time.Duration { + return time.Duration(cfg.CreateEmptyBlocksInterval) * time.Second +} + +// Propose returns the amount of time to wait for a proposal +func (cfg *ConsensusConfig) Propose(round int) time.Duration { + return time.Duration(cfg.TimeoutPropose+cfg.TimeoutProposeDelta*round) * time.Millisecond +} + +// Prevote returns the amount of time to wait for straggler votes after receiving any +2/3 prevotes +func (cfg *ConsensusConfig) Prevote(round int) time.Duration { + return time.Duration(cfg.TimeoutPrevote+cfg.TimeoutPrevoteDelta*round) * time.Millisecond +} + +// Precommit returns the amount of time to wait for straggler votes after receiving any +2/3 precommits +func (cfg *ConsensusConfig) Precommit(round int) time.Duration { + return time.Duration(cfg.TimeoutPrecommit+cfg.TimeoutPrecommitDelta*round) * time.Millisecond +} + +// Commit returns the amount of time to wait for straggler votes after receiving +2/3 precommits for a single block (ie. a commit). +func (cfg *ConsensusConfig) Commit(t time.Time) time.Time { + return t.Add(time.Duration(cfg.TimeoutCommit) * time.Millisecond) +} + +// PeerGossipSleep returns the amount of time to sleep if there is nothing to send from the ConsensusReactor +func (cfg *ConsensusConfig) PeerGossipSleep() time.Duration { + return time.Duration(cfg.PeerGossipSleepDuration) * time.Millisecond +} + +// PeerQueryMaj23Sleep returns the amount of time to sleep after each VoteSetMaj23Message is sent in the ConsensusReactor +func (cfg *ConsensusConfig) PeerQueryMaj23Sleep() time.Duration { + return time.Duration(cfg.PeerQueryMaj23SleepDuration) * time.Millisecond +} + +// WalFile returns the full path to the write-ahead log file +func (cfg *ConsensusConfig) WalFile() string { + if cfg.walFile != "" { + return cfg.walFile + } + return rootify(cfg.WalPath, cfg.RootDir) +} + +// SetWalFile sets the path to the write-ahead log file +func (cfg *ConsensusConfig) SetWalFile(walFile string) { + cfg.walFile = walFile +} + +//----------------------------------------------------------------------------- +// TxIndexConfig + +// TxIndexConfig defines the configuration for the transaction +// indexer, including tags to index. +type TxIndexConfig struct { + // What indexer to use for transactions + // + // Options: + // 1) "null" + // 2) "kv" (default) - the simplest possible indexer, backed by key-value storage (defaults to levelDB; see DBBackend). + Indexer string `mapstructure:"indexer"` + + // Comma-separated list of tags to index (by default the only tag is tx hash) + // + // It's recommended to index only a subset of tags due to possible memory + // bloat. This is, of course, depends on the indexer's DB and the volume of + // transactions. + IndexTags string `mapstructure:"index_tags"` + + // When set to true, tells indexer to index all tags. Note this may be not + // desirable (see the comment above). IndexTags has a precedence over + // IndexAllTags (i.e. when given both, IndexTags will be indexed). + IndexAllTags bool `mapstructure:"index_all_tags"` +} + +// DefaultTxIndexConfig returns a default configuration for the transaction indexer. +func DefaultTxIndexConfig() *TxIndexConfig { + return &TxIndexConfig{ + Indexer: "kv", + IndexTags: "", + IndexAllTags: false, + } +} + +// TestTxIndexConfig returns a default configuration for the transaction indexer. +func TestTxIndexConfig() *TxIndexConfig { + return DefaultTxIndexConfig() +} + +//----------------------------------------------------------------------------- +// InstrumentationConfig + +// InstrumentationConfig defines the configuration for metrics reporting. +type InstrumentationConfig struct { + // When true, Prometheus metrics are served under /metrics on + // PrometheusListenAddr. + // Check out the documentation for the list of available metrics. + Prometheus bool `mapstructure:"prometheus"` + + // Address to listen for Prometheus collector(s) connections. + PrometheusListenAddr string `mapstructure:"prometheus_listen_addr"` +} + +// DefaultInstrumentationConfig returns a default configuration for metrics +// reporting. +func DefaultInstrumentationConfig() *InstrumentationConfig { + return &InstrumentationConfig{ + Prometheus: false, + PrometheusListenAddr: ":26660", + } +} + +// TestInstrumentationConfig returns a default configuration for metrics +// reporting. +func TestInstrumentationConfig() *InstrumentationConfig { + return DefaultInstrumentationConfig() +} + +//----------------------------------------------------------------------------- +// Utils + +// helper function to make config creation independent of root dir +func rootify(path, root string) string { + if filepath.IsAbs(path) { + return path + } + return filepath.Join(root, path) +} + +//----------------------------------------------------------------------------- +// Moniker + +var defaultMoniker = getDefaultMoniker() + +// getDefaultMoniker returns a default moniker, which is the host name. If runtime +// fails to get the host name, "anonymous" will be returned. +func getDefaultMoniker() string { + moniker, err := os.Hostname() + if err != nil { + moniker = "anonymous" + } + return moniker +} diff --git a/config/config_test.go b/config/config_test.go new file mode 100644 index 000000000..6379960fa --- /dev/null +++ b/config/config_test.go @@ -0,0 +1,28 @@ +package config + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestDefaultConfig(t *testing.T) { + assert := assert.New(t) + + // set up some defaults + cfg := DefaultConfig() + assert.NotNil(cfg.P2P) + assert.NotNil(cfg.Mempool) + assert.NotNil(cfg.Consensus) + + // check the root dir stuff... + cfg.SetRoot("/foo") + cfg.Genesis = "bar" + cfg.DBPath = "/opt/data" + cfg.Mempool.WalPath = "wal/mem/" + + assert.Equal("/foo/bar", cfg.GenesisFile()) + assert.Equal("/opt/data", cfg.DBDir()) + assert.Equal("/foo/wal/mem", cfg.Mempool.WalDir()) + +} diff --git a/config/toml.go b/config/toml.go new file mode 100644 index 000000000..0bf9d5315 --- /dev/null +++ b/config/toml.go @@ -0,0 +1,325 @@ +package config + +import ( + "bytes" + "os" + "path/filepath" + "text/template" + + cmn "github.com/tendermint/tmlibs/common" +) + +var configTemplate *template.Template + +func init() { + var err error + if configTemplate, err = template.New("configFileTemplate").Parse(defaultConfigTemplate); err != nil { + panic(err) + } +} + +/****** these are for production settings ***********/ + +// EnsureRoot creates the root, config, and data directories if they don't exist, +// and panics if it fails. +func EnsureRoot(rootDir string) { + if err := cmn.EnsureDir(rootDir, 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + if err := cmn.EnsureDir(filepath.Join(rootDir, defaultConfigDir), 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + if err := cmn.EnsureDir(filepath.Join(rootDir, defaultDataDir), 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + + configFilePath := filepath.Join(rootDir, defaultConfigFilePath) + + // Write default config file if missing. + if !cmn.FileExists(configFilePath) { + writeDefaultConfigFile(configFilePath) + } +} + +// XXX: this func should probably be called by cmd/tendermint/commands/init.go +// alongside the writing of the genesis.json and priv_validator.json +func writeDefaultConfigFile(configFilePath string) { + WriteConfigFile(configFilePath, DefaultConfig()) +} + +// WriteConfigFile renders config using the template and writes it to configFilePath. +func WriteConfigFile(configFilePath string, config *Config) { + var buffer bytes.Buffer + + if err := configTemplate.Execute(&buffer, config); err != nil { + panic(err) + } + + cmn.MustWriteFile(configFilePath, buffer.Bytes(), 0644) +} + +// Note: any changes to the comments/variables/mapstructure +// must be reflected in the appropriate struct in config/config.go +const defaultConfigTemplate = `# This is a TOML config file. +# For more information, see https://github.com/toml-lang/toml + +##### main base config options ##### + +# TCP or UNIX socket address of the ABCI application, +# or the name of an ABCI application compiled in with the Tendermint binary +proxy_app = "{{ .BaseConfig.ProxyApp }}" + +# A custom human readable name for this node +moniker = "{{ .BaseConfig.Moniker }}" + +# If this node is many blocks behind the tip of the chain, FastSync +# allows them to catchup quickly by downloading blocks in parallel +# and verifying their commits +fast_sync = {{ .BaseConfig.FastSync }} + +# Database backend: leveldb | memdb +db_backend = "{{ .BaseConfig.DBBackend }}" + +# Database directory +db_path = "{{ js .BaseConfig.DBPath }}" + +# Output level for logging, including package level options +log_level = "{{ .BaseConfig.LogLevel }}" + +##### additional base config options ##### + +# Path to the JSON file containing the initial validator set and other meta data +genesis_file = "{{ js .BaseConfig.Genesis }}" + +# Path to the JSON file containing the private key to use as a validator in the consensus protocol +priv_validator_file = "{{ js .BaseConfig.PrivValidator }}" + +# Path to the JSON file containing the private key to use for node authentication in the p2p protocol +node_key_file = "{{ js .BaseConfig.NodeKey}}" + +# Mechanism to connect to the ABCI application: socket | grpc +abci = "{{ .BaseConfig.ABCI }}" + +# TCP or UNIX socket address for the profiling server to listen on +prof_laddr = "{{ .BaseConfig.ProfListenAddress }}" + +# If true, query the ABCI app on connecting to a new peer +# so the app can decide if we should keep the connection or not +filter_peers = {{ .BaseConfig.FilterPeers }} + +##### advanced configuration options ##### + +##### rpc server configuration options ##### +[rpc] + +# TCP or UNIX socket address for the RPC server to listen on +laddr = "{{ .RPC.ListenAddress }}" + +# TCP or UNIX socket address for the gRPC server to listen on +# NOTE: This server only supports /broadcast_tx_commit +grpc_laddr = "{{ .RPC.GRPCListenAddress }}" + +# Activate unsafe RPC commands like /dial_seeds and /unsafe_flush_mempool +unsafe = {{ .RPC.Unsafe }} + +##### peer to peer configuration options ##### +[p2p] + +# Address to listen for incoming connections +laddr = "{{ .P2P.ListenAddress }}" + +# Comma separated list of seed nodes to connect to +seeds = "{{ .P2P.Seeds }}" + +# Comma separated list of nodes to keep persistent connections to +# Do not add private peers to this list if you don't want them advertised +persistent_peers = "{{ .P2P.PersistentPeers }}" + +# Path to address book +addr_book_file = "{{ js .P2P.AddrBook }}" + +# Set true for strict address routability rules +addr_book_strict = {{ .P2P.AddrBookStrict }} + +# Time to wait before flushing messages out on the connection, in ms +flush_throttle_timeout = {{ .P2P.FlushThrottleTimeout }} + +# Maximum number of peers to connect to +max_num_peers = {{ .P2P.MaxNumPeers }} + +# Maximum size of a message packet, in bytes +# Includes a header, which is ~13 bytes +max_packet_msg_size = {{ .P2P.MaxPacketMsgSize }} + +# Rate at which packets can be sent, in bytes/second +send_rate = {{ .P2P.SendRate }} + +# Rate at which packets can be received, in bytes/second +recv_rate = {{ .P2P.RecvRate }} + +# Set true to enable the peer-exchange reactor +pex = {{ .P2P.PexReactor }} + +# Seed mode, in which node constantly crawls the network and looks for +# peers. If another node asks it for addresses, it responds and disconnects. +# +# Does not work if the peer-exchange reactor is disabled. +seed_mode = {{ .P2P.SeedMode }} + +# Comma separated list of peer IDs to keep private (will not be gossiped to other peers) +private_peer_ids = "{{ .P2P.PrivatePeerIDs }}" + +##### mempool configuration options ##### +[mempool] + +recheck = {{ .Mempool.Recheck }} +recheck_empty = {{ .Mempool.RecheckEmpty }} +broadcast = {{ .Mempool.Broadcast }} +wal_dir = "{{ js .Mempool.WalPath }}" + +# size of the mempool +size = {{ .Mempool.Size }} + +# size of the cache (used to filter transactions we saw earlier) +cache_size = {{ .Mempool.CacheSize }} + +##### consensus configuration options ##### +[consensus] + +wal_file = "{{ js .Consensus.WalPath }}" + +# All timeouts are in milliseconds +timeout_propose = {{ .Consensus.TimeoutPropose }} +timeout_propose_delta = {{ .Consensus.TimeoutProposeDelta }} +timeout_prevote = {{ .Consensus.TimeoutPrevote }} +timeout_prevote_delta = {{ .Consensus.TimeoutPrevoteDelta }} +timeout_precommit = {{ .Consensus.TimeoutPrecommit }} +timeout_precommit_delta = {{ .Consensus.TimeoutPrecommitDelta }} +timeout_commit = {{ .Consensus.TimeoutCommit }} + +# Make progress as soon as we have all the precommits (as if TimeoutCommit = 0) +skip_timeout_commit = {{ .Consensus.SkipTimeoutCommit }} + +# BlockSize +max_block_size_txs = {{ .Consensus.MaxBlockSizeTxs }} +max_block_size_bytes = {{ .Consensus.MaxBlockSizeBytes }} + +# EmptyBlocks mode and possible interval between empty blocks in seconds +create_empty_blocks = {{ .Consensus.CreateEmptyBlocks }} +create_empty_blocks_interval = {{ .Consensus.CreateEmptyBlocksInterval }} + +# Reactor sleep duration parameters are in milliseconds +peer_gossip_sleep_duration = {{ .Consensus.PeerGossipSleepDuration }} +peer_query_maj23_sleep_duration = {{ .Consensus.PeerQueryMaj23SleepDuration }} + +##### transactions indexer configuration options ##### +[tx_index] + +# What indexer to use for transactions +# +# Options: +# 1) "null" (default) +# 2) "kv" - the simplest possible indexer, backed by key-value storage (defaults to levelDB; see DBBackend). +indexer = "{{ .TxIndex.Indexer }}" + +# Comma-separated list of tags to index (by default the only tag is tx hash) +# +# It's recommended to index only a subset of tags due to possible memory +# bloat. This is, of course, depends on the indexer's DB and the volume of +# transactions. +index_tags = "{{ .TxIndex.IndexTags }}" + +# When set to true, tells indexer to index all tags. Note this may be not +# desirable (see the comment above). IndexTags has a precedence over +# IndexAllTags (i.e. when given both, IndexTags will be indexed). +index_all_tags = {{ .TxIndex.IndexAllTags }} + +##### instrumentation configuration options ##### +[instrumentation] + +# When true, Prometheus metrics are served under /metrics on +# PrometheusListenAddr. +# Check out the documentation for the list of available metrics. +prometheus = {{ .Instrumentation.Prometheus }} + +# Address to listen for Prometheus collector(s) connections +prometheus_listen_addr = "{{ .Instrumentation.PrometheusListenAddr }}" +` + +/****** these are for test settings ***********/ + +func ResetTestRoot(testName string) *Config { + rootDir := os.ExpandEnv("$HOME/.tendermint_test") + rootDir = filepath.Join(rootDir, testName) + // Remove ~/.tendermint_test_bak + if cmn.FileExists(rootDir + "_bak") { + if err := os.RemoveAll(rootDir + "_bak"); err != nil { + cmn.PanicSanity(err.Error()) + } + } + // Move ~/.tendermint_test to ~/.tendermint_test_bak + if cmn.FileExists(rootDir) { + if err := os.Rename(rootDir, rootDir+"_bak"); err != nil { + cmn.PanicSanity(err.Error()) + } + } + // Create new dir + if err := cmn.EnsureDir(rootDir, 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + if err := cmn.EnsureDir(filepath.Join(rootDir, defaultConfigDir), 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + if err := cmn.EnsureDir(filepath.Join(rootDir, defaultDataDir), 0700); err != nil { + cmn.PanicSanity(err.Error()) + } + + baseConfig := DefaultBaseConfig() + configFilePath := filepath.Join(rootDir, defaultConfigFilePath) + genesisFilePath := filepath.Join(rootDir, baseConfig.Genesis) + privFilePath := filepath.Join(rootDir, baseConfig.PrivValidator) + + // Write default config file if missing. + if !cmn.FileExists(configFilePath) { + writeDefaultConfigFile(configFilePath) + } + if !cmn.FileExists(genesisFilePath) { + cmn.MustWriteFile(genesisFilePath, []byte(testGenesis), 0644) + } + // we always overwrite the priv val + cmn.MustWriteFile(privFilePath, []byte(testPrivValidator), 0644) + + config := TestConfig().SetRoot(rootDir) + return config +} + +var testGenesis = `{ + "genesis_time": "0001-01-01T00:00:00.000Z", + "chain_id": "tendermint_test", + "validators": [ + { + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value":"AT/+aaL1eB0477Mud9JMm8Sh8BIvOYlPGC9KkIUmFaE=" + }, + "power": "10", + "name": "" + } + ], + "app_hash": "" +}` + +var testPrivValidator = `{ + "address": "A3258DCBF45DCA0DF052981870F2D1441A36D145", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "AT/+aaL1eB0477Mud9JMm8Sh8BIvOYlPGC9KkIUmFaE=" + }, + "priv_key": { + "type": "tendermint/PrivKeyEd25519", + "value": "EVkqJO/jIXp3rkASXfh9YnyToYXRXhBr6g9cQVxPFnQBP/5povV4HTjvsy530kybxKHwEi85iU8YL0qQhSYVoQ==" + }, + "last_height": "0", + "last_round": "0", + "last_step": 0 +}` diff --git a/config/toml_test.go b/config/toml_test.go new file mode 100644 index 000000000..a1637f671 --- /dev/null +++ b/config/toml_test.go @@ -0,0 +1,94 @@ +package config + +import ( + "io/ioutil" + "os" + "path/filepath" + "strings" + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func ensureFiles(t *testing.T, rootDir string, files ...string) { + for _, f := range files { + p := rootify(rootDir, f) + _, err := os.Stat(p) + assert.Nil(t, err, p) + } +} + +func TestEnsureRoot(t *testing.T) { + require := require.New(t) + + // setup temp dir for test + tmpDir, err := ioutil.TempDir("", "config-test") + require.Nil(err) + defer os.RemoveAll(tmpDir) // nolint: errcheck + + // create root dir + EnsureRoot(tmpDir) + + // make sure config is set properly + data, err := ioutil.ReadFile(filepath.Join(tmpDir, defaultConfigFilePath)) + require.Nil(err) + + if !checkConfig(string(data)) { + t.Fatalf("config file missing some information") + } + + ensureFiles(t, tmpDir, "data") +} + +func TestEnsureTestRoot(t *testing.T) { + require := require.New(t) + + testName := "ensureTestRoot" + + // create root dir + cfg := ResetTestRoot(testName) + rootDir := cfg.RootDir + + // make sure config is set properly + data, err := ioutil.ReadFile(filepath.Join(rootDir, defaultConfigFilePath)) + require.Nil(err) + + if !checkConfig(string(data)) { + t.Fatalf("config file missing some information") + } + + // TODO: make sure the cfg returned and testconfig are the same! + baseConfig := DefaultBaseConfig() + ensureFiles(t, rootDir, defaultDataDir, baseConfig.Genesis, baseConfig.PrivValidator) +} + +func checkConfig(configFile string) bool { + var valid bool + + // list of words we expect in the config + var elems = []string{ + "moniker", + "seeds", + "proxy_app", + "fast_sync", + "create_empty_blocks", + "peer", + "timeout", + "broadcast", + "send", + "addr", + "wal", + "propose", + "max", + "genesis", + } + for _, e := range elems { + if !strings.Contains(configFile, e) { + valid = false + } else { + valid = true + } + } + return valid +} diff --git a/consensus/README.md b/consensus/README.md new file mode 100644 index 000000000..1111317d5 --- /dev/null +++ b/consensus/README.md @@ -0,0 +1 @@ +See the [consensus spec](https://github.com/tendermint/tendermint/tree/master/docs/spec/consensus) and the [reactor consensus spec](https://github.com/tendermint/tendermint/tree/master/docs/spec/reactors/consensus) for more information. diff --git a/consensus/byzantine_test.go b/consensus/byzantine_test.go new file mode 100644 index 000000000..d3be8c358 --- /dev/null +++ b/consensus/byzantine_test.go @@ -0,0 +1,267 @@ +package consensus + +import ( + "context" + "sync" + "testing" + "time" + + "github.com/stretchr/testify/require" + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +func init() { + config = ResetConfig("consensus_byzantine_test") +} + +//---------------------------------------------- +// byzantine failures + +// 4 validators. 1 is byzantine. The other three are partitioned into A (1 val) and B (2 vals). +// byzantine validator sends conflicting proposals into A and B, +// and prevotes/precommits on both of them. +// B sees a commit, A doesn't. +// Byzantine validator refuses to prevote. +// Heal partition and ensure A sees the commit +func TestByzantine(t *testing.T) { + N := 4 + logger := consensusLogger().With("test", "byzantine") + css := randConsensusNet(N, "consensus_byzantine_test", newMockTickerFunc(false), newCounter) + + // give the byzantine validator a normal ticker + ticker := NewTimeoutTicker() + ticker.SetLogger(css[0].Logger) + css[0].SetTimeoutTicker(ticker) + + switches := make([]*p2p.Switch, N) + p2pLogger := logger.With("module", "p2p") + for i := 0; i < N; i++ { + switches[i] = p2p.NewSwitch(config.P2P) + switches[i].SetLogger(p2pLogger.With("validator", i)) + } + + eventChans := make([]chan interface{}, N) + reactors := make([]p2p.Reactor, N) + for i := 0; i < N; i++ { + // make first val byzantine + if i == 0 { + // NOTE: Now, test validators are MockPV, which by default doesn't + // do any safety checks. + css[i].privValidator.(*types.MockPV).DisableChecks() + css[i].decideProposal = func(j int) func(int64, int) { + return func(height int64, round int) { + byzantineDecideProposalFunc(t, height, round, css[j], switches[j]) + } + }(i) + css[i].doPrevote = func(height int64, round int) {} + } + + eventBus := css[i].eventBus + eventBus.SetLogger(logger.With("module", "events", "validator", i)) + + eventChans[i] = make(chan interface{}, 1) + err := eventBus.Subscribe(context.Background(), testSubscriber, types.EventQueryNewBlock, eventChans[i]) + require.NoError(t, err) + + conR := NewConsensusReactor(css[i], true) // so we dont start the consensus states + conR.SetLogger(logger.With("validator", i)) + conR.SetEventBus(eventBus) + + var conRI p2p.Reactor // nolint: gotype, gosimple + conRI = conR + + // make first val byzantine + if i == 0 { + conRI = NewByzantineReactor(conR) + } + + reactors[i] = conRI + } + + defer func() { + for _, r := range reactors { + if rr, ok := r.(*ByzantineReactor); ok { + rr.reactor.Switch.Stop() + } else { + r.(*ConsensusReactor).Switch.Stop() + } + } + }() + + p2p.MakeConnectedSwitches(config.P2P, N, func(i int, s *p2p.Switch) *p2p.Switch { + // ignore new switch s, we already made ours + switches[i].AddReactor("CONSENSUS", reactors[i]) + return switches[i] + }, func(sws []*p2p.Switch, i, j int) { + // the network starts partitioned with globally active adversary + if i != 0 { + return + } + p2p.Connect2Switches(sws, i, j) + }) + + // start the non-byz state machines. + // note these must be started before the byz + for i := 1; i < N; i++ { + cr := reactors[i].(*ConsensusReactor) + cr.SwitchToConsensus(cr.conS.GetState(), 0) + } + + // start the byzantine state machine + byzR := reactors[0].(*ByzantineReactor) + s := byzR.reactor.conS.GetState() + byzR.reactor.SwitchToConsensus(s, 0) + + // byz proposer sends one block to peers[0] + // and the other block to peers[1] and peers[2]. + // note peers and switches order don't match. + peers := switches[0].Peers().List() + + // partition A + ind0 := getSwitchIndex(switches, peers[0]) + + // partition B + ind1 := getSwitchIndex(switches, peers[1]) + ind2 := getSwitchIndex(switches, peers[2]) + p2p.Connect2Switches(switches, ind1, ind2) + + // wait for someone in the big partition (B) to make a block + <-eventChans[ind2] + + t.Log("A block has been committed. Healing partition") + p2p.Connect2Switches(switches, ind0, ind1) + p2p.Connect2Switches(switches, ind0, ind2) + + // wait till everyone makes the first new block + // (one of them already has) + wg := new(sync.WaitGroup) + wg.Add(2) + for i := 1; i < N-1; i++ { + go func(j int) { + <-eventChans[j] + wg.Done() + }(i) + } + + done := make(chan struct{}) + go func() { + wg.Wait() + close(done) + }() + + tick := time.NewTicker(time.Second * 10) + select { + case <-done: + case <-tick.C: + for i, reactor := range reactors { + t.Log(cmn.Fmt("Consensus Reactor %v", i)) + t.Log(cmn.Fmt("%v", reactor)) + } + t.Fatalf("Timed out waiting for all validators to commit first block") + } +} + +//------------------------------- +// byzantine consensus functions + +func byzantineDecideProposalFunc(t *testing.T, height int64, round int, cs *ConsensusState, sw *p2p.Switch) { + // byzantine user should create two proposals and try to split the vote. + // Avoid sending on internalMsgQueue and running consensus state. + + // Create a new proposal block from state/txs from the mempool. + block1, blockParts1 := cs.createProposalBlock() + polRound, polBlockID := cs.Votes.POLInfo() + proposal1 := types.NewProposal(height, round, blockParts1.Header(), polRound, polBlockID) + if err := cs.privValidator.SignProposal(cs.state.ChainID, proposal1); err != nil { + t.Error(err) + } + + // Create a new proposal block from state/txs from the mempool. + block2, blockParts2 := cs.createProposalBlock() + polRound, polBlockID = cs.Votes.POLInfo() + proposal2 := types.NewProposal(height, round, blockParts2.Header(), polRound, polBlockID) + if err := cs.privValidator.SignProposal(cs.state.ChainID, proposal2); err != nil { + t.Error(err) + } + + block1Hash := block1.Hash() + block2Hash := block2.Hash() + + // broadcast conflicting proposals/block parts to peers + peers := sw.Peers().List() + t.Logf("Byzantine: broadcasting conflicting proposals to %d peers", len(peers)) + for i, peer := range peers { + if i < len(peers)/2 { + go sendProposalAndParts(height, round, cs, peer, proposal1, block1Hash, blockParts1) + } else { + go sendProposalAndParts(height, round, cs, peer, proposal2, block2Hash, blockParts2) + } + } +} + +func sendProposalAndParts(height int64, round int, cs *ConsensusState, peer p2p.Peer, proposal *types.Proposal, blockHash []byte, parts *types.PartSet) { + // proposal + msg := &ProposalMessage{Proposal: proposal} + peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) + + // parts + for i := 0; i < parts.Total(); i++ { + part := parts.GetPart(i) + msg := &BlockPartMessage{ + Height: height, // This tells peer that this part applies to us. + Round: round, // This tells peer that this part applies to us. + Part: part, + } + peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) + } + + // votes + cs.mtx.Lock() + prevote, _ := cs.signVote(types.VoteTypePrevote, blockHash, parts.Header()) + precommit, _ := cs.signVote(types.VoteTypePrecommit, blockHash, parts.Header()) + cs.mtx.Unlock() + + peer.Send(VoteChannel, cdc.MustMarshalBinaryBare(&VoteMessage{prevote})) + peer.Send(VoteChannel, cdc.MustMarshalBinaryBare(&VoteMessage{precommit})) +} + +//---------------------------------------- +// byzantine consensus reactor + +type ByzantineReactor struct { + cmn.Service + reactor *ConsensusReactor +} + +func NewByzantineReactor(conR *ConsensusReactor) *ByzantineReactor { + return &ByzantineReactor{ + Service: conR, + reactor: conR, + } +} + +func (br *ByzantineReactor) SetSwitch(s *p2p.Switch) { br.reactor.SetSwitch(s) } +func (br *ByzantineReactor) GetChannels() []*p2p.ChannelDescriptor { return br.reactor.GetChannels() } +func (br *ByzantineReactor) AddPeer(peer p2p.Peer) { + if !br.reactor.IsRunning() { + return + } + + // Create peerState for peer + peerState := NewPeerState(peer).SetLogger(br.reactor.Logger) + peer.Set(types.PeerStateKey, peerState) + + // Send our state to peer. + // If we're fast_syncing, broadcast a RoundStepMessage later upon SwitchToConsensus(). + if !br.reactor.fastSync { + br.reactor.sendNewRoundStepMessages(peer) + } +} +func (br *ByzantineReactor) RemovePeer(peer p2p.Peer, reason interface{}) { + br.reactor.RemovePeer(peer, reason) +} +func (br *ByzantineReactor) Receive(chID byte, peer p2p.Peer, msgBytes []byte) { + br.reactor.Receive(chID, peer, msgBytes) +} diff --git a/consensus/common_test.go b/consensus/common_test.go new file mode 100644 index 000000000..f50e57699 --- /dev/null +++ b/consensus/common_test.go @@ -0,0 +1,495 @@ +package consensus + +import ( + "bytes" + "context" + "fmt" + "io/ioutil" + "os" + "path" + "sort" + "sync" + "testing" + "time" + + abcicli "github.com/tendermint/abci/client" + abci "github.com/tendermint/abci/types" + bc "github.com/tendermint/tendermint/blockchain" + cfg "github.com/tendermint/tendermint/config" + cstypes "github.com/tendermint/tendermint/consensus/types" + mempl "github.com/tendermint/tendermint/mempool" + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/privval" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/abci/example/counter" + "github.com/tendermint/abci/example/kvstore" + + "github.com/go-kit/kit/log/term" +) + +const ( + testSubscriber = "test-client" +) + +// genesis, chain_id, priv_val +var config *cfg.Config // NOTE: must be reset for each _test.go file +var ensureTimeout = time.Second * 1 // must be in seconds because CreateEmptyBlocksInterval is + +func ensureDir(dir string, mode os.FileMode) { + if err := cmn.EnsureDir(dir, mode); err != nil { + panic(err) + } +} + +func ResetConfig(name string) *cfg.Config { + return cfg.ResetTestRoot(name) +} + +//------------------------------------------------------------------------------- +// validator stub (a kvstore consensus peer we control) + +type validatorStub struct { + Index int // Validator index. NOTE: we don't assume validator set changes. + Height int64 + Round int + types.PrivValidator +} + +var testMinPower int64 = 10 + +func NewValidatorStub(privValidator types.PrivValidator, valIndex int) *validatorStub { + return &validatorStub{ + Index: valIndex, + PrivValidator: privValidator, + } +} + +func (vs *validatorStub) signVote(voteType byte, hash []byte, header types.PartSetHeader) (*types.Vote, error) { + vote := &types.Vote{ + ValidatorIndex: vs.Index, + ValidatorAddress: vs.PrivValidator.GetAddress(), + Height: vs.Height, + Round: vs.Round, + Timestamp: time.Now().UTC(), + Type: voteType, + BlockID: types.BlockID{hash, header}, + } + err := vs.PrivValidator.SignVote(config.ChainID(), vote) + return vote, err +} + +// Sign vote for type/hash/header +func signVote(vs *validatorStub, voteType byte, hash []byte, header types.PartSetHeader) *types.Vote { + v, err := vs.signVote(voteType, hash, header) + if err != nil { + panic(fmt.Errorf("failed to sign vote: %v", err)) + } + return v +} + +func signVotes(voteType byte, hash []byte, header types.PartSetHeader, vss ...*validatorStub) []*types.Vote { + votes := make([]*types.Vote, len(vss)) + for i, vs := range vss { + votes[i] = signVote(vs, voteType, hash, header) + } + return votes +} + +func incrementHeight(vss ...*validatorStub) { + for _, vs := range vss { + vs.Height++ + } +} + +func incrementRound(vss ...*validatorStub) { + for _, vs := range vss { + vs.Round++ + } +} + +//------------------------------------------------------------------------------- +// Functions for transitioning the consensus state + +func startTestRound(cs *ConsensusState, height int64, round int) { + cs.enterNewRound(height, round) + cs.startRoutines(0) +} + +// Create proposal block from cs1 but sign it with vs +func decideProposal(cs1 *ConsensusState, vs *validatorStub, height int64, round int) (proposal *types.Proposal, block *types.Block) { + block, blockParts := cs1.createProposalBlock() + if block == nil { // on error + panic("error creating proposal block") + } + + // Make proposal + polRound, polBlockID := cs1.Votes.POLInfo() + proposal = types.NewProposal(height, round, blockParts.Header(), polRound, polBlockID) + if err := vs.SignProposal(cs1.state.ChainID, proposal); err != nil { + panic(err) + } + return +} + +func addVotes(to *ConsensusState, votes ...*types.Vote) { + for _, vote := range votes { + to.peerMsgQueue <- msgInfo{Msg: &VoteMessage{vote}} + } +} + +func signAddVotes(to *ConsensusState, voteType byte, hash []byte, header types.PartSetHeader, vss ...*validatorStub) { + votes := signVotes(voteType, hash, header, vss...) + addVotes(to, votes...) +} + +func validatePrevote(t *testing.T, cs *ConsensusState, round int, privVal *validatorStub, blockHash []byte) { + prevotes := cs.Votes.Prevotes(round) + var vote *types.Vote + if vote = prevotes.GetByAddress(privVal.GetAddress()); vote == nil { + panic("Failed to find prevote from validator") + } + if blockHash == nil { + if vote.BlockID.Hash != nil { + panic(fmt.Sprintf("Expected prevote to be for nil, got %X", vote.BlockID.Hash)) + } + } else { + if !bytes.Equal(vote.BlockID.Hash, blockHash) { + panic(fmt.Sprintf("Expected prevote to be for %X, got %X", blockHash, vote.BlockID.Hash)) + } + } +} + +func validateLastPrecommit(t *testing.T, cs *ConsensusState, privVal *validatorStub, blockHash []byte) { + votes := cs.LastCommit + var vote *types.Vote + if vote = votes.GetByAddress(privVal.GetAddress()); vote == nil { + panic("Failed to find precommit from validator") + } + if !bytes.Equal(vote.BlockID.Hash, blockHash) { + panic(fmt.Sprintf("Expected precommit to be for %X, got %X", blockHash, vote.BlockID.Hash)) + } +} + +func validatePrecommit(t *testing.T, cs *ConsensusState, thisRound, lockRound int, privVal *validatorStub, votedBlockHash, lockedBlockHash []byte) { + precommits := cs.Votes.Precommits(thisRound) + var vote *types.Vote + if vote = precommits.GetByAddress(privVal.GetAddress()); vote == nil { + panic("Failed to find precommit from validator") + } + + if votedBlockHash == nil { + if vote.BlockID.Hash != nil { + panic("Expected precommit to be for nil") + } + } else { + if !bytes.Equal(vote.BlockID.Hash, votedBlockHash) { + panic("Expected precommit to be for proposal block") + } + } + + if lockedBlockHash == nil { + if cs.LockedRound != lockRound || cs.LockedBlock != nil { + panic(fmt.Sprintf("Expected to be locked on nil at round %d. Got locked at round %d with block %v", lockRound, cs.LockedRound, cs.LockedBlock)) + } + } else { + if cs.LockedRound != lockRound || !bytes.Equal(cs.LockedBlock.Hash(), lockedBlockHash) { + panic(fmt.Sprintf("Expected block to be locked on round %d, got %d. Got locked block %X, expected %X", lockRound, cs.LockedRound, cs.LockedBlock.Hash(), lockedBlockHash)) + } + } + +} + +func validatePrevoteAndPrecommit(t *testing.T, cs *ConsensusState, thisRound, lockRound int, privVal *validatorStub, votedBlockHash, lockedBlockHash []byte) { + // verify the prevote + validatePrevote(t, cs, thisRound, privVal, votedBlockHash) + // verify precommit + cs.mtx.Lock() + validatePrecommit(t, cs, thisRound, lockRound, privVal, votedBlockHash, lockedBlockHash) + cs.mtx.Unlock() +} + +// genesis +func subscribeToVoter(cs *ConsensusState, addr []byte) chan interface{} { + voteCh0 := make(chan interface{}) + err := cs.eventBus.Subscribe(context.Background(), testSubscriber, types.EventQueryVote, voteCh0) + if err != nil { + panic(fmt.Sprintf("failed to subscribe %s to %v", testSubscriber, types.EventQueryVote)) + } + voteCh := make(chan interface{}) + go func() { + for v := range voteCh0 { + vote := v.(types.EventDataVote) + // we only fire for our own votes + if bytes.Equal(addr, vote.Vote.ValidatorAddress) { + voteCh <- v + } + } + }() + return voteCh +} + +//------------------------------------------------------------------------------- +// consensus states + +func newConsensusState(state sm.State, pv types.PrivValidator, app abci.Application) *ConsensusState { + return newConsensusStateWithConfig(config, state, pv, app) +} + +func newConsensusStateWithConfig(thisConfig *cfg.Config, state sm.State, pv types.PrivValidator, app abci.Application) *ConsensusState { + blockDB := dbm.NewMemDB() + return newConsensusStateWithConfigAndBlockStore(thisConfig, state, pv, app, blockDB) +} + +func newConsensusStateWithConfigAndBlockStore(thisConfig *cfg.Config, state sm.State, pv types.PrivValidator, app abci.Application, blockDB dbm.DB) *ConsensusState { + // Get BlockStore + blockStore := bc.NewBlockStore(blockDB) + + // one for mempool, one for consensus + mtx := new(sync.Mutex) + proxyAppConnMem := abcicli.NewLocalClient(mtx, app) + proxyAppConnCon := abcicli.NewLocalClient(mtx, app) + + // Make Mempool + mempool := mempl.NewMempool(thisConfig.Mempool, proxyAppConnMem, 0) + mempool.SetLogger(log.TestingLogger().With("module", "mempool")) + if thisConfig.Consensus.WaitForTxs() { + mempool.EnableTxsAvailable() + } + + // mock the evidence pool + evpool := sm.MockEvidencePool{} + + // Make ConsensusState + stateDB := dbm.NewMemDB() + blockExec := sm.NewBlockExecutor(stateDB, log.TestingLogger(), proxyAppConnCon, mempool, evpool) + cs := NewConsensusState(thisConfig.Consensus, state, blockExec, blockStore, mempool, evpool) + cs.SetLogger(log.TestingLogger().With("module", "consensus")) + cs.SetPrivValidator(pv) + + eventBus := types.NewEventBus() + eventBus.SetLogger(log.TestingLogger().With("module", "events")) + eventBus.Start() + cs.SetEventBus(eventBus) + return cs +} + +func loadPrivValidator(config *cfg.Config) *privval.FilePV { + privValidatorFile := config.PrivValidatorFile() + ensureDir(path.Dir(privValidatorFile), 0700) + privValidator := privval.LoadOrGenFilePV(privValidatorFile) + privValidator.Reset() + return privValidator +} + +func randConsensusState(nValidators int) (*ConsensusState, []*validatorStub) { + // Get State + state, privVals := randGenesisState(nValidators, false, 10) + + vss := make([]*validatorStub, nValidators) + + cs := newConsensusState(state, privVals[0], counter.NewCounterApplication(true)) + + for i := 0; i < nValidators; i++ { + vss[i] = NewValidatorStub(privVals[i], i) + } + // since cs1 starts at 1 + incrementHeight(vss[1:]...) + + return cs, vss +} + +//------------------------------------------------------------------------------- + +func ensureNoNewStep(stepCh <-chan interface{}) { + timer := time.NewTimer(ensureTimeout) + select { + case <-timer.C: + break + case <-stepCh: + panic("We should be stuck waiting, not moving to the next step") + } +} + +func ensureNewStep(stepCh <-chan interface{}) { + timer := time.NewTimer(ensureTimeout) + select { + case <-timer.C: + panic("We shouldnt be stuck waiting") + case <-stepCh: + break + } +} + +//------------------------------------------------------------------------------- +// consensus nets + +// consensusLogger is a TestingLogger which uses a different +// color for each validator ("validator" key must exist). +func consensusLogger() log.Logger { + return log.TestingLoggerWithColorFn(func(keyvals ...interface{}) term.FgBgColor { + for i := 0; i < len(keyvals)-1; i += 2 { + if keyvals[i] == "validator" { + return term.FgBgColor{Fg: term.Color(uint8(keyvals[i+1].(int) + 1))} + } + } + return term.FgBgColor{} + }).With("module", "consensus") +} + +func randConsensusNet(nValidators int, testName string, tickerFunc func() TimeoutTicker, appFunc func() abci.Application, configOpts ...func(*cfg.Config)) []*ConsensusState { + genDoc, privVals := randGenesisDoc(nValidators, false, 30) + css := make([]*ConsensusState, nValidators) + logger := consensusLogger() + for i := 0; i < nValidators; i++ { + stateDB := dbm.NewMemDB() // each state needs its own db + state, _ := sm.LoadStateFromDBOrGenesisDoc(stateDB, genDoc) + thisConfig := ResetConfig(cmn.Fmt("%s_%d", testName, i)) + for _, opt := range configOpts { + opt(thisConfig) + } + ensureDir(path.Dir(thisConfig.Consensus.WalFile()), 0700) // dir for wal + app := appFunc() + vals := types.TM2PB.Validators(state.Validators) + app.InitChain(abci.RequestInitChain{Validators: vals}) + + css[i] = newConsensusStateWithConfig(thisConfig, state, privVals[i], app) + css[i].SetTimeoutTicker(tickerFunc()) + css[i].SetLogger(logger.With("validator", i, "module", "consensus")) + } + return css +} + +// nPeers = nValidators + nNotValidator +func randConsensusNetWithPeers(nValidators, nPeers int, testName string, tickerFunc func() TimeoutTicker, appFunc func() abci.Application) []*ConsensusState { + genDoc, privVals := randGenesisDoc(nValidators, false, testMinPower) + css := make([]*ConsensusState, nPeers) + logger := consensusLogger() + for i := 0; i < nPeers; i++ { + stateDB := dbm.NewMemDB() // each state needs its own db + state, _ := sm.LoadStateFromDBOrGenesisDoc(stateDB, genDoc) + thisConfig := ResetConfig(cmn.Fmt("%s_%d", testName, i)) + ensureDir(path.Dir(thisConfig.Consensus.WalFile()), 0700) // dir for wal + var privVal types.PrivValidator + if i < nValidators { + privVal = privVals[i] + } else { + _, tempFilePath := cmn.Tempfile("priv_validator_") + privVal = privval.GenFilePV(tempFilePath) + } + + app := appFunc() + vals := types.TM2PB.Validators(state.Validators) + app.InitChain(abci.RequestInitChain{Validators: vals}) + + css[i] = newConsensusStateWithConfig(thisConfig, state, privVal, app) + css[i].SetTimeoutTicker(tickerFunc()) + css[i].SetLogger(logger.With("validator", i, "module", "consensus")) + } + return css +} + +func getSwitchIndex(switches []*p2p.Switch, peer p2p.Peer) int { + for i, s := range switches { + if peer.NodeInfo().ID == s.NodeInfo().ID { + return i + } + } + panic("didnt find peer in switches") + return -1 +} + +//------------------------------------------------------------------------------- +// genesis + +func randGenesisDoc(numValidators int, randPower bool, minPower int64) (*types.GenesisDoc, []types.PrivValidator) { + validators := make([]types.GenesisValidator, numValidators) + privValidators := make([]types.PrivValidator, numValidators) + for i := 0; i < numValidators; i++ { + val, privVal := types.RandValidator(randPower, minPower) + validators[i] = types.GenesisValidator{ + PubKey: val.PubKey, + Power: val.VotingPower, + } + privValidators[i] = privVal + } + sort.Sort(types.PrivValidatorsByAddress(privValidators)) + + return &types.GenesisDoc{ + GenesisTime: time.Now(), + ChainID: config.ChainID(), + Validators: validators, + }, privValidators +} + +func randGenesisState(numValidators int, randPower bool, minPower int64) (sm.State, []types.PrivValidator) { + genDoc, privValidators := randGenesisDoc(numValidators, randPower, minPower) + s0, _ := sm.MakeGenesisState(genDoc) + db := dbm.NewMemDB() + sm.SaveState(db, s0) + return s0, privValidators +} + +//------------------------------------ +// mock ticker + +func newMockTickerFunc(onlyOnce bool) func() TimeoutTicker { + return func() TimeoutTicker { + return &mockTicker{ + c: make(chan timeoutInfo, 10), + onlyOnce: onlyOnce, + } + } +} + +// mock ticker only fires on RoundStepNewHeight +// and only once if onlyOnce=true +type mockTicker struct { + c chan timeoutInfo + + mtx sync.Mutex + onlyOnce bool + fired bool +} + +func (m *mockTicker) Start() error { + return nil +} + +func (m *mockTicker) Stop() error { + return nil +} + +func (m *mockTicker) ScheduleTimeout(ti timeoutInfo) { + m.mtx.Lock() + defer m.mtx.Unlock() + if m.onlyOnce && m.fired { + return + } + if ti.Step == cstypes.RoundStepNewHeight { + m.c <- ti + m.fired = true + } +} + +func (m *mockTicker) Chan() <-chan timeoutInfo { + return m.c +} + +func (mockTicker) SetLogger(log.Logger) { +} + +//------------------------------------ + +func newCounter() abci.Application { + return counter.NewCounterApplication(true) +} + +func newPersistentKVStore() abci.Application { + dir, _ := ioutil.TempDir("/tmp", "persistent-kvstore") + return kvstore.NewPersistentKVStoreApplication(dir) +} diff --git a/consensus/mempool_test.go b/consensus/mempool_test.go new file mode 100644 index 000000000..3c8180060 --- /dev/null +++ b/consensus/mempool_test.go @@ -0,0 +1,232 @@ +package consensus + +import ( + "encoding/binary" + "fmt" + "testing" + "time" + + "github.com/stretchr/testify/assert" + + "github.com/tendermint/abci/example/code" + abci "github.com/tendermint/abci/types" + cmn "github.com/tendermint/tmlibs/common" + + "github.com/tendermint/tendermint/types" +) + +func init() { + config = ResetConfig("consensus_mempool_test") +} + +func TestMempoolNoProgressUntilTxsAvailable(t *testing.T) { + config := ResetConfig("consensus_mempool_txs_available_test") + config.Consensus.CreateEmptyBlocks = false + state, privVals := randGenesisState(1, false, 10) + cs := newConsensusStateWithConfig(config, state, privVals[0], NewCounterApplication()) + cs.mempool.EnableTxsAvailable() + height, round := cs.Height, cs.Round + newBlockCh := subscribe(cs.eventBus, types.EventQueryNewBlock) + startTestRound(cs, height, round) + + ensureNewStep(newBlockCh) // first block gets committed + ensureNoNewStep(newBlockCh) + deliverTxsRange(cs, 0, 1) + ensureNewStep(newBlockCh) // commit txs + ensureNewStep(newBlockCh) // commit updated app hash + ensureNoNewStep(newBlockCh) +} + +func TestMempoolProgressAfterCreateEmptyBlocksInterval(t *testing.T) { + config := ResetConfig("consensus_mempool_txs_available_test") + config.Consensus.CreateEmptyBlocksInterval = int(ensureTimeout.Seconds()) + state, privVals := randGenesisState(1, false, 10) + cs := newConsensusStateWithConfig(config, state, privVals[0], NewCounterApplication()) + cs.mempool.EnableTxsAvailable() + height, round := cs.Height, cs.Round + newBlockCh := subscribe(cs.eventBus, types.EventQueryNewBlock) + startTestRound(cs, height, round) + + ensureNewStep(newBlockCh) // first block gets committed + ensureNoNewStep(newBlockCh) // then we dont make a block ... + ensureNewStep(newBlockCh) // until the CreateEmptyBlocksInterval has passed +} + +func TestMempoolProgressInHigherRound(t *testing.T) { + config := ResetConfig("consensus_mempool_txs_available_test") + config.Consensus.CreateEmptyBlocks = false + state, privVals := randGenesisState(1, false, 10) + cs := newConsensusStateWithConfig(config, state, privVals[0], NewCounterApplication()) + cs.mempool.EnableTxsAvailable() + height, round := cs.Height, cs.Round + newBlockCh := subscribe(cs.eventBus, types.EventQueryNewBlock) + newRoundCh := subscribe(cs.eventBus, types.EventQueryNewRound) + timeoutCh := subscribe(cs.eventBus, types.EventQueryTimeoutPropose) + cs.setProposal = func(proposal *types.Proposal) error { + if cs.Height == 2 && cs.Round == 0 { + // dont set the proposal in round 0 so we timeout and + // go to next round + cs.Logger.Info("Ignoring set proposal at height 2, round 0") + return nil + } + return cs.defaultSetProposal(proposal) + } + startTestRound(cs, height, round) + + ensureNewStep(newRoundCh) // first round at first height + ensureNewStep(newBlockCh) // first block gets committed + ensureNewStep(newRoundCh) // first round at next height + deliverTxsRange(cs, 0, 1) // we deliver txs, but dont set a proposal so we get the next round + <-timeoutCh + ensureNewStep(newRoundCh) // wait for the next round + ensureNewStep(newBlockCh) // now we can commit the block +} + +func deliverTxsRange(cs *ConsensusState, start, end int) { + // Deliver some txs. + for i := start; i < end; i++ { + txBytes := make([]byte, 8) + binary.BigEndian.PutUint64(txBytes, uint64(i)) + err := cs.mempool.CheckTx(txBytes, nil) + if err != nil { + panic(cmn.Fmt("Error after CheckTx: %v", err)) + } + } +} + +func TestMempoolTxConcurrentWithCommit(t *testing.T) { + state, privVals := randGenesisState(1, false, 10) + cs := newConsensusState(state, privVals[0], NewCounterApplication()) + height, round := cs.Height, cs.Round + newBlockCh := subscribe(cs.eventBus, types.EventQueryNewBlock) + + NTxs := 10000 + go deliverTxsRange(cs, 0, NTxs) + + startTestRound(cs, height, round) + for nTxs := 0; nTxs < NTxs; { + ticker := time.NewTicker(time.Second * 30) + select { + case b := <-newBlockCh: + evt := b.(types.EventDataNewBlock) + nTxs += int(evt.Block.Header.NumTxs) + case <-ticker.C: + panic("Timed out waiting to commit blocks with transactions") + } + } +} + +func TestMempoolRmBadTx(t *testing.T) { + state, privVals := randGenesisState(1, false, 10) + app := NewCounterApplication() + cs := newConsensusState(state, privVals[0], app) + + // increment the counter by 1 + txBytes := make([]byte, 8) + binary.BigEndian.PutUint64(txBytes, uint64(0)) + + resDeliver := app.DeliverTx(txBytes) + assert.False(t, resDeliver.IsErr(), cmn.Fmt("expected no error. got %v", resDeliver)) + + resCommit := app.Commit() + assert.True(t, len(resCommit.Data) > 0) + + emptyMempoolCh := make(chan struct{}) + checkTxRespCh := make(chan struct{}) + go func() { + // Try to send the tx through the mempool. + // CheckTx should not err, but the app should return a bad abci code + // and the tx should get removed from the pool + err := cs.mempool.CheckTx(txBytes, func(r *abci.Response) { + if r.GetCheckTx().Code != code.CodeTypeBadNonce { + t.Fatalf("expected checktx to return bad nonce, got %v", r) + } + checkTxRespCh <- struct{}{} + }) + if err != nil { + t.Fatalf("Error after CheckTx: %v", err) + } + + // check for the tx + for { + txs := cs.mempool.Reap(1) + if len(txs) == 0 { + emptyMempoolCh <- struct{}{} + return + } + time.Sleep(10 * time.Millisecond) + } + }() + + // Wait until the tx returns + ticker := time.After(time.Second * 5) + select { + case <-checkTxRespCh: + // success + case <-ticker: + t.Fatalf("Timed out waiting for tx to return") + } + + // Wait until the tx is removed + ticker = time.After(time.Second * 5) + select { + case <-emptyMempoolCh: + // success + case <-ticker: + t.Fatalf("Timed out waiting for tx to be removed") + } +} + +// CounterApplication that maintains a mempool state and resets it upon commit +type CounterApplication struct { + abci.BaseApplication + + txCount int + mempoolTxCount int +} + +func NewCounterApplication() *CounterApplication { + return &CounterApplication{} +} + +func (app *CounterApplication) Info(req abci.RequestInfo) abci.ResponseInfo { + return abci.ResponseInfo{Data: cmn.Fmt("txs:%v", app.txCount)} +} + +func (app *CounterApplication) DeliverTx(tx []byte) abci.ResponseDeliverTx { + txValue := txAsUint64(tx) + if txValue != uint64(app.txCount) { + return abci.ResponseDeliverTx{ + Code: code.CodeTypeBadNonce, + Log: fmt.Sprintf("Invalid nonce. Expected %v, got %v", app.txCount, txValue)} + } + app.txCount++ + return abci.ResponseDeliverTx{Code: code.CodeTypeOK} +} + +func (app *CounterApplication) CheckTx(tx []byte) abci.ResponseCheckTx { + txValue := txAsUint64(tx) + if txValue != uint64(app.mempoolTxCount) { + return abci.ResponseCheckTx{ + Code: code.CodeTypeBadNonce, + Log: fmt.Sprintf("Invalid nonce. Expected %v, got %v", app.mempoolTxCount, txValue)} + } + app.mempoolTxCount++ + return abci.ResponseCheckTx{Code: code.CodeTypeOK} +} + +func txAsUint64(tx []byte) uint64 { + tx8 := make([]byte, 8) + copy(tx8[len(tx8)-len(tx):], tx) + return binary.BigEndian.Uint64(tx8) +} + +func (app *CounterApplication) Commit() abci.ResponseCommit { + app.mempoolTxCount = app.txCount + if app.txCount == 0 { + return abci.ResponseCommit{} + } + hash := make([]byte, 8) + binary.BigEndian.PutUint64(hash, uint64(app.txCount)) + return abci.ResponseCommit{Data: hash} +} diff --git a/consensus/metrics.go b/consensus/metrics.go new file mode 100644 index 000000000..253880e84 --- /dev/null +++ b/consensus/metrics.go @@ -0,0 +1,133 @@ +package consensus + +import ( + "github.com/go-kit/kit/metrics" + "github.com/go-kit/kit/metrics/discard" + + prometheus "github.com/go-kit/kit/metrics/prometheus" + stdprometheus "github.com/prometheus/client_golang/prometheus" +) + +// Metrics contains metrics exposed by this package. +type Metrics struct { + // Height of the chain. + Height metrics.Gauge + + // Number of rounds. + Rounds metrics.Gauge + + // Number of validators. + Validators metrics.Gauge + // Total power of all validators. + ValidatorsPower metrics.Gauge + // Number of validators who did not sign. + MissingValidators metrics.Gauge + // Total power of the missing validators. + MissingValidatorsPower metrics.Gauge + // Number of validators who tried to double sign. + ByzantineValidators metrics.Gauge + // Total power of the byzantine validators. + ByzantineValidatorsPower metrics.Gauge + + // Time between this and the last block. + BlockIntervalSeconds metrics.Histogram + + // Number of transactions. + NumTxs metrics.Gauge + // Size of the block. + BlockSizeBytes metrics.Gauge + // Total number of transactions. + TotalTxs metrics.Gauge +} + +// PrometheusMetrics returns Metrics build using Prometheus client library. +func PrometheusMetrics() *Metrics { + return &Metrics{ + Height: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "height", + Help: "Height of the chain.", + }, []string{}), + Rounds: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "rounds", + Help: "Number of rounds.", + }, []string{}), + + Validators: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "validators", + Help: "Number of validators.", + }, []string{}), + ValidatorsPower: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "validators_power", + Help: "Total power of all validators.", + }, []string{}), + MissingValidators: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "missing_validators", + Help: "Number of validators who did not sign.", + }, []string{}), + MissingValidatorsPower: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "missing_validators_power", + Help: "Total power of the missing validators.", + }, []string{}), + ByzantineValidators: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "byzantine_validators", + Help: "Number of validators who tried to double sign.", + }, []string{}), + ByzantineValidatorsPower: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "byzantine_validators_power", + Help: "Total power of the byzantine validators.", + }, []string{}), + + BlockIntervalSeconds: prometheus.NewHistogramFrom(stdprometheus.HistogramOpts{ + Subsystem: "consensus", + Name: "block_interval_seconds", + Help: "Time between this and the last block.", + Buckets: []float64{1, 2.5, 5, 10, 60}, + }, []string{}), + + NumTxs: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "num_txs", + Help: "Number of transactions.", + }, []string{}), + BlockSizeBytes: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "block_size_bytes", + Help: "Size of the block.", + }, []string{}), + TotalTxs: prometheus.NewGaugeFrom(stdprometheus.GaugeOpts{ + Subsystem: "consensus", + Name: "total_txs", + Help: "Total number of transactions.", + }, []string{}), + } +} + +// NopMetrics returns no-op Metrics. +func NopMetrics() *Metrics { + return &Metrics{ + Height: discard.NewGauge(), + + Rounds: discard.NewGauge(), + + Validators: discard.NewGauge(), + ValidatorsPower: discard.NewGauge(), + MissingValidators: discard.NewGauge(), + MissingValidatorsPower: discard.NewGauge(), + ByzantineValidators: discard.NewGauge(), + ByzantineValidatorsPower: discard.NewGauge(), + + BlockIntervalSeconds: discard.NewHistogram(), + + NumTxs: discard.NewGauge(), + BlockSizeBytes: discard.NewGauge(), + TotalTxs: discard.NewGauge(), + } +} diff --git a/consensus/reactor.go b/consensus/reactor.go new file mode 100644 index 000000000..2034ad344 --- /dev/null +++ b/consensus/reactor.go @@ -0,0 +1,1459 @@ +package consensus + +import ( + "fmt" + "reflect" + "sync" + "time" + + "github.com/pkg/errors" + + amino "github.com/tendermint/go-amino" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" + + cstypes "github.com/tendermint/tendermint/consensus/types" + tmevents "github.com/tendermint/tendermint/libs/events" + "github.com/tendermint/tendermint/p2p" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" +) + +const ( + StateChannel = byte(0x20) + DataChannel = byte(0x21) + VoteChannel = byte(0x22) + VoteSetBitsChannel = byte(0x23) + + maxMsgSize = 1048576 // 1MB; NOTE/TODO: keep in sync with types.PartSet sizes. + + blocksToContributeToBecomeGoodPeer = 10000 +) + +//----------------------------------------------------------------------------- + +// ConsensusReactor defines a reactor for the consensus service. +type ConsensusReactor struct { + p2p.BaseReactor // BaseService + p2p.Switch + + conS *ConsensusState + + mtx sync.RWMutex + fastSync bool + eventBus *types.EventBus +} + +// NewConsensusReactor returns a new ConsensusReactor with the given +// consensusState. +func NewConsensusReactor(consensusState *ConsensusState, fastSync bool) *ConsensusReactor { + conR := &ConsensusReactor{ + conS: consensusState, + fastSync: fastSync, + } + conR.BaseReactor = *p2p.NewBaseReactor("ConsensusReactor", conR) + return conR +} + +// OnStart implements BaseService by subscribing to events, which later will be +// broadcasted to other peers and starting state if we're not in fast sync. +func (conR *ConsensusReactor) OnStart() error { + conR.Logger.Info("ConsensusReactor ", "fastSync", conR.FastSync()) + if err := conR.BaseReactor.OnStart(); err != nil { + return err + } + + conR.subscribeToBroadcastEvents() + + if !conR.FastSync() { + err := conR.conS.Start() + if err != nil { + return err + } + } + + return nil +} + +// OnStop implements BaseService by unsubscribing from events and stopping +// state. +func (conR *ConsensusReactor) OnStop() { + conR.BaseReactor.OnStop() + conR.unsubscribeFromBroadcastEvents() + conR.conS.Stop() +} + +// SwitchToConsensus switches from fast_sync mode to consensus mode. +// It resets the state, turns off fast_sync, and starts the consensus state-machine +func (conR *ConsensusReactor) SwitchToConsensus(state sm.State, blocksSynced int) { + conR.Logger.Info("SwitchToConsensus") + conR.conS.reconstructLastCommit(state) + // NOTE: The line below causes broadcastNewRoundStepRoutine() to + // broadcast a NewRoundStepMessage. + conR.conS.updateToState(state) + + conR.mtx.Lock() + conR.fastSync = false + conR.mtx.Unlock() + + if blocksSynced > 0 { + // dont bother with the WAL if we fast synced + conR.conS.doWALCatchup = false + } + err := conR.conS.Start() + if err != nil { + conR.Logger.Error("Error starting conS", "err", err) + return + } +} + +// GetChannels implements Reactor +func (conR *ConsensusReactor) GetChannels() []*p2p.ChannelDescriptor { + // TODO optimize + return []*p2p.ChannelDescriptor{ + { + ID: StateChannel, + Priority: 5, + SendQueueCapacity: 100, + RecvMessageCapacity: maxMsgSize, + }, + { + ID: DataChannel, // maybe split between gossiping current block and catchup stuff + Priority: 10, // once we gossip the whole block there's nothing left to send until next height or round + SendQueueCapacity: 100, + RecvBufferCapacity: 50 * 4096, + RecvMessageCapacity: maxMsgSize, + }, + { + ID: VoteChannel, + Priority: 5, + SendQueueCapacity: 100, + RecvBufferCapacity: 100 * 100, + RecvMessageCapacity: maxMsgSize, + }, + { + ID: VoteSetBitsChannel, + Priority: 1, + SendQueueCapacity: 2, + RecvBufferCapacity: 1024, + RecvMessageCapacity: maxMsgSize, + }, + } +} + +// AddPeer implements Reactor +func (conR *ConsensusReactor) AddPeer(peer p2p.Peer) { + if !conR.IsRunning() { + return + } + + // Create peerState for peer + peerState := NewPeerState(peer).SetLogger(conR.Logger) + peer.Set(types.PeerStateKey, peerState) + + // Begin routines for this peer. + go conR.gossipDataRoutine(peer, peerState) + go conR.gossipVotesRoutine(peer, peerState) + go conR.queryMaj23Routine(peer, peerState) + + // Send our state to peer. + // If we're fast_syncing, broadcast a RoundStepMessage later upon SwitchToConsensus(). + if !conR.FastSync() { + conR.sendNewRoundStepMessages(peer) + } +} + +// RemovePeer implements Reactor +func (conR *ConsensusReactor) RemovePeer(peer p2p.Peer, reason interface{}) { + if !conR.IsRunning() { + return + } + // TODO + //peer.Get(PeerStateKey).(*PeerState).Disconnect() +} + +// Receive implements Reactor +// NOTE: We process these messages even when we're fast_syncing. +// Messages affect either a peer state or the consensus state. +// Peer state updates can happen in parallel, but processing of +// proposals, block parts, and votes are ordered by the receiveRoutine +// NOTE: blocks on consensus state for proposals, block parts, and votes +func (conR *ConsensusReactor) Receive(chID byte, src p2p.Peer, msgBytes []byte) { + if !conR.IsRunning() { + conR.Logger.Debug("Receive", "src", src, "chId", chID, "bytes", msgBytes) + return + } + + msg, err := DecodeMessage(msgBytes) + if err != nil { + conR.Logger.Error("Error decoding message", "src", src, "chId", chID, "msg", msg, "err", err, "bytes", msgBytes) + conR.Switch.StopPeerForError(src, err) + return + } + conR.Logger.Debug("Receive", "src", src, "chId", chID, "msg", msg) + + // Get peer states + ps := src.Get(types.PeerStateKey).(*PeerState) + + switch chID { + case StateChannel: + switch msg := msg.(type) { + case *NewRoundStepMessage: + ps.ApplyNewRoundStepMessage(msg) + case *CommitStepMessage: + ps.ApplyCommitStepMessage(msg) + case *HasVoteMessage: + ps.ApplyHasVoteMessage(msg) + case *VoteSetMaj23Message: + cs := conR.conS + cs.mtx.Lock() + height, votes := cs.Height, cs.Votes + cs.mtx.Unlock() + if height != msg.Height { + return + } + // Peer claims to have a maj23 for some BlockID at H,R,S, + err := votes.SetPeerMaj23(msg.Round, msg.Type, ps.peer.ID(), msg.BlockID) + if err != nil { + conR.Switch.StopPeerForError(src, err) + return + } + // Respond with a VoteSetBitsMessage showing which votes we have. + // (and consequently shows which we don't have) + var ourVotes *cmn.BitArray + switch msg.Type { + case types.VoteTypePrevote: + ourVotes = votes.Prevotes(msg.Round).BitArrayByBlockID(msg.BlockID) + case types.VoteTypePrecommit: + ourVotes = votes.Precommits(msg.Round).BitArrayByBlockID(msg.BlockID) + default: + conR.Logger.Error("Bad VoteSetBitsMessage field Type") + return + } + src.TrySend(VoteSetBitsChannel, cdc.MustMarshalBinaryBare(&VoteSetBitsMessage{ + Height: msg.Height, + Round: msg.Round, + Type: msg.Type, + BlockID: msg.BlockID, + Votes: ourVotes, + })) + case *ProposalHeartbeatMessage: + hb := msg.Heartbeat + conR.Logger.Debug("Received proposal heartbeat message", + "height", hb.Height, "round", hb.Round, "sequence", hb.Sequence, + "valIdx", hb.ValidatorIndex, "valAddr", hb.ValidatorAddress) + default: + conR.Logger.Error(cmn.Fmt("Unknown message type %v", reflect.TypeOf(msg))) + } + + case DataChannel: + if conR.FastSync() { + conR.Logger.Info("Ignoring message received during fastSync", "msg", msg) + return + } + switch msg := msg.(type) { + case *ProposalMessage: + ps.SetHasProposal(msg.Proposal) + conR.conS.peerMsgQueue <- msgInfo{msg, src.ID()} + case *ProposalPOLMessage: + ps.ApplyProposalPOLMessage(msg) + case *BlockPartMessage: + ps.SetHasProposalBlockPart(msg.Height, msg.Round, msg.Part.Index) + if numBlocks := ps.RecordBlockPart(msg); numBlocks%blocksToContributeToBecomeGoodPeer == 0 { + conR.Switch.MarkPeerAsGood(src) + } + conR.conS.peerMsgQueue <- msgInfo{msg, src.ID()} + default: + conR.Logger.Error(cmn.Fmt("Unknown message type %v", reflect.TypeOf(msg))) + } + + case VoteChannel: + if conR.FastSync() { + conR.Logger.Info("Ignoring message received during fastSync", "msg", msg) + return + } + switch msg := msg.(type) { + case *VoteMessage: + cs := conR.conS + cs.mtx.Lock() + height, valSize, lastCommitSize := cs.Height, cs.Validators.Size(), cs.LastCommit.Size() + cs.mtx.Unlock() + ps.EnsureVoteBitArrays(height, valSize) + ps.EnsureVoteBitArrays(height-1, lastCommitSize) + ps.SetHasVote(msg.Vote) + if blocks := ps.RecordVote(msg.Vote); blocks%blocksToContributeToBecomeGoodPeer == 0 { + conR.Switch.MarkPeerAsGood(src) + } + + cs.peerMsgQueue <- msgInfo{msg, src.ID()} + + default: + // don't punish (leave room for soft upgrades) + conR.Logger.Error(cmn.Fmt("Unknown message type %v", reflect.TypeOf(msg))) + } + + case VoteSetBitsChannel: + if conR.FastSync() { + conR.Logger.Info("Ignoring message received during fastSync", "msg", msg) + return + } + switch msg := msg.(type) { + case *VoteSetBitsMessage: + cs := conR.conS + cs.mtx.Lock() + height, votes := cs.Height, cs.Votes + cs.mtx.Unlock() + + if height == msg.Height { + var ourVotes *cmn.BitArray + switch msg.Type { + case types.VoteTypePrevote: + ourVotes = votes.Prevotes(msg.Round).BitArrayByBlockID(msg.BlockID) + case types.VoteTypePrecommit: + ourVotes = votes.Precommits(msg.Round).BitArrayByBlockID(msg.BlockID) + default: + conR.Logger.Error("Bad VoteSetBitsMessage field Type") + return + } + ps.ApplyVoteSetBitsMessage(msg, ourVotes) + } else { + ps.ApplyVoteSetBitsMessage(msg, nil) + } + default: + // don't punish (leave room for soft upgrades) + conR.Logger.Error(cmn.Fmt("Unknown message type %v", reflect.TypeOf(msg))) + } + + default: + conR.Logger.Error(cmn.Fmt("Unknown chId %X", chID)) + } + + if err != nil { + conR.Logger.Error("Error in Receive()", "err", err) + } +} + +// SetEventBus sets event bus. +func (conR *ConsensusReactor) SetEventBus(b *types.EventBus) { + conR.eventBus = b + conR.conS.SetEventBus(b) +} + +// FastSync returns whether the consensus reactor is in fast-sync mode. +func (conR *ConsensusReactor) FastSync() bool { + conR.mtx.RLock() + defer conR.mtx.RUnlock() + return conR.fastSync +} + +//-------------------------------------- + +// subscribeToBroadcastEvents subscribes for new round steps, votes and +// proposal heartbeats using internal pubsub defined on state to broadcast +// them to peers upon receiving. +func (conR *ConsensusReactor) subscribeToBroadcastEvents() { + const subscriber = "consensus-reactor" + conR.conS.evsw.AddListenerForEvent(subscriber, types.EventNewRoundStep, + func(data tmevents.EventData) { + conR.broadcastNewRoundStepMessages(data.(*cstypes.RoundState)) + }) + + conR.conS.evsw.AddListenerForEvent(subscriber, types.EventVote, + func(data tmevents.EventData) { + conR.broadcastHasVoteMessage(data.(*types.Vote)) + }) + + conR.conS.evsw.AddListenerForEvent(subscriber, types.EventProposalHeartbeat, + func(data tmevents.EventData) { + conR.broadcastProposalHeartbeatMessage(data.(*types.Heartbeat)) + }) +} + +func (conR *ConsensusReactor) unsubscribeFromBroadcastEvents() { + const subscriber = "consensus-reactor" + conR.conS.evsw.RemoveListener(subscriber) +} + +func (conR *ConsensusReactor) broadcastProposalHeartbeatMessage(hb *types.Heartbeat) { + conR.Logger.Debug("Broadcasting proposal heartbeat message", + "height", hb.Height, "round", hb.Round, "sequence", hb.Sequence) + msg := &ProposalHeartbeatMessage{hb} + conR.Switch.Broadcast(StateChannel, cdc.MustMarshalBinaryBare(msg)) +} + +func (conR *ConsensusReactor) broadcastNewRoundStepMessages(rs *cstypes.RoundState) { + nrsMsg, csMsg := makeRoundStepMessages(rs) + if nrsMsg != nil { + conR.Switch.Broadcast(StateChannel, cdc.MustMarshalBinaryBare(nrsMsg)) + } + if csMsg != nil { + conR.Switch.Broadcast(StateChannel, cdc.MustMarshalBinaryBare(csMsg)) + } +} + +// Broadcasts HasVoteMessage to peers that care. +func (conR *ConsensusReactor) broadcastHasVoteMessage(vote *types.Vote) { + msg := &HasVoteMessage{ + Height: vote.Height, + Round: vote.Round, + Type: vote.Type, + Index: vote.ValidatorIndex, + } + conR.Switch.Broadcast(StateChannel, cdc.MustMarshalBinaryBare(msg)) + /* + // TODO: Make this broadcast more selective. + for _, peer := range conR.Switch.Peers().List() { + ps := peer.Get(PeerStateKey).(*PeerState) + prs := ps.GetRoundState() + if prs.Height == vote.Height { + // TODO: Also filter on round? + peer.TrySend(StateChannel, struct{ ConsensusMessage }{msg}) + } else { + // Height doesn't match + // TODO: check a field, maybe CatchupCommitRound? + // TODO: But that requires changing the struct field comment. + } + } + */ +} + +func makeRoundStepMessages(rs *cstypes.RoundState) (nrsMsg *NewRoundStepMessage, csMsg *CommitStepMessage) { + nrsMsg = &NewRoundStepMessage{ + Height: rs.Height, + Round: rs.Round, + Step: rs.Step, + SecondsSinceStartTime: int(time.Since(rs.StartTime).Seconds()), + LastCommitRound: rs.LastCommit.Round(), + } + if rs.Step == cstypes.RoundStepCommit { + csMsg = &CommitStepMessage{ + Height: rs.Height, + BlockPartsHeader: rs.ProposalBlockParts.Header(), + BlockParts: rs.ProposalBlockParts.BitArray(), + } + } + return +} + +func (conR *ConsensusReactor) sendNewRoundStepMessages(peer p2p.Peer) { + rs := conR.conS.GetRoundState() + nrsMsg, csMsg := makeRoundStepMessages(rs) + if nrsMsg != nil { + peer.Send(StateChannel, cdc.MustMarshalBinaryBare(nrsMsg)) + } + if csMsg != nil { + peer.Send(StateChannel, cdc.MustMarshalBinaryBare(csMsg)) + } +} + +func (conR *ConsensusReactor) gossipDataRoutine(peer p2p.Peer, ps *PeerState) { + logger := conR.Logger.With("peer", peer) + +OUTER_LOOP: + for { + // Manage disconnects from self or peer. + if !peer.IsRunning() || !conR.IsRunning() { + logger.Info("Stopping gossipDataRoutine for peer") + return + } + rs := conR.conS.GetRoundState() + prs := ps.GetRoundState() + + // Send proposal Block parts? + if rs.ProposalBlockParts.HasHeader(prs.ProposalBlockPartsHeader) { + if index, ok := rs.ProposalBlockParts.BitArray().Sub(prs.ProposalBlockParts.Copy()).PickRandom(); ok { + part := rs.ProposalBlockParts.GetPart(index) + msg := &BlockPartMessage{ + Height: rs.Height, // This tells peer that this part applies to us. + Round: rs.Round, // This tells peer that this part applies to us. + Part: part, + } + logger.Debug("Sending block part", "height", prs.Height, "round", prs.Round) + if peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) { + ps.SetHasProposalBlockPart(prs.Height, prs.Round, index) + } + continue OUTER_LOOP + } + } + + // If the peer is on a previous height, help catch up. + if (0 < prs.Height) && (prs.Height < rs.Height) { + heightLogger := logger.With("height", prs.Height) + + // if we never received the commit message from the peer, the block parts wont be initialized + if prs.ProposalBlockParts == nil { + blockMeta := conR.conS.blockStore.LoadBlockMeta(prs.Height) + if blockMeta == nil { + cmn.PanicCrisis(cmn.Fmt("Failed to load block %d when blockStore is at %d", + prs.Height, conR.conS.blockStore.Height())) + } + ps.InitProposalBlockParts(blockMeta.BlockID.PartsHeader) + // continue the loop since prs is a copy and not effected by this initialization + continue OUTER_LOOP + } + conR.gossipDataForCatchup(heightLogger, rs, prs, ps, peer) + continue OUTER_LOOP + } + + // If height and round don't match, sleep. + if (rs.Height != prs.Height) || (rs.Round != prs.Round) { + //logger.Info("Peer Height|Round mismatch, sleeping", "peerHeight", prs.Height, "peerRound", prs.Round, "peer", peer) + time.Sleep(conR.conS.config.PeerGossipSleep()) + continue OUTER_LOOP + } + + // By here, height and round match. + // Proposal block parts were already matched and sent if any were wanted. + // (These can match on hash so the round doesn't matter) + // Now consider sending other things, like the Proposal itself. + + // Send Proposal && ProposalPOL BitArray? + if rs.Proposal != nil && !prs.Proposal { + // Proposal: share the proposal metadata with peer. + { + msg := &ProposalMessage{Proposal: rs.Proposal} + logger.Debug("Sending proposal", "height", prs.Height, "round", prs.Round) + if peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) { + ps.SetHasProposal(rs.Proposal) + } + } + // ProposalPOL: lets peer know which POL votes we have so far. + // Peer must receive ProposalMessage first. + // rs.Proposal was validated, so rs.Proposal.POLRound <= rs.Round, + // so we definitely have rs.Votes.Prevotes(rs.Proposal.POLRound). + if 0 <= rs.Proposal.POLRound { + msg := &ProposalPOLMessage{ + Height: rs.Height, + ProposalPOLRound: rs.Proposal.POLRound, + ProposalPOL: rs.Votes.Prevotes(rs.Proposal.POLRound).BitArray(), + } + logger.Debug("Sending POL", "height", prs.Height, "round", prs.Round) + peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) + } + continue OUTER_LOOP + } + + // Nothing to do. Sleep. + time.Sleep(conR.conS.config.PeerGossipSleep()) + continue OUTER_LOOP + } +} + +func (conR *ConsensusReactor) gossipDataForCatchup(logger log.Logger, rs *cstypes.RoundState, + prs *cstypes.PeerRoundState, ps *PeerState, peer p2p.Peer) { + + if index, ok := prs.ProposalBlockParts.Not().PickRandom(); ok { + // Ensure that the peer's PartSetHeader is correct + blockMeta := conR.conS.blockStore.LoadBlockMeta(prs.Height) + if blockMeta == nil { + logger.Error("Failed to load block meta", + "ourHeight", rs.Height, "blockstoreHeight", conR.conS.blockStore.Height()) + time.Sleep(conR.conS.config.PeerGossipSleep()) + return + } else if !blockMeta.BlockID.PartsHeader.Equals(prs.ProposalBlockPartsHeader) { + logger.Info("Peer ProposalBlockPartsHeader mismatch, sleeping", + "blockPartsHeader", blockMeta.BlockID.PartsHeader, "peerBlockPartsHeader", prs.ProposalBlockPartsHeader) + time.Sleep(conR.conS.config.PeerGossipSleep()) + return + } + // Load the part + part := conR.conS.blockStore.LoadBlockPart(prs.Height, index) + if part == nil { + logger.Error("Could not load part", "index", index, + "blockPartsHeader", blockMeta.BlockID.PartsHeader, "peerBlockPartsHeader", prs.ProposalBlockPartsHeader) + time.Sleep(conR.conS.config.PeerGossipSleep()) + return + } + // Send the part + msg := &BlockPartMessage{ + Height: prs.Height, // Not our height, so it doesn't matter. + Round: prs.Round, // Not our height, so it doesn't matter. + Part: part, + } + logger.Debug("Sending block part for catchup", "round", prs.Round, "index", index) + if peer.Send(DataChannel, cdc.MustMarshalBinaryBare(msg)) { + ps.SetHasProposalBlockPart(prs.Height, prs.Round, index) + } else { + logger.Debug("Sending block part for catchup failed") + } + return + } + //logger.Info("No parts to send in catch-up, sleeping") + time.Sleep(conR.conS.config.PeerGossipSleep()) +} + +func (conR *ConsensusReactor) gossipVotesRoutine(peer p2p.Peer, ps *PeerState) { + logger := conR.Logger.With("peer", peer) + + // Simple hack to throttle logs upon sleep. + var sleeping = 0 + +OUTER_LOOP: + for { + // Manage disconnects from self or peer. + if !peer.IsRunning() || !conR.IsRunning() { + logger.Info("Stopping gossipVotesRoutine for peer") + return + } + rs := conR.conS.GetRoundState() + prs := ps.GetRoundState() + + switch sleeping { + case 1: // First sleep + sleeping = 2 + case 2: // No more sleep + sleeping = 0 + } + + //logger.Debug("gossipVotesRoutine", "rsHeight", rs.Height, "rsRound", rs.Round, + // "prsHeight", prs.Height, "prsRound", prs.Round, "prsStep", prs.Step) + + // If height matches, then send LastCommit, Prevotes, Precommits. + if rs.Height == prs.Height { + heightLogger := logger.With("height", prs.Height) + if conR.gossipVotesForHeight(heightLogger, rs, prs, ps) { + continue OUTER_LOOP + } + } + + // Special catchup logic. + // If peer is lagging by height 1, send LastCommit. + if prs.Height != 0 && rs.Height == prs.Height+1 { + if ps.PickSendVote(rs.LastCommit) { + logger.Debug("Picked rs.LastCommit to send", "height", prs.Height) + continue OUTER_LOOP + } + } + + // Catchup logic + // If peer is lagging by more than 1, send Commit. + if prs.Height != 0 && rs.Height >= prs.Height+2 { + // Load the block commit for prs.Height, + // which contains precommit signatures for prs.Height. + commit := conR.conS.blockStore.LoadBlockCommit(prs.Height) + if ps.PickSendVote(commit) { + logger.Debug("Picked Catchup commit to send", "height", prs.Height) + continue OUTER_LOOP + } + } + + if sleeping == 0 { + // We sent nothing. Sleep... + sleeping = 1 + logger.Debug("No votes to send, sleeping", "rs.Height", rs.Height, "prs.Height", prs.Height, + "localPV", rs.Votes.Prevotes(rs.Round).BitArray(), "peerPV", prs.Prevotes, + "localPC", rs.Votes.Precommits(rs.Round).BitArray(), "peerPC", prs.Precommits) + } else if sleeping == 2 { + // Continued sleep... + sleeping = 1 + } + + time.Sleep(conR.conS.config.PeerGossipSleep()) + continue OUTER_LOOP + } +} + +func (conR *ConsensusReactor) gossipVotesForHeight(logger log.Logger, rs *cstypes.RoundState, prs *cstypes.PeerRoundState, ps *PeerState) bool { + + // If there are lastCommits to send... + if prs.Step == cstypes.RoundStepNewHeight { + if ps.PickSendVote(rs.LastCommit) { + logger.Debug("Picked rs.LastCommit to send") + return true + } + } + // If there are POL prevotes to send... + if prs.Step <= cstypes.RoundStepPropose && prs.Round != -1 && prs.Round <= rs.Round && prs.ProposalPOLRound != -1 { + if polPrevotes := rs.Votes.Prevotes(prs.ProposalPOLRound); polPrevotes != nil { + if ps.PickSendVote(polPrevotes) { + logger.Debug("Picked rs.Prevotes(prs.ProposalPOLRound) to send", + "round", prs.ProposalPOLRound) + return true + } + } + } + // If there are prevotes to send... + if prs.Step <= cstypes.RoundStepPrevoteWait && prs.Round != -1 && prs.Round <= rs.Round { + if ps.PickSendVote(rs.Votes.Prevotes(prs.Round)) { + logger.Debug("Picked rs.Prevotes(prs.Round) to send", "round", prs.Round) + return true + } + } + // If there are precommits to send... + if prs.Step <= cstypes.RoundStepPrecommitWait && prs.Round != -1 && prs.Round <= rs.Round { + if ps.PickSendVote(rs.Votes.Precommits(prs.Round)) { + logger.Debug("Picked rs.Precommits(prs.Round) to send", "round", prs.Round) + return true + } + } + // If there are prevotes to send...Needed because of validBlock mechanism + if prs.Round != -1 && prs.Round <= rs.Round { + if ps.PickSendVote(rs.Votes.Prevotes(prs.Round)) { + logger.Debug("Picked rs.Prevotes(prs.Round) to send", "round", prs.Round) + return true + } + } + // If there are POLPrevotes to send... + if prs.ProposalPOLRound != -1 { + if polPrevotes := rs.Votes.Prevotes(prs.ProposalPOLRound); polPrevotes != nil { + if ps.PickSendVote(polPrevotes) { + logger.Debug("Picked rs.Prevotes(prs.ProposalPOLRound) to send", + "round", prs.ProposalPOLRound) + return true + } + } + } + + return false +} + +// NOTE: `queryMaj23Routine` has a simple crude design since it only comes +// into play for liveness when there's a signature DDoS attack happening. +func (conR *ConsensusReactor) queryMaj23Routine(peer p2p.Peer, ps *PeerState) { + logger := conR.Logger.With("peer", peer) + +OUTER_LOOP: + for { + // Manage disconnects from self or peer. + if !peer.IsRunning() || !conR.IsRunning() { + logger.Info("Stopping queryMaj23Routine for peer") + return + } + + // Maybe send Height/Round/Prevotes + { + rs := conR.conS.GetRoundState() + prs := ps.GetRoundState() + if rs.Height == prs.Height { + if maj23, ok := rs.Votes.Prevotes(prs.Round).TwoThirdsMajority(); ok { + peer.TrySend(StateChannel, cdc.MustMarshalBinaryBare(&VoteSetMaj23Message{ + Height: prs.Height, + Round: prs.Round, + Type: types.VoteTypePrevote, + BlockID: maj23, + })) + time.Sleep(conR.conS.config.PeerQueryMaj23Sleep()) + } + } + } + + // Maybe send Height/Round/Precommits + { + rs := conR.conS.GetRoundState() + prs := ps.GetRoundState() + if rs.Height == prs.Height { + if maj23, ok := rs.Votes.Precommits(prs.Round).TwoThirdsMajority(); ok { + peer.TrySend(StateChannel, cdc.MustMarshalBinaryBare(&VoteSetMaj23Message{ + Height: prs.Height, + Round: prs.Round, + Type: types.VoteTypePrecommit, + BlockID: maj23, + })) + time.Sleep(conR.conS.config.PeerQueryMaj23Sleep()) + } + } + } + + // Maybe send Height/Round/ProposalPOL + { + rs := conR.conS.GetRoundState() + prs := ps.GetRoundState() + if rs.Height == prs.Height && prs.ProposalPOLRound >= 0 { + if maj23, ok := rs.Votes.Prevotes(prs.ProposalPOLRound).TwoThirdsMajority(); ok { + peer.TrySend(StateChannel, cdc.MustMarshalBinaryBare(&VoteSetMaj23Message{ + Height: prs.Height, + Round: prs.ProposalPOLRound, + Type: types.VoteTypePrevote, + BlockID: maj23, + })) + time.Sleep(conR.conS.config.PeerQueryMaj23Sleep()) + } + } + } + + // Little point sending LastCommitRound/LastCommit, + // These are fleeting and non-blocking. + + // Maybe send Height/CatchupCommitRound/CatchupCommit. + { + prs := ps.GetRoundState() + if prs.CatchupCommitRound != -1 && 0 < prs.Height && prs.Height <= conR.conS.blockStore.Height() { + commit := conR.conS.LoadCommit(prs.Height) + peer.TrySend(StateChannel, cdc.MustMarshalBinaryBare(&VoteSetMaj23Message{ + Height: prs.Height, + Round: commit.Round(), + Type: types.VoteTypePrecommit, + BlockID: commit.BlockID, + })) + time.Sleep(conR.conS.config.PeerQueryMaj23Sleep()) + } + } + + time.Sleep(conR.conS.config.PeerQueryMaj23Sleep()) + + continue OUTER_LOOP + } +} + +// String returns a string representation of the ConsensusReactor. +// NOTE: For now, it is just a hard-coded string to avoid accessing unprotected shared variables. +// TODO: improve! +func (conR *ConsensusReactor) String() string { + // better not to access shared variables + return "ConsensusReactor" // conR.StringIndented("") +} + +// StringIndented returns an indented string representation of the ConsensusReactor +func (conR *ConsensusReactor) StringIndented(indent string) string { + s := "ConsensusReactor{\n" + s += indent + " " + conR.conS.StringIndented(indent+" ") + "\n" + for _, peer := range conR.Switch.Peers().List() { + ps := peer.Get(types.PeerStateKey).(*PeerState) + s += indent + " " + ps.StringIndented(indent+" ") + "\n" + } + s += indent + "}" + return s +} + +//----------------------------------------------------------------------------- + +var ( + ErrPeerStateHeightRegression = errors.New("Error peer state height regression") + ErrPeerStateInvalidStartTime = errors.New("Error peer state invalid startTime") +) + +// PeerState contains the known state of a peer, including its connection and +// threadsafe access to its PeerRoundState. +// NOTE: THIS GETS DUMPED WITH rpc/core/consensus.go. +// Be mindful of what you Expose. +type PeerState struct { + peer p2p.Peer + logger log.Logger + + mtx sync.Mutex `json:"-"` // NOTE: Modify below using setters, never directly. + PRS cstypes.PeerRoundState `json:"round_state"` // Exposed. + Stats *peerStateStats `json:"stats"` // Exposed. +} + +// peerStateStats holds internal statistics for a peer. +type peerStateStats struct { + LastVoteHeight int64 `json:"last_vote_height"` + Votes int `json:"votes"` + LastBlockPartHeight int64 `json:"last_block_part_height"` + BlockParts int `json:"block_parts"` +} + +func (pss peerStateStats) String() string { + return fmt.Sprintf("peerStateStats{lvh: %d, votes: %d, lbph: %d, blockParts: %d}", + pss.LastVoteHeight, pss.Votes, pss.LastBlockPartHeight, pss.BlockParts) +} + +// NewPeerState returns a new PeerState for the given Peer +func NewPeerState(peer p2p.Peer) *PeerState { + return &PeerState{ + peer: peer, + logger: log.NewNopLogger(), + PRS: cstypes.PeerRoundState{ + Round: -1, + ProposalPOLRound: -1, + LastCommitRound: -1, + CatchupCommitRound: -1, + }, + Stats: &peerStateStats{}, + } +} + +// SetLogger allows to set a logger on the peer state. Returns the peer state +// itself. +func (ps *PeerState) SetLogger(logger log.Logger) *PeerState { + ps.logger = logger + return ps +} + +// GetRoundState returns an shallow copy of the PeerRoundState. +// There's no point in mutating it since it won't change PeerState. +func (ps *PeerState) GetRoundState() *cstypes.PeerRoundState { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + prs := ps.PRS // copy + return &prs +} + +// ToJSON returns a json of PeerState, marshalled using go-amino. +func (ps *PeerState) ToJSON() ([]byte, error) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + return cdc.MarshalJSON(ps) +} + +// GetHeight returns an atomic snapshot of the PeerRoundState's height +// used by the mempool to ensure peers are caught up before broadcasting new txs +func (ps *PeerState) GetHeight() int64 { + ps.mtx.Lock() + defer ps.mtx.Unlock() + return ps.PRS.Height +} + +// SetHasProposal sets the given proposal as known for the peer. +func (ps *PeerState) SetHasProposal(proposal *types.Proposal) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.Height != proposal.Height || ps.PRS.Round != proposal.Round { + return + } + if ps.PRS.Proposal { + return + } + + ps.PRS.Proposal = true + ps.PRS.ProposalBlockPartsHeader = proposal.BlockPartsHeader + ps.PRS.ProposalBlockParts = cmn.NewBitArray(proposal.BlockPartsHeader.Total) + ps.PRS.ProposalPOLRound = proposal.POLRound + ps.PRS.ProposalPOL = nil // Nil until ProposalPOLMessage received. +} + +// InitProposalBlockParts initializes the peer's proposal block parts header and bit array. +func (ps *PeerState) InitProposalBlockParts(partsHeader types.PartSetHeader) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.ProposalBlockParts != nil { + return + } + + ps.PRS.ProposalBlockPartsHeader = partsHeader + ps.PRS.ProposalBlockParts = cmn.NewBitArray(partsHeader.Total) +} + +// SetHasProposalBlockPart sets the given block part index as known for the peer. +func (ps *PeerState) SetHasProposalBlockPart(height int64, round int, index int) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.Height != height || ps.PRS.Round != round { + return + } + + ps.PRS.ProposalBlockParts.SetIndex(index, true) +} + +// PickSendVote picks a vote and sends it to the peer. +// Returns true if vote was sent. +func (ps *PeerState) PickSendVote(votes types.VoteSetReader) bool { + if vote, ok := ps.PickVoteToSend(votes); ok { + msg := &VoteMessage{vote} + ps.logger.Debug("Sending vote message", "ps", ps, "vote", vote) + return ps.peer.Send(VoteChannel, cdc.MustMarshalBinaryBare(msg)) + } + return false +} + +// PickVoteToSend picks a vote to send to the peer. +// Returns true if a vote was picked. +// NOTE: `votes` must be the correct Size() for the Height(). +func (ps *PeerState) PickVoteToSend(votes types.VoteSetReader) (vote *types.Vote, ok bool) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if votes.Size() == 0 { + return nil, false + } + + height, round, type_, size := votes.Height(), votes.Round(), votes.Type(), votes.Size() + + // Lazily set data using 'votes'. + if votes.IsCommit() { + ps.ensureCatchupCommitRound(height, round, size) + } + ps.ensureVoteBitArrays(height, size) + + psVotes := ps.getVoteBitArray(height, round, type_) + if psVotes == nil { + return nil, false // Not something worth sending + } + if index, ok := votes.BitArray().Sub(psVotes).PickRandom(); ok { + ps.setHasVote(height, round, type_, index) + return votes.GetByIndex(index), true + } + return nil, false +} + +func (ps *PeerState) getVoteBitArray(height int64, round int, type_ byte) *cmn.BitArray { + if !types.IsVoteTypeValid(type_) { + return nil + } + + if ps.PRS.Height == height { + if ps.PRS.Round == round { + switch type_ { + case types.VoteTypePrevote: + return ps.PRS.Prevotes + case types.VoteTypePrecommit: + return ps.PRS.Precommits + } + } + if ps.PRS.CatchupCommitRound == round { + switch type_ { + case types.VoteTypePrevote: + return nil + case types.VoteTypePrecommit: + return ps.PRS.CatchupCommit + } + } + if ps.PRS.ProposalPOLRound == round { + switch type_ { + case types.VoteTypePrevote: + return ps.PRS.ProposalPOL + case types.VoteTypePrecommit: + return nil + } + } + return nil + } + if ps.PRS.Height == height+1 { + if ps.PRS.LastCommitRound == round { + switch type_ { + case types.VoteTypePrevote: + return nil + case types.VoteTypePrecommit: + return ps.PRS.LastCommit + } + } + return nil + } + return nil +} + +// 'round': A round for which we have a +2/3 commit. +func (ps *PeerState) ensureCatchupCommitRound(height int64, round int, numValidators int) { + if ps.PRS.Height != height { + return + } + /* + NOTE: This is wrong, 'round' could change. + e.g. if orig round is not the same as block LastCommit round. + if ps.CatchupCommitRound != -1 && ps.CatchupCommitRound != round { + cmn.PanicSanity(cmn.Fmt("Conflicting CatchupCommitRound. Height: %v, Orig: %v, New: %v", height, ps.CatchupCommitRound, round)) + } + */ + if ps.PRS.CatchupCommitRound == round { + return // Nothing to do! + } + ps.PRS.CatchupCommitRound = round + if round == ps.PRS.Round { + ps.PRS.CatchupCommit = ps.PRS.Precommits + } else { + ps.PRS.CatchupCommit = cmn.NewBitArray(numValidators) + } +} + +// EnsureVoteBitArrays ensures the bit-arrays have been allocated for tracking +// what votes this peer has received. +// NOTE: It's important to make sure that numValidators actually matches +// what the node sees as the number of validators for height. +func (ps *PeerState) EnsureVoteBitArrays(height int64, numValidators int) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + ps.ensureVoteBitArrays(height, numValidators) +} + +func (ps *PeerState) ensureVoteBitArrays(height int64, numValidators int) { + if ps.PRS.Height == height { + if ps.PRS.Prevotes == nil { + ps.PRS.Prevotes = cmn.NewBitArray(numValidators) + } + if ps.PRS.Precommits == nil { + ps.PRS.Precommits = cmn.NewBitArray(numValidators) + } + if ps.PRS.CatchupCommit == nil { + ps.PRS.CatchupCommit = cmn.NewBitArray(numValidators) + } + if ps.PRS.ProposalPOL == nil { + ps.PRS.ProposalPOL = cmn.NewBitArray(numValidators) + } + } else if ps.PRS.Height == height+1 { + if ps.PRS.LastCommit == nil { + ps.PRS.LastCommit = cmn.NewBitArray(numValidators) + } + } +} + +// RecordVote updates internal statistics for this peer by recording the vote. +// It returns the total number of votes (1 per block). This essentially means +// the number of blocks for which peer has been sending us votes. +func (ps *PeerState) RecordVote(vote *types.Vote) int { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.Stats.LastVoteHeight >= vote.Height { + return ps.Stats.Votes + } + ps.Stats.LastVoteHeight = vote.Height + ps.Stats.Votes++ + return ps.Stats.Votes +} + +// VotesSent returns the number of blocks for which peer has been sending us +// votes. +func (ps *PeerState) VotesSent() int { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + return ps.Stats.Votes +} + +// RecordBlockPart updates internal statistics for this peer by recording the +// block part. It returns the total number of block parts (1 per block). This +// essentially means the number of blocks for which peer has been sending us +// block parts. +func (ps *PeerState) RecordBlockPart(bp *BlockPartMessage) int { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.Stats.LastBlockPartHeight >= bp.Height { + return ps.Stats.BlockParts + } + + ps.Stats.LastBlockPartHeight = bp.Height + ps.Stats.BlockParts++ + return ps.Stats.BlockParts +} + +// BlockPartsSent returns the number of blocks for which peer has been sending +// us block parts. +func (ps *PeerState) BlockPartsSent() int { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + return ps.Stats.BlockParts +} + +// SetHasVote sets the given vote as known by the peer +func (ps *PeerState) SetHasVote(vote *types.Vote) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + ps.setHasVote(vote.Height, vote.Round, vote.Type, vote.ValidatorIndex) +} + +func (ps *PeerState) setHasVote(height int64, round int, type_ byte, index int) { + logger := ps.logger.With("peerH/R", cmn.Fmt("%d/%d", ps.PRS.Height, ps.PRS.Round), "H/R", cmn.Fmt("%d/%d", height, round)) + logger.Debug("setHasVote", "type", type_, "index", index) + + // NOTE: some may be nil BitArrays -> no side effects. + psVotes := ps.getVoteBitArray(height, round, type_) + if psVotes != nil { + psVotes.SetIndex(index, true) + } +} + +// ApplyNewRoundStepMessage updates the peer state for the new round. +func (ps *PeerState) ApplyNewRoundStepMessage(msg *NewRoundStepMessage) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + // Ignore duplicates or decreases + if CompareHRS(msg.Height, msg.Round, msg.Step, ps.PRS.Height, ps.PRS.Round, ps.PRS.Step) <= 0 { + return + } + + // Just remember these values. + psHeight := ps.PRS.Height + psRound := ps.PRS.Round + //psStep := ps.PRS.Step + psCatchupCommitRound := ps.PRS.CatchupCommitRound + psCatchupCommit := ps.PRS.CatchupCommit + + startTime := time.Now().Add(-1 * time.Duration(msg.SecondsSinceStartTime) * time.Second) + ps.PRS.Height = msg.Height + ps.PRS.Round = msg.Round + ps.PRS.Step = msg.Step + ps.PRS.StartTime = startTime + if psHeight != msg.Height || psRound != msg.Round { + ps.PRS.Proposal = false + ps.PRS.ProposalBlockPartsHeader = types.PartSetHeader{} + ps.PRS.ProposalBlockParts = nil + ps.PRS.ProposalPOLRound = -1 + ps.PRS.ProposalPOL = nil + // We'll update the BitArray capacity later. + ps.PRS.Prevotes = nil + ps.PRS.Precommits = nil + } + if psHeight == msg.Height && psRound != msg.Round && msg.Round == psCatchupCommitRound { + // Peer caught up to CatchupCommitRound. + // Preserve psCatchupCommit! + // NOTE: We prefer to use prs.Precommits if + // pr.Round matches pr.CatchupCommitRound. + ps.PRS.Precommits = psCatchupCommit + } + if psHeight != msg.Height { + // Shift Precommits to LastCommit. + if psHeight+1 == msg.Height && psRound == msg.LastCommitRound { + ps.PRS.LastCommitRound = msg.LastCommitRound + ps.PRS.LastCommit = ps.PRS.Precommits + } else { + ps.PRS.LastCommitRound = msg.LastCommitRound + ps.PRS.LastCommit = nil + } + // We'll update the BitArray capacity later. + ps.PRS.CatchupCommitRound = -1 + ps.PRS.CatchupCommit = nil + } +} + +// ApplyCommitStepMessage updates the peer state for the new commit. +func (ps *PeerState) ApplyCommitStepMessage(msg *CommitStepMessage) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.Height != msg.Height { + return + } + + ps.PRS.ProposalBlockPartsHeader = msg.BlockPartsHeader + ps.PRS.ProposalBlockParts = msg.BlockParts +} + +// ApplyProposalPOLMessage updates the peer state for the new proposal POL. +func (ps *PeerState) ApplyProposalPOLMessage(msg *ProposalPOLMessage) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.Height != msg.Height { + return + } + if ps.PRS.ProposalPOLRound != msg.ProposalPOLRound { + return + } + + // TODO: Merge onto existing ps.PRS.ProposalPOL? + // We might have sent some prevotes in the meantime. + ps.PRS.ProposalPOL = msg.ProposalPOL +} + +// ApplyHasVoteMessage updates the peer state for the new vote. +func (ps *PeerState) ApplyHasVoteMessage(msg *HasVoteMessage) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + if ps.PRS.Height != msg.Height { + return + } + + ps.setHasVote(msg.Height, msg.Round, msg.Type, msg.Index) +} + +// ApplyVoteSetBitsMessage updates the peer state for the bit-array of votes +// it claims to have for the corresponding BlockID. +// `ourVotes` is a BitArray of votes we have for msg.BlockID +// NOTE: if ourVotes is nil (e.g. msg.Height < rs.Height), +// we conservatively overwrite ps's votes w/ msg.Votes. +func (ps *PeerState) ApplyVoteSetBitsMessage(msg *VoteSetBitsMessage, ourVotes *cmn.BitArray) { + ps.mtx.Lock() + defer ps.mtx.Unlock() + + votes := ps.getVoteBitArray(msg.Height, msg.Round, msg.Type) + if votes != nil { + if ourVotes == nil { + votes.Update(msg.Votes) + } else { + otherVotes := votes.Sub(ourVotes) + hasVotes := otherVotes.Or(msg.Votes) + votes.Update(hasVotes) + } + } +} + +// String returns a string representation of the PeerState +func (ps *PeerState) String() string { + return ps.StringIndented("") +} + +// StringIndented returns a string representation of the PeerState +func (ps *PeerState) StringIndented(indent string) string { + ps.mtx.Lock() + defer ps.mtx.Unlock() + return fmt.Sprintf(`PeerState{ +%s Key %v +%s RoundState %v +%s Stats %v +%s}`, + indent, ps.peer.ID(), + indent, ps.PRS.StringIndented(indent+" "), + indent, ps.Stats, + indent) +} + +//----------------------------------------------------------------------------- +// Messages + +// ConsensusMessage is a message that can be sent and received on the ConsensusReactor +type ConsensusMessage interface{} + +func RegisterConsensusMessages(cdc *amino.Codec) { + cdc.RegisterInterface((*ConsensusMessage)(nil), nil) + cdc.RegisterConcrete(&NewRoundStepMessage{}, "tendermint/NewRoundStepMessage", nil) + cdc.RegisterConcrete(&CommitStepMessage{}, "tendermint/CommitStep", nil) + cdc.RegisterConcrete(&ProposalMessage{}, "tendermint/Proposal", nil) + cdc.RegisterConcrete(&ProposalPOLMessage{}, "tendermint/ProposalPOL", nil) + cdc.RegisterConcrete(&BlockPartMessage{}, "tendermint/BlockPart", nil) + cdc.RegisterConcrete(&VoteMessage{}, "tendermint/Vote", nil) + cdc.RegisterConcrete(&HasVoteMessage{}, "tendermint/HasVote", nil) + cdc.RegisterConcrete(&VoteSetMaj23Message{}, "tendermint/VoteSetMaj23", nil) + cdc.RegisterConcrete(&VoteSetBitsMessage{}, "tendermint/VoteSetBits", nil) + cdc.RegisterConcrete(&ProposalHeartbeatMessage{}, "tendermint/ProposalHeartbeat", nil) +} + +// DecodeMessage decodes the given bytes into a ConsensusMessage. +func DecodeMessage(bz []byte) (msg ConsensusMessage, err error) { + if len(bz) > maxMsgSize { + return msg, fmt.Errorf("Msg exceeds max size (%d > %d)", + len(bz), maxMsgSize) + } + err = cdc.UnmarshalBinaryBare(bz, &msg) + return +} + +//------------------------------------- + +// NewRoundStepMessage is sent for every step taken in the ConsensusState. +// For every height/round/step transition +type NewRoundStepMessage struct { + Height int64 + Round int + Step cstypes.RoundStepType + SecondsSinceStartTime int + LastCommitRound int +} + +// String returns a string representation. +func (m *NewRoundStepMessage) String() string { + return fmt.Sprintf("[NewRoundStep H:%v R:%v S:%v LCR:%v]", + m.Height, m.Round, m.Step, m.LastCommitRound) +} + +//------------------------------------- + +// CommitStepMessage is sent when a block is committed. +type CommitStepMessage struct { + Height int64 + BlockPartsHeader types.PartSetHeader + BlockParts *cmn.BitArray +} + +// String returns a string representation. +func (m *CommitStepMessage) String() string { + return fmt.Sprintf("[CommitStep H:%v BP:%v BA:%v]", m.Height, m.BlockPartsHeader, m.BlockParts) +} + +//------------------------------------- + +// ProposalMessage is sent when a new block is proposed. +type ProposalMessage struct { + Proposal *types.Proposal +} + +// String returns a string representation. +func (m *ProposalMessage) String() string { + return fmt.Sprintf("[Proposal %v]", m.Proposal) +} + +//------------------------------------- + +// ProposalPOLMessage is sent when a previous proposal is re-proposed. +type ProposalPOLMessage struct { + Height int64 + ProposalPOLRound int + ProposalPOL *cmn.BitArray +} + +// String returns a string representation. +func (m *ProposalPOLMessage) String() string { + return fmt.Sprintf("[ProposalPOL H:%v POLR:%v POL:%v]", m.Height, m.ProposalPOLRound, m.ProposalPOL) +} + +//------------------------------------- + +// BlockPartMessage is sent when gossipping a piece of the proposed block. +type BlockPartMessage struct { + Height int64 + Round int + Part *types.Part +} + +// String returns a string representation. +func (m *BlockPartMessage) String() string { + return fmt.Sprintf("[BlockPart H:%v R:%v P:%v]", m.Height, m.Round, m.Part) +} + +//------------------------------------- + +// VoteMessage is sent when voting for a proposal (or lack thereof). +type VoteMessage struct { + Vote *types.Vote +} + +// String returns a string representation. +func (m *VoteMessage) String() string { + return fmt.Sprintf("[Vote %v]", m.Vote) +} + +//------------------------------------- + +// HasVoteMessage is sent to indicate that a particular vote has been received. +type HasVoteMessage struct { + Height int64 + Round int + Type byte + Index int +} + +// String returns a string representation. +func (m *HasVoteMessage) String() string { + return fmt.Sprintf("[HasVote VI:%v V:{%v/%02d/%v}]", m.Index, m.Height, m.Round, m.Type) +} + +//------------------------------------- + +// VoteSetMaj23Message is sent to indicate that a given BlockID has seen +2/3 votes. +type VoteSetMaj23Message struct { + Height int64 + Round int + Type byte + BlockID types.BlockID +} + +// String returns a string representation. +func (m *VoteSetMaj23Message) String() string { + return fmt.Sprintf("[VSM23 %v/%02d/%v %v]", m.Height, m.Round, m.Type, m.BlockID) +} + +//------------------------------------- + +// VoteSetBitsMessage is sent to communicate the bit-array of votes seen for the BlockID. +type VoteSetBitsMessage struct { + Height int64 + Round int + Type byte + BlockID types.BlockID + Votes *cmn.BitArray +} + +// String returns a string representation. +func (m *VoteSetBitsMessage) String() string { + return fmt.Sprintf("[VSB %v/%02d/%v %v %v]", m.Height, m.Round, m.Type, m.BlockID, m.Votes) +} + +//------------------------------------- + +// ProposalHeartbeatMessage is sent to signal that a node is alive and waiting for transactions for a proposal. +type ProposalHeartbeatMessage struct { + Heartbeat *types.Heartbeat +} + +// String returns a string representation. +func (m *ProposalHeartbeatMessage) String() string { + return fmt.Sprintf("[HEARTBEAT %v]", m.Heartbeat) +} diff --git a/consensus/reactor_test.go b/consensus/reactor_test.go new file mode 100644 index 000000000..0d9971192 --- /dev/null +++ b/consensus/reactor_test.go @@ -0,0 +1,538 @@ +package consensus + +import ( + "context" + "fmt" + "os" + "runtime" + "runtime/pprof" + "sync" + "testing" + "time" + + "github.com/tendermint/abci/example/kvstore" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/p2p" + p2pdummy "github.com/tendermint/tendermint/p2p/dummy" + "github.com/tendermint/tendermint/types" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func init() { + config = ResetConfig("consensus_reactor_test") +} + +//---------------------------------------------- +// in-process testnets + +func startConsensusNet(t *testing.T, css []*ConsensusState, N int) ([]*ConsensusReactor, []chan interface{}, []*types.EventBus) { + reactors := make([]*ConsensusReactor, N) + eventChans := make([]chan interface{}, N) + eventBuses := make([]*types.EventBus, N) + for i := 0; i < N; i++ { + /*logger, err := tmflags.ParseLogLevel("consensus:info,*:error", logger, "info") + if err != nil { t.Fatal(err)}*/ + reactors[i] = NewConsensusReactor(css[i], true) // so we dont start the consensus states + reactors[i].SetLogger(css[i].Logger) + + // eventBus is already started with the cs + eventBuses[i] = css[i].eventBus + reactors[i].SetEventBus(eventBuses[i]) + + eventChans[i] = make(chan interface{}, 1) + err := eventBuses[i].Subscribe(context.Background(), testSubscriber, types.EventQueryNewBlock, eventChans[i]) + require.NoError(t, err) + } + // make connected switches and start all reactors + p2p.MakeConnectedSwitches(config.P2P, N, func(i int, s *p2p.Switch) *p2p.Switch { + s.AddReactor("CONSENSUS", reactors[i]) + s.SetLogger(reactors[i].conS.Logger.With("module", "p2p")) + return s + }, p2p.Connect2Switches) + + // now that everyone is connected, start the state machines + // If we started the state machines before everyone was connected, + // we'd block when the cs fires NewBlockEvent and the peers are trying to start their reactors + // TODO: is this still true with new pubsub? + for i := 0; i < N; i++ { + s := reactors[i].conS.GetState() + reactors[i].SwitchToConsensus(s, 0) + } + return reactors, eventChans, eventBuses +} + +func stopConsensusNet(logger log.Logger, reactors []*ConsensusReactor, eventBuses []*types.EventBus) { + logger.Info("stopConsensusNet", "n", len(reactors)) + for i, r := range reactors { + logger.Info("stopConsensusNet: Stopping ConsensusReactor", "i", i) + r.Switch.Stop() + } + for i, b := range eventBuses { + logger.Info("stopConsensusNet: Stopping eventBus", "i", i) + b.Stop() + } + logger.Info("stopConsensusNet: DONE", "n", len(reactors)) +} + +// Ensure a testnet makes blocks +func TestReactorBasic(t *testing.T) { + N := 4 + css := randConsensusNet(N, "consensus_reactor_test", newMockTickerFunc(true), newCounter) + reactors, eventChans, eventBuses := startConsensusNet(t, css, N) + defer stopConsensusNet(log.TestingLogger(), reactors, eventBuses) + // wait till everyone makes the first new block + timeoutWaitGroup(t, N, func(j int) { + <-eventChans[j] + }, css) +} + +// Ensure a testnet sends proposal heartbeats and makes blocks when there are txs +func TestReactorProposalHeartbeats(t *testing.T) { + N := 4 + css := randConsensusNet(N, "consensus_reactor_test", newMockTickerFunc(true), newCounter, + func(c *cfg.Config) { + c.Consensus.CreateEmptyBlocks = false + }) + reactors, eventChans, eventBuses := startConsensusNet(t, css, N) + defer stopConsensusNet(log.TestingLogger(), reactors, eventBuses) + heartbeatChans := make([]chan interface{}, N) + var err error + for i := 0; i < N; i++ { + heartbeatChans[i] = make(chan interface{}, 1) + err = eventBuses[i].Subscribe(context.Background(), testSubscriber, types.EventQueryProposalHeartbeat, heartbeatChans[i]) + require.NoError(t, err) + } + // wait till everyone sends a proposal heartbeat + timeoutWaitGroup(t, N, func(j int) { + <-heartbeatChans[j] + }, css) + + // send a tx + if err := css[3].mempool.CheckTx([]byte{1, 2, 3}, nil); err != nil { + //t.Fatal(err) + } + + // wait till everyone makes the first new block + timeoutWaitGroup(t, N, func(j int) { + <-eventChans[j] + }, css) +} + +// Test we record block parts from other peers +func TestReactorRecordsBlockParts(t *testing.T) { + // create dummy peer + peer := p2pdummy.NewPeer() + ps := NewPeerState(peer).SetLogger(log.TestingLogger()) + peer.Set(types.PeerStateKey, ps) + + // create reactor + css := randConsensusNet(1, "consensus_reactor_records_block_parts_test", newMockTickerFunc(true), newPersistentKVStore) + reactor := NewConsensusReactor(css[0], false) // so we dont start the consensus states + reactor.SetEventBus(css[0].eventBus) + reactor.SetLogger(log.TestingLogger()) + sw := p2p.MakeSwitch(cfg.DefaultP2PConfig(), 1, "testing", "123.123.123", func(i int, sw *p2p.Switch) *p2p.Switch { return sw }) + reactor.SetSwitch(sw) + err := reactor.Start() + require.NoError(t, err) + defer reactor.Stop() + + // 1) new block part + parts := types.NewPartSetFromData(cmn.RandBytes(100), 10) + msg := &BlockPartMessage{ + Height: 2, + Round: 0, + Part: parts.GetPart(0), + } + bz, err := cdc.MarshalBinaryBare(msg) + require.NoError(t, err) + + reactor.Receive(DataChannel, peer, bz) + require.Equal(t, 1, ps.BlockPartsSent(), "number of block parts sent should have increased by 1") + + // 2) block part with the same height, but different round + msg.Round = 1 + + bz, err = cdc.MarshalBinaryBare(msg) + require.NoError(t, err) + + reactor.Receive(DataChannel, peer, bz) + require.Equal(t, 1, ps.BlockPartsSent(), "number of block parts sent should stay the same") + + // 3) block part from earlier height + msg.Height = 1 + msg.Round = 0 + + bz, err = cdc.MarshalBinaryBare(msg) + require.NoError(t, err) + + reactor.Receive(DataChannel, peer, bz) + require.Equal(t, 1, ps.BlockPartsSent(), "number of block parts sent should stay the same") +} + +// Test we record votes from other peers +func TestReactorRecordsVotes(t *testing.T) { + // create dummy peer + peer := p2pdummy.NewPeer() + ps := NewPeerState(peer).SetLogger(log.TestingLogger()) + peer.Set(types.PeerStateKey, ps) + + // create reactor + css := randConsensusNet(1, "consensus_reactor_records_votes_test", newMockTickerFunc(true), newPersistentKVStore) + reactor := NewConsensusReactor(css[0], false) // so we dont start the consensus states + reactor.SetEventBus(css[0].eventBus) + reactor.SetLogger(log.TestingLogger()) + sw := p2p.MakeSwitch(cfg.DefaultP2PConfig(), 1, "testing", "123.123.123", func(i int, sw *p2p.Switch) *p2p.Switch { return sw }) + reactor.SetSwitch(sw) + err := reactor.Start() + require.NoError(t, err) + defer reactor.Stop() + _, val := css[0].state.Validators.GetByIndex(0) + + // 1) new vote + vote := &types.Vote{ + ValidatorIndex: 0, + ValidatorAddress: val.Address, + Height: 2, + Round: 0, + Timestamp: time.Now().UTC(), + Type: types.VoteTypePrevote, + BlockID: types.BlockID{}, + } + bz, err := cdc.MarshalBinaryBare(&VoteMessage{vote}) + require.NoError(t, err) + + reactor.Receive(VoteChannel, peer, bz) + assert.Equal(t, 1, ps.VotesSent(), "number of votes sent should have increased by 1") + + // 2) vote with the same height, but different round + vote.Round = 1 + + bz, err = cdc.MarshalBinaryBare(&VoteMessage{vote}) + require.NoError(t, err) + + reactor.Receive(VoteChannel, peer, bz) + assert.Equal(t, 1, ps.VotesSent(), "number of votes sent should stay the same") + + // 3) vote from earlier height + vote.Height = 1 + vote.Round = 0 + + bz, err = cdc.MarshalBinaryBare(&VoteMessage{vote}) + require.NoError(t, err) + + reactor.Receive(VoteChannel, peer, bz) + assert.Equal(t, 1, ps.VotesSent(), "number of votes sent should stay the same") +} + +//------------------------------------------------------------- +// ensure we can make blocks despite cycling a validator set + +func TestReactorVotingPowerChange(t *testing.T) { + nVals := 4 + logger := log.TestingLogger() + css := randConsensusNet(nVals, "consensus_voting_power_changes_test", newMockTickerFunc(true), newPersistentKVStore) + reactors, eventChans, eventBuses := startConsensusNet(t, css, nVals) + defer stopConsensusNet(logger, reactors, eventBuses) + + // map of active validators + activeVals := make(map[string]struct{}) + for i := 0; i < nVals; i++ { + activeVals[string(css[i].privValidator.GetAddress())] = struct{}{} + } + + // wait till everyone makes block 1 + timeoutWaitGroup(t, nVals, func(j int) { + <-eventChans[j] + }, css) + + //--------------------------------------------------------------------------- + logger.Debug("---------------------------- Testing changing the voting power of one validator a few times") + + val1PubKey := css[0].privValidator.GetPubKey() + val1PubKeyABCI := types.TM2PB.PubKey(val1PubKey) + updateValidatorTx := kvstore.MakeValSetChangeTx(val1PubKeyABCI, 25) + previousTotalVotingPower := css[0].GetRoundState().LastValidators.TotalVotingPower() + + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlockWithTx(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + + if css[0].GetRoundState().LastValidators.TotalVotingPower() == previousTotalVotingPower { + t.Fatalf("expected voting power to change (before: %d, after: %d)", previousTotalVotingPower, css[0].GetRoundState().LastValidators.TotalVotingPower()) + } + + updateValidatorTx = kvstore.MakeValSetChangeTx(val1PubKeyABCI, 2) + previousTotalVotingPower = css[0].GetRoundState().LastValidators.TotalVotingPower() + + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlockWithTx(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + + if css[0].GetRoundState().LastValidators.TotalVotingPower() == previousTotalVotingPower { + t.Fatalf("expected voting power to change (before: %d, after: %d)", previousTotalVotingPower, css[0].GetRoundState().LastValidators.TotalVotingPower()) + } + + updateValidatorTx = kvstore.MakeValSetChangeTx(val1PubKeyABCI, 26) + previousTotalVotingPower = css[0].GetRoundState().LastValidators.TotalVotingPower() + + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlockWithTx(t, nVals, activeVals, eventChans, css, updateValidatorTx) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + waitForAndValidateBlock(t, nVals, activeVals, eventChans, css) + + if css[0].GetRoundState().LastValidators.TotalVotingPower() == previousTotalVotingPower { + t.Fatalf("expected voting power to change (before: %d, after: %d)", previousTotalVotingPower, css[0].GetRoundState().LastValidators.TotalVotingPower()) + } +} + +func TestReactorValidatorSetChanges(t *testing.T) { + nPeers := 7 + nVals := 4 + css := randConsensusNetWithPeers(nVals, nPeers, "consensus_val_set_changes_test", newMockTickerFunc(true), newPersistentKVStore) + + logger := log.TestingLogger() + + reactors, eventChans, eventBuses := startConsensusNet(t, css, nPeers) + defer stopConsensusNet(logger, reactors, eventBuses) + + // map of active validators + activeVals := make(map[string]struct{}) + for i := 0; i < nVals; i++ { + activeVals[string(css[i].privValidator.GetAddress())] = struct{}{} + } + + // wait till everyone makes block 1 + timeoutWaitGroup(t, nPeers, func(j int) { + <-eventChans[j] + }, css) + + //--------------------------------------------------------------------------- + logger.Info("---------------------------- Testing adding one validator") + + newValidatorPubKey1 := css[nVals].privValidator.GetPubKey() + valPubKey1ABCI := types.TM2PB.PubKey(newValidatorPubKey1) + newValidatorTx1 := kvstore.MakeValSetChangeTx(valPubKey1ABCI, testMinPower) + + // wait till everyone makes block 2 + // ensure the commit includes all validators + // send newValTx to change vals in block 3 + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css, newValidatorTx1) + + // wait till everyone makes block 3. + // it includes the commit for block 2, which is by the original validator set + waitForAndValidateBlockWithTx(t, nPeers, activeVals, eventChans, css, newValidatorTx1) + + // wait till everyone makes block 4. + // it includes the commit for block 3, which is by the original validator set + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css) + + // the commits for block 4 should be with the updated validator set + activeVals[string(newValidatorPubKey1.Address())] = struct{}{} + + // wait till everyone makes block 5 + // it includes the commit for block 4, which should have the updated validator set + waitForBlockWithUpdatedValsAndValidateIt(t, nPeers, activeVals, eventChans, css) + + //--------------------------------------------------------------------------- + logger.Info("---------------------------- Testing changing the voting power of one validator") + + updateValidatorPubKey1 := css[nVals].privValidator.GetPubKey() + updatePubKey1ABCI := types.TM2PB.PubKey(updateValidatorPubKey1) + updateValidatorTx1 := kvstore.MakeValSetChangeTx(updatePubKey1ABCI, 25) + previousTotalVotingPower := css[nVals].GetRoundState().LastValidators.TotalVotingPower() + + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css, updateValidatorTx1) + waitForAndValidateBlockWithTx(t, nPeers, activeVals, eventChans, css, updateValidatorTx1) + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css) + waitForBlockWithUpdatedValsAndValidateIt(t, nPeers, activeVals, eventChans, css) + + if css[nVals].GetRoundState().LastValidators.TotalVotingPower() == previousTotalVotingPower { + t.Errorf("expected voting power to change (before: %d, after: %d)", previousTotalVotingPower, css[nVals].GetRoundState().LastValidators.TotalVotingPower()) + } + + //--------------------------------------------------------------------------- + logger.Info("---------------------------- Testing adding two validators at once") + + newValidatorPubKey2 := css[nVals+1].privValidator.GetPubKey() + newVal2ABCI := types.TM2PB.PubKey(newValidatorPubKey2) + newValidatorTx2 := kvstore.MakeValSetChangeTx(newVal2ABCI, testMinPower) + + newValidatorPubKey3 := css[nVals+2].privValidator.GetPubKey() + newVal3ABCI := types.TM2PB.PubKey(newValidatorPubKey3) + newValidatorTx3 := kvstore.MakeValSetChangeTx(newVal3ABCI, testMinPower) + + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css, newValidatorTx2, newValidatorTx3) + waitForAndValidateBlockWithTx(t, nPeers, activeVals, eventChans, css, newValidatorTx2, newValidatorTx3) + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css) + activeVals[string(newValidatorPubKey2.Address())] = struct{}{} + activeVals[string(newValidatorPubKey3.Address())] = struct{}{} + waitForBlockWithUpdatedValsAndValidateIt(t, nPeers, activeVals, eventChans, css) + + //--------------------------------------------------------------------------- + logger.Info("---------------------------- Testing removing two validators at once") + + removeValidatorTx2 := kvstore.MakeValSetChangeTx(newVal2ABCI, 0) + removeValidatorTx3 := kvstore.MakeValSetChangeTx(newVal3ABCI, 0) + + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css, removeValidatorTx2, removeValidatorTx3) + waitForAndValidateBlockWithTx(t, nPeers, activeVals, eventChans, css, removeValidatorTx2, removeValidatorTx3) + waitForAndValidateBlock(t, nPeers, activeVals, eventChans, css) + delete(activeVals, string(newValidatorPubKey2.Address())) + delete(activeVals, string(newValidatorPubKey3.Address())) + waitForBlockWithUpdatedValsAndValidateIt(t, nPeers, activeVals, eventChans, css) +} + +// Check we can make blocks with skip_timeout_commit=false +func TestReactorWithTimeoutCommit(t *testing.T) { + N := 4 + css := randConsensusNet(N, "consensus_reactor_with_timeout_commit_test", newMockTickerFunc(false), newCounter) + // override default SkipTimeoutCommit == true for tests + for i := 0; i < N; i++ { + css[i].config.SkipTimeoutCommit = false + } + + reactors, eventChans, eventBuses := startConsensusNet(t, css, N-1) + defer stopConsensusNet(log.TestingLogger(), reactors, eventBuses) + + // wait till everyone makes the first new block + timeoutWaitGroup(t, N-1, func(j int) { + <-eventChans[j] + }, css) +} + +func waitForAndValidateBlock(t *testing.T, n int, activeVals map[string]struct{}, eventChans []chan interface{}, css []*ConsensusState, txs ...[]byte) { + timeoutWaitGroup(t, n, func(j int) { + css[j].Logger.Debug("waitForAndValidateBlock") + newBlockI, ok := <-eventChans[j] + if !ok { + return + } + newBlock := newBlockI.(types.EventDataNewBlock).Block + css[j].Logger.Debug("waitForAndValidateBlock: Got block", "height", newBlock.Height) + err := validateBlock(newBlock, activeVals) + assert.Nil(t, err) + for _, tx := range txs { + css[j].mempool.CheckTx(tx, nil) + assert.Nil(t, err) + } + }, css) +} + +func waitForAndValidateBlockWithTx(t *testing.T, n int, activeVals map[string]struct{}, eventChans []chan interface{}, css []*ConsensusState, txs ...[]byte) { + timeoutWaitGroup(t, n, func(j int) { + ntxs := 0 + BLOCK_TX_LOOP: + for { + css[j].Logger.Debug("waitForAndValidateBlockWithTx", "ntxs", ntxs) + newBlockI, ok := <-eventChans[j] + if !ok { + return + } + newBlock := newBlockI.(types.EventDataNewBlock).Block + css[j].Logger.Debug("waitForAndValidateBlockWithTx: Got block", "height", newBlock.Height) + err := validateBlock(newBlock, activeVals) + assert.Nil(t, err) + + // check that txs match the txs we're waiting for. + // note they could be spread over multiple blocks, + // but they should be in order. + for _, tx := range newBlock.Data.Txs { + assert.EqualValues(t, txs[ntxs], tx) + ntxs++ + } + + if ntxs == len(txs) { + break BLOCK_TX_LOOP + } + } + + }, css) +} + +func waitForBlockWithUpdatedValsAndValidateIt(t *testing.T, n int, updatedVals map[string]struct{}, eventChans []chan interface{}, css []*ConsensusState) { + timeoutWaitGroup(t, n, func(j int) { + + var newBlock *types.Block + LOOP: + for { + css[j].Logger.Debug("waitForBlockWithUpdatedValsAndValidateIt") + newBlockI, ok := <-eventChans[j] + if !ok { + return + } + newBlock = newBlockI.(types.EventDataNewBlock).Block + if newBlock.LastCommit.Size() == len(updatedVals) { + css[j].Logger.Debug("waitForBlockWithUpdatedValsAndValidateIt: Got block", "height", newBlock.Height) + break LOOP + } else { + css[j].Logger.Debug("waitForBlockWithUpdatedValsAndValidateIt: Got block with no new validators. Skipping", "height", newBlock.Height) + } + } + + err := validateBlock(newBlock, updatedVals) + assert.Nil(t, err) + }, css) +} + +// expects high synchrony! +func validateBlock(block *types.Block, activeVals map[string]struct{}) error { + if block.LastCommit.Size() != len(activeVals) { + return fmt.Errorf("Commit size doesn't match number of active validators. Got %d, expected %d", block.LastCommit.Size(), len(activeVals)) + } + + for _, vote := range block.LastCommit.Precommits { + if _, ok := activeVals[string(vote.ValidatorAddress)]; !ok { + return fmt.Errorf("Found vote for unactive validator %X", vote.ValidatorAddress) + } + } + return nil +} + +func timeoutWaitGroup(t *testing.T, n int, f func(int), css []*ConsensusState) { + wg := new(sync.WaitGroup) + wg.Add(n) + for i := 0; i < n; i++ { + go func(j int) { + f(j) + wg.Done() + }(i) + } + + done := make(chan struct{}) + go func() { + wg.Wait() + close(done) + }() + + // we're running many nodes in-process, possibly in in a virtual machine, + // and spewing debug messages - making a block could take a while, + timeout := time.Second * 300 + + select { + case <-done: + case <-time.After(timeout): + for i, cs := range css { + t.Log("#################") + t.Log("Validator", i) + t.Log(cs.GetRoundState()) + t.Log("") + } + os.Stdout.Write([]byte("pprof.Lookup('goroutine'):\n")) + pprof.Lookup("goroutine").WriteTo(os.Stdout, 1) + capture() + panic("Timed out waiting for all validators to commit a block") + } +} + +func capture() { + trace := make([]byte, 10240000) + count := runtime.Stack(trace, true) + fmt.Printf("Stack of %d bytes: %s\n", count, trace) +} diff --git a/consensus/replay.go b/consensus/replay.go new file mode 100644 index 000000000..13ec9e403 --- /dev/null +++ b/consensus/replay.go @@ -0,0 +1,469 @@ +package consensus + +import ( + "bytes" + "fmt" + "hash/crc32" + "io" + "reflect" + //"strconv" + //"strings" + "time" + + abci "github.com/tendermint/abci/types" + //auto "github.com/tendermint/tmlibs/autofile" + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" + + "github.com/tendermint/tendermint/proxy" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + "github.com/tendermint/tendermint/version" +) + +var crc32c = crc32.MakeTable(crc32.Castagnoli) + +// Functionality to replay blocks and messages on recovery from a crash. +// There are two general failure scenarios: +// +// 1. failure during consensus +// 2. failure while applying the block +// +// The former is handled by the WAL, the latter by the proxyApp Handshake on +// restart, which ultimately hands off the work to the WAL. + +//----------------------------------------- +// 1. Recover from failure during consensus +// (by replaying messages from the WAL) +//----------------------------------------- + +// Unmarshal and apply a single message to the consensus state as if it were +// received in receiveRoutine. Lines that start with "#" are ignored. +// NOTE: receiveRoutine should not be running. +func (cs *ConsensusState) readReplayMessage(msg *TimedWALMessage, newStepCh chan interface{}) error { + // Skip meta messages which exist for demarcating boundaries. + if _, ok := msg.Msg.(EndHeightMessage); ok { + return nil + } + + // for logging + switch m := msg.Msg.(type) { + case types.EventDataRoundState: + cs.Logger.Info("Replay: New Step", "height", m.Height, "round", m.Round, "step", m.Step) + // these are playback checks + ticker := time.After(time.Second * 2) + if newStepCh != nil { + select { + case mi := <-newStepCh: + m2 := mi.(types.EventDataRoundState) + if m.Height != m2.Height || m.Round != m2.Round || m.Step != m2.Step { + return fmt.Errorf("RoundState mismatch. Got %v; Expected %v", m2, m) + } + case <-ticker: + return fmt.Errorf("Failed to read off newStepCh") + } + } + case msgInfo: + peerID := m.PeerID + if peerID == "" { + peerID = "local" + } + switch msg := m.Msg.(type) { + case *ProposalMessage: + p := msg.Proposal + cs.Logger.Info("Replay: Proposal", "height", p.Height, "round", p.Round, "header", + p.BlockPartsHeader, "pol", p.POLRound, "peer", peerID) + case *BlockPartMessage: + cs.Logger.Info("Replay: BlockPart", "height", msg.Height, "round", msg.Round, "peer", peerID) + case *VoteMessage: + v := msg.Vote + cs.Logger.Info("Replay: Vote", "height", v.Height, "round", v.Round, "type", v.Type, + "blockID", v.BlockID, "peer", peerID) + } + + cs.handleMsg(m) + case timeoutInfo: + cs.Logger.Info("Replay: Timeout", "height", m.Height, "round", m.Round, "step", m.Step, "dur", m.Duration) + cs.handleTimeout(m, cs.RoundState) + default: + return fmt.Errorf("Replay: Unknown TimedWALMessage type: %v", reflect.TypeOf(msg.Msg)) + } + return nil +} + +// Replay only those messages since the last block. `timeoutRoutine` should +// run concurrently to read off tickChan. +func (cs *ConsensusState) catchupReplay(csHeight int64) error { + + // Set replayMode to true so we don't log signing errors. + cs.replayMode = true + defer func() { cs.replayMode = false }() + + // Ensure that #ENDHEIGHT for this height doesn't exist. + // NOTE: This is just a sanity check. As far as we know things work fine + // without it, and Handshake could reuse ConsensusState if it weren't for + // this check (since we can crash after writing #ENDHEIGHT). + // + // Ignore data corruption errors since this is a sanity check. + gr, found, err := cs.wal.SearchForEndHeight(csHeight, &WALSearchOptions{IgnoreDataCorruptionErrors: true}) + if err != nil { + return err + } + if gr != nil { + if err := gr.Close(); err != nil { + return err + } + } + if found { + return fmt.Errorf("WAL should not contain #ENDHEIGHT %d", csHeight) + } + + // Search for last height marker. + // + // Ignore data corruption errors in previous heights because we only care about last height + gr, found, err = cs.wal.SearchForEndHeight(csHeight-1, &WALSearchOptions{IgnoreDataCorruptionErrors: true}) + if err == io.EOF { + cs.Logger.Error("Replay: wal.group.Search returned EOF", "#ENDHEIGHT", csHeight-1) + } else if err != nil { + return err + } + if !found { + return fmt.Errorf("Cannot replay height %d. WAL does not contain #ENDHEIGHT for %d", csHeight, csHeight-1) + } + defer gr.Close() // nolint: errcheck + + cs.Logger.Info("Catchup by replaying consensus messages", "height", csHeight) + + var msg *TimedWALMessage + dec := WALDecoder{gr} + + for { + msg, err = dec.Decode() + if err == io.EOF { + break + } else if IsDataCorruptionError(err) { + cs.Logger.Debug("data has been corrupted in last height of consensus WAL", "err", err, "height", csHeight) + panic(fmt.Sprintf("data has been corrupted (%v) in last height %d of consensus WAL", err, csHeight)) + } else if err != nil { + return err + } + + // NOTE: since the priv key is set when the msgs are received + // it will attempt to eg double sign but we can just ignore it + // since the votes will be replayed and we'll get to the next step + if err := cs.readReplayMessage(msg, nil); err != nil { + return err + } + } + cs.Logger.Info("Replay: Done") + return nil +} + +//-------------------------------------------------------------------------------- + +// Parses marker lines of the form: +// #ENDHEIGHT: 12345 +/* +func makeHeightSearchFunc(height int64) auto.SearchFunc { + return func(line string) (int, error) { + line = strings.TrimRight(line, "\n") + parts := strings.Split(line, " ") + if len(parts) != 2 { + return -1, errors.New("Line did not have 2 parts") + } + i, err := strconv.Atoi(parts[1]) + if err != nil { + return -1, errors.New("Failed to parse INFO: " + err.Error()) + } + if height < i { + return 1, nil + } else if height == i { + return 0, nil + } else { + return -1, nil + } + } +}*/ + +//--------------------------------------------------- +// 2. Recover from failure while applying the block. +// (by handshaking with the app to figure out where +// we were last, and using the WAL to recover there.) +//--------------------------------------------------- + +type Handshaker struct { + stateDB dbm.DB + initialState sm.State + store sm.BlockStore + genDoc *types.GenesisDoc + logger log.Logger + + nBlocks int // number of blocks applied to the state +} + +func NewHandshaker(stateDB dbm.DB, state sm.State, + store sm.BlockStore, genDoc *types.GenesisDoc) *Handshaker { + + return &Handshaker{ + stateDB: stateDB, + initialState: state, + store: store, + genDoc: genDoc, + logger: log.NewNopLogger(), + nBlocks: 0, + } +} + +func (h *Handshaker) SetLogger(l log.Logger) { + h.logger = l +} + +func (h *Handshaker) NBlocks() int { + return h.nBlocks +} + +// TODO: retry the handshake/replay if it fails ? +func (h *Handshaker) Handshake(proxyApp proxy.AppConns) error { + + // Handshake is done via ABCI Info on the query conn. + res, err := proxyApp.Query().InfoSync(abci.RequestInfo{version.Version}) + if err != nil { + return fmt.Errorf("Error calling Info: %v", err) + } + + blockHeight := int64(res.LastBlockHeight) + if blockHeight < 0 { + return fmt.Errorf("Got a negative last block height (%d) from the app", blockHeight) + } + appHash := res.LastBlockAppHash + + h.logger.Info("ABCI Handshake", "appHeight", blockHeight, "appHash", fmt.Sprintf("%X", appHash)) + + // TODO: check app version. + + // Replay blocks up to the latest in the blockstore. + _, err = h.ReplayBlocks(h.initialState, appHash, blockHeight, proxyApp) + if err != nil { + return fmt.Errorf("Error on replay: %v", err) + } + + h.logger.Info("Completed ABCI Handshake - Tendermint and App are synced", + "appHeight", blockHeight, "appHash", fmt.Sprintf("%X", appHash)) + + // TODO: (on restart) replay mempool + + return nil +} + +// Replay all blocks since appBlockHeight and ensure the result matches the current state. +// Returns the final AppHash or an error. +func (h *Handshaker) ReplayBlocks(state sm.State, appHash []byte, appBlockHeight int64, proxyApp proxy.AppConns) ([]byte, error) { + + storeBlockHeight := h.store.Height() + stateBlockHeight := state.LastBlockHeight + h.logger.Info("ABCI Replay Blocks", "appHeight", appBlockHeight, "storeHeight", storeBlockHeight, "stateHeight", stateBlockHeight) + + // If appBlockHeight == 0 it means that we are at genesis and hence should send InitChain + if appBlockHeight == 0 { + validators := types.TM2PB.Validators(state.Validators) + csParams := types.TM2PB.ConsensusParams(h.genDoc.ConsensusParams) + req := abci.RequestInitChain{ + Time: h.genDoc.GenesisTime.Unix(), // TODO + ChainId: h.genDoc.ChainID, + ConsensusParams: csParams, + Validators: validators, + AppStateBytes: h.genDoc.AppStateJSON, + } + res, err := proxyApp.Consensus().InitChainSync(req) + if err != nil { + return nil, err + } + + // if the app returned validators + // or consensus params, update the state + // with the them + if len(res.Validators) > 0 { + vals, err := types.PB2TM.Validators(res.Validators) + if err != nil { + return nil, err + } + state.Validators = types.NewValidatorSet(vals) + } + if res.ConsensusParams != nil { + state.ConsensusParams = types.PB2TM.ConsensusParams(res.ConsensusParams) + } + sm.SaveState(h.stateDB, state) + } + + // First handle edge cases and constraints on the storeBlockHeight + if storeBlockHeight == 0 { + return appHash, checkAppHash(state, appHash) + + } else if storeBlockHeight < appBlockHeight { + // the app should never be ahead of the store (but this is under app's control) + return appHash, sm.ErrAppBlockHeightTooHigh{storeBlockHeight, appBlockHeight} + + } else if storeBlockHeight < stateBlockHeight { + // the state should never be ahead of the store (this is under tendermint's control) + cmn.PanicSanity(cmn.Fmt("StateBlockHeight (%d) > StoreBlockHeight (%d)", stateBlockHeight, storeBlockHeight)) + + } else if storeBlockHeight > stateBlockHeight+1 { + // store should be at most one ahead of the state (this is under tendermint's control) + cmn.PanicSanity(cmn.Fmt("StoreBlockHeight (%d) > StateBlockHeight + 1 (%d)", storeBlockHeight, stateBlockHeight+1)) + } + + var err error + // Now either store is equal to state, or one ahead. + // For each, consider all cases of where the app could be, given app <= store + if storeBlockHeight == stateBlockHeight { + // Tendermint ran Commit and saved the state. + // Either the app is asking for replay, or we're all synced up. + if appBlockHeight < storeBlockHeight { + // the app is behind, so replay blocks, but no need to go through WAL (state is already synced to store) + return h.replayBlocks(state, proxyApp, appBlockHeight, storeBlockHeight, false) + + } else if appBlockHeight == storeBlockHeight { + // We're good! + return appHash, checkAppHash(state, appHash) + } + + } else if storeBlockHeight == stateBlockHeight+1 { + // We saved the block in the store but haven't updated the state, + // so we'll need to replay a block using the WAL. + if appBlockHeight < stateBlockHeight { + // the app is further behind than it should be, so replay blocks + // but leave the last block to go through the WAL + return h.replayBlocks(state, proxyApp, appBlockHeight, storeBlockHeight, true) + + } else if appBlockHeight == stateBlockHeight { + // We haven't run Commit (both the state and app are one block behind), + // so replayBlock with the real app. + // NOTE: We could instead use the cs.WAL on cs.Start, + // but we'd have to allow the WAL to replay a block that wrote it's #ENDHEIGHT + h.logger.Info("Replay last block using real app") + state, err = h.replayBlock(state, storeBlockHeight, proxyApp.Consensus()) + return state.AppHash, err + + } else if appBlockHeight == storeBlockHeight { + // We ran Commit, but didn't save the state, so replayBlock with mock app + abciResponses, err := sm.LoadABCIResponses(h.stateDB, storeBlockHeight) + if err != nil { + return nil, err + } + mockApp := newMockProxyApp(appHash, abciResponses) + h.logger.Info("Replay last block using mock app") + state, err = h.replayBlock(state, storeBlockHeight, mockApp) + return state.AppHash, err + } + + } + + cmn.PanicSanity("Should never happen") + return nil, nil +} + +func (h *Handshaker) replayBlocks(state sm.State, proxyApp proxy.AppConns, appBlockHeight, storeBlockHeight int64, mutateState bool) ([]byte, error) { + // App is further behind than it should be, so we need to replay blocks. + // We replay all blocks from appBlockHeight+1. + // + // Note that we don't have an old version of the state, + // so we by-pass state validation/mutation using sm.ExecCommitBlock. + // This also means we won't be saving validator sets if they change during this period. + // TODO: Load the historical information to fix this and just use state.ApplyBlock + // + // If mutateState == true, the final block is replayed with h.replayBlock() + + var appHash []byte + var err error + finalBlock := storeBlockHeight + if mutateState { + finalBlock-- + } + for i := appBlockHeight + 1; i <= finalBlock; i++ { + h.logger.Info("Applying block", "height", i) + block := h.store.LoadBlock(i) + appHash, err = sm.ExecCommitBlock(proxyApp.Consensus(), block, h.logger, state.LastValidators, h.stateDB) + if err != nil { + return nil, err + } + + h.nBlocks++ + } + + if mutateState { + // sync the final block + state, err = h.replayBlock(state, storeBlockHeight, proxyApp.Consensus()) + if err != nil { + return nil, err + } + appHash = state.AppHash + } + + return appHash, checkAppHash(state, appHash) +} + +// ApplyBlock on the proxyApp with the last block. +func (h *Handshaker) replayBlock(state sm.State, height int64, proxyApp proxy.AppConnConsensus) (sm.State, error) { + block := h.store.LoadBlock(height) + meta := h.store.LoadBlockMeta(height) + + blockExec := sm.NewBlockExecutor(h.stateDB, h.logger, proxyApp, sm.MockMempool{}, sm.MockEvidencePool{}) + + var err error + state, err = blockExec.ApplyBlock(state, meta.BlockID, block) + if err != nil { + return sm.State{}, err + } + + h.nBlocks++ + + return state, nil +} + +func checkAppHash(state sm.State, appHash []byte) error { + if !bytes.Equal(state.AppHash, appHash) { + panic(fmt.Errorf("Tendermint state.AppHash does not match AppHash after replay. Got %X, expected %X", appHash, state.AppHash).Error()) + } + return nil +} + +//-------------------------------------------------------------------------------- +// mockProxyApp uses ABCIResponses to give the right results +// Useful because we don't want to call Commit() twice for the same block on the real app. + +func newMockProxyApp(appHash []byte, abciResponses *sm.ABCIResponses) proxy.AppConnConsensus { + clientCreator := proxy.NewLocalClientCreator(&mockProxyApp{ + appHash: appHash, + abciResponses: abciResponses, + }) + cli, _ := clientCreator.NewABCIClient() + err := cli.Start() + if err != nil { + panic(err) + } + return proxy.NewAppConnConsensus(cli) +} + +type mockProxyApp struct { + abci.BaseApplication + + appHash []byte + txCount int + abciResponses *sm.ABCIResponses +} + +func (mock *mockProxyApp) DeliverTx(tx []byte) abci.ResponseDeliverTx { + r := mock.abciResponses.DeliverTx[mock.txCount] + mock.txCount++ + return *r +} + +func (mock *mockProxyApp) EndBlock(req abci.RequestEndBlock) abci.ResponseEndBlock { + mock.txCount = 0 + return *mock.abciResponses.EndBlock +} + +func (mock *mockProxyApp) Commit() abci.ResponseCommit { + return abci.ResponseCommit{Data: mock.appHash} +} diff --git a/consensus/replay_file.go b/consensus/replay_file.go new file mode 100644 index 000000000..57204b01a --- /dev/null +++ b/consensus/replay_file.go @@ -0,0 +1,321 @@ +package consensus + +import ( + "bufio" + "context" + "fmt" + "io" + "os" + "strconv" + "strings" + + "github.com/pkg/errors" + + bc "github.com/tendermint/tendermint/blockchain" + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/proxy" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" +) + +const ( + // event bus subscriber + subscriber = "replay-file" +) + +//-------------------------------------------------------- +// replay messages interactively or all at once + +// replay the wal file +func RunReplayFile(config cfg.BaseConfig, csConfig *cfg.ConsensusConfig, console bool) { + consensusState := newConsensusStateForReplay(config, csConfig) + + if err := consensusState.ReplayFile(csConfig.WalFile(), console); err != nil { + cmn.Exit(cmn.Fmt("Error during consensus replay: %v", err)) + } +} + +// Replay msgs in file or start the console +func (cs *ConsensusState) ReplayFile(file string, console bool) error { + + if cs.IsRunning() { + return errors.New("cs is already running, cannot replay") + } + if cs.wal != nil { + return errors.New("cs wal is open, cannot replay") + } + + cs.startForReplay() + + // ensure all new step events are regenerated as expected + newStepCh := make(chan interface{}, 1) + + ctx := context.Background() + err := cs.eventBus.Subscribe(ctx, subscriber, types.EventQueryNewRoundStep, newStepCh) + if err != nil { + return errors.Errorf("failed to subscribe %s to %v", subscriber, types.EventQueryNewRoundStep) + } + defer cs.eventBus.Unsubscribe(ctx, subscriber, types.EventQueryNewRoundStep) + + // just open the file for reading, no need to use wal + fp, err := os.OpenFile(file, os.O_RDONLY, 0600) + if err != nil { + return err + } + + pb := newPlayback(file, fp, cs, cs.state.Copy()) + defer pb.fp.Close() // nolint: errcheck + + var nextN int // apply N msgs in a row + var msg *TimedWALMessage + for { + if nextN == 0 && console { + nextN = pb.replayConsoleLoop() + } + + msg, err = pb.dec.Decode() + if err == io.EOF { + return nil + } else if err != nil { + return err + } + + if err := pb.cs.readReplayMessage(msg, newStepCh); err != nil { + return err + } + + if nextN > 0 { + nextN-- + } + pb.count++ + } + return nil +} + +//------------------------------------------------ +// playback manager + +type playback struct { + cs *ConsensusState + + fp *os.File + dec *WALDecoder + count int // how many lines/msgs into the file are we + + // replays can be reset to beginning + fileName string // so we can close/reopen the file + genesisState sm.State // so the replay session knows where to restart from +} + +func newPlayback(fileName string, fp *os.File, cs *ConsensusState, genState sm.State) *playback { + return &playback{ + cs: cs, + fp: fp, + fileName: fileName, + genesisState: genState, + dec: NewWALDecoder(fp), + } +} + +// go back count steps by resetting the state and running (pb.count - count) steps +func (pb *playback) replayReset(count int, newStepCh chan interface{}) error { + pb.cs.Stop() + pb.cs.Wait() + + newCS := NewConsensusState(pb.cs.config, pb.genesisState.Copy(), pb.cs.blockExec, + pb.cs.blockStore, pb.cs.mempool, pb.cs.evpool) + newCS.SetEventBus(pb.cs.eventBus) + newCS.startForReplay() + + if err := pb.fp.Close(); err != nil { + return err + } + fp, err := os.OpenFile(pb.fileName, os.O_RDONLY, 0600) + if err != nil { + return err + } + pb.fp = fp + pb.dec = NewWALDecoder(fp) + count = pb.count - count + fmt.Printf("Reseting from %d to %d\n", pb.count, count) + pb.count = 0 + pb.cs = newCS + var msg *TimedWALMessage + for i := 0; i < count; i++ { + msg, err = pb.dec.Decode() + if err == io.EOF { + return nil + } else if err != nil { + return err + } + if err := pb.cs.readReplayMessage(msg, newStepCh); err != nil { + return err + } + pb.count++ + } + return nil +} + +func (cs *ConsensusState) startForReplay() { + cs.Logger.Error("Replay commands are disabled until someone updates them and writes tests") + /* TODO:! + // since we replay tocks we just ignore ticks + go func() { + for { + select { + case <-cs.tickChan: + case <-cs.Quit: + return + } + } + }()*/ +} + +// console function for parsing input and running commands +func (pb *playback) replayConsoleLoop() int { + for { + fmt.Printf("> ") + bufReader := bufio.NewReader(os.Stdin) + line, more, err := bufReader.ReadLine() + if more { + cmn.Exit("input is too long") + } else if err != nil { + cmn.Exit(err.Error()) + } + + tokens := strings.Split(string(line), " ") + if len(tokens) == 0 { + continue + } + + switch tokens[0] { + case "next": + // "next" -> replay next message + // "next N" -> replay next N messages + + if len(tokens) == 1 { + return 0 + } + i, err := strconv.Atoi(tokens[1]) + if err != nil { + fmt.Println("next takes an integer argument") + } else { + return i + } + + case "back": + // "back" -> go back one message + // "back N" -> go back N messages + + // NOTE: "back" is not supported in the state machine design, + // so we restart and replay up to + + ctx := context.Background() + // ensure all new step events are regenerated as expected + newStepCh := make(chan interface{}, 1) + + err := pb.cs.eventBus.Subscribe(ctx, subscriber, types.EventQueryNewRoundStep, newStepCh) + if err != nil { + cmn.Exit(fmt.Sprintf("failed to subscribe %s to %v", subscriber, types.EventQueryNewRoundStep)) + } + defer pb.cs.eventBus.Unsubscribe(ctx, subscriber, types.EventQueryNewRoundStep) + + if len(tokens) == 1 { + if err := pb.replayReset(1, newStepCh); err != nil { + pb.cs.Logger.Error("Replay reset error", "err", err) + } + } else { + i, err := strconv.Atoi(tokens[1]) + if err != nil { + fmt.Println("back takes an integer argument") + } else if i > pb.count { + fmt.Printf("argument to back must not be larger than the current count (%d)\n", pb.count) + } else { + if err := pb.replayReset(i, newStepCh); err != nil { + pb.cs.Logger.Error("Replay reset error", "err", err) + } + } + } + + case "rs": + // "rs" -> print entire round state + // "rs short" -> print height/round/step + // "rs " -> print another field of the round state + + rs := pb.cs.RoundState + if len(tokens) == 1 { + fmt.Println(rs) + } else { + switch tokens[1] { + case "short": + fmt.Printf("%v/%v/%v\n", rs.Height, rs.Round, rs.Step) + case "validators": + fmt.Println(rs.Validators) + case "proposal": + fmt.Println(rs.Proposal) + case "proposal_block": + fmt.Printf("%v %v\n", rs.ProposalBlockParts.StringShort(), rs.ProposalBlock.StringShort()) + case "locked_round": + fmt.Println(rs.LockedRound) + case "locked_block": + fmt.Printf("%v %v\n", rs.LockedBlockParts.StringShort(), rs.LockedBlock.StringShort()) + case "votes": + fmt.Println(rs.Votes.StringIndented(" ")) + + default: + fmt.Println("Unknown option", tokens[1]) + } + } + case "n": + fmt.Println(pb.count) + } + } + return 0 +} + +//-------------------------------------------------------------------------------- + +// convenience for replay mode +func newConsensusStateForReplay(config cfg.BaseConfig, csConfig *cfg.ConsensusConfig) *ConsensusState { + dbType := dbm.DBBackendType(config.DBBackend) + // Get BlockStore + blockStoreDB := dbm.NewDB("blockstore", dbType, config.DBDir()) + blockStore := bc.NewBlockStore(blockStoreDB) + + // Get State + stateDB := dbm.NewDB("state", dbType, config.DBDir()) + gdoc, err := sm.MakeGenesisDocFromFile(config.GenesisFile()) + if err != nil { + cmn.Exit(err.Error()) + } + state, err := sm.MakeGenesisState(gdoc) + if err != nil { + cmn.Exit(err.Error()) + } + + // Create proxyAppConn connection (consensus, mempool, query) + clientCreator := proxy.DefaultClientCreator(config.ProxyApp, config.ABCI, config.DBDir()) + proxyApp := proxy.NewAppConns(clientCreator, + NewHandshaker(stateDB, state, blockStore, gdoc)) + err = proxyApp.Start() + if err != nil { + cmn.Exit(cmn.Fmt("Error starting proxy app conns: %v", err)) + } + + eventBus := types.NewEventBus() + if err := eventBus.Start(); err != nil { + cmn.Exit(cmn.Fmt("Failed to start event bus: %v", err)) + } + + mempool, evpool := sm.MockMempool{}, sm.MockEvidencePool{} + blockExec := sm.NewBlockExecutor(stateDB, log.TestingLogger(), proxyApp.Consensus(), mempool, evpool) + + consensusState := NewConsensusState(csConfig, state.Copy(), blockExec, + blockStore, mempool, evpool) + + consensusState.SetEventBus(eventBus) + return consensusState +} diff --git a/consensus/replay_test.go b/consensus/replay_test.go new file mode 100644 index 000000000..927dfadca --- /dev/null +++ b/consensus/replay_test.go @@ -0,0 +1,687 @@ +package consensus + +import ( + "bytes" + "context" + "errors" + "fmt" + "io" + "io/ioutil" + "os" + "path" + "runtime" + "testing" + "time" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + + "github.com/tendermint/abci/example/kvstore" + abci "github.com/tendermint/abci/types" + crypto "github.com/tendermint/tendermint/crypto" + auto "github.com/tendermint/tmlibs/autofile" + cmn "github.com/tendermint/tmlibs/common" + dbm "github.com/tendermint/tmlibs/db" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/privval" + "github.com/tendermint/tendermint/proxy" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + "github.com/tendermint/tmlibs/log" +) + +var consensusReplayConfig *cfg.Config + +func init() { + consensusReplayConfig = ResetConfig("consensus_replay_test") +} + +// These tests ensure we can always recover from failure at any part of the consensus process. +// There are two general failure scenarios: failure during consensus, and failure while applying the block. +// Only the latter interacts with the app and store, +// but the former has to deal with restrictions on re-use of priv_validator keys. +// The `WAL Tests` are for failures during the consensus; +// the `Handshake Tests` are for failures in applying the block. +// With the help of the WAL, we can recover from it all! + +//------------------------------------------------------------------------------------------ +// WAL Tests + +// TODO: It would be better to verify explicitly which states we can recover from without the wal +// and which ones we need the wal for - then we'd also be able to only flush the +// wal writer when we need to, instead of with every message. + +func startNewConsensusStateAndWaitForBlock(t *testing.T, lastBlockHeight int64, blockDB dbm.DB, stateDB dbm.DB) { + logger := log.TestingLogger() + state, _ := sm.LoadStateFromDBOrGenesisFile(stateDB, consensusReplayConfig.GenesisFile()) + privValidator := loadPrivValidator(consensusReplayConfig) + cs := newConsensusStateWithConfigAndBlockStore(consensusReplayConfig, state, privValidator, kvstore.NewKVStoreApplication(), blockDB) + cs.SetLogger(logger) + + bytes, _ := ioutil.ReadFile(cs.config.WalFile()) + // fmt.Printf("====== WAL: \n\r%s\n", bytes) + t.Logf("====== WAL: \n\r%X\n", bytes) + + err := cs.Start() + require.NoError(t, err) + defer cs.Stop() + + // This is just a signal that we haven't halted; its not something contained + // in the WAL itself. Assuming the consensus state is running, replay of any + // WAL, including the empty one, should eventually be followed by a new + // block, or else something is wrong. + newBlockCh := make(chan interface{}, 1) + err = cs.eventBus.Subscribe(context.Background(), testSubscriber, types.EventQueryNewBlock, newBlockCh) + require.NoError(t, err) + select { + case <-newBlockCh: + case <-time.After(60 * time.Second): + t.Fatalf("Timed out waiting for new block (see trace above)") + } +} + +func sendTxs(cs *ConsensusState, ctx context.Context) { + for i := 0; i < 256; i++ { + select { + case <-ctx.Done(): + return + default: + tx := []byte{byte(i)} + cs.mempool.CheckTx(tx, nil) + i++ + } + } +} + +// TestWALCrash uses crashing WAL to test we can recover from any WAL failure. +func TestWALCrash(t *testing.T) { + testCases := []struct { + name string + initFn func(dbm.DB, *ConsensusState, context.Context) + heightToStop int64 + }{ + {"empty block", + func(stateDB dbm.DB, cs *ConsensusState, ctx context.Context) {}, + 1}, + {"block with a smaller part size", + func(stateDB dbm.DB, cs *ConsensusState, ctx context.Context) { + // XXX: is there a better way to change BlockPartSizeBytes? + cs.state.ConsensusParams.BlockPartSizeBytes = 512 + sm.SaveState(stateDB, cs.state) + go sendTxs(cs, ctx) + }, + 1}, + {"many non-empty blocks", + func(stateDB dbm.DB, cs *ConsensusState, ctx context.Context) { + go sendTxs(cs, ctx) + }, + 3}, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + crashWALandCheckLiveness(t, tc.initFn, tc.heightToStop) + }) + } +} + +func crashWALandCheckLiveness(t *testing.T, initFn func(dbm.DB, *ConsensusState, context.Context), heightToStop int64) { + walPaniced := make(chan error) + crashingWal := &crashingWAL{panicCh: walPaniced, heightToStop: heightToStop} + + i := 1 +LOOP: + for { + // fmt.Printf("====== LOOP %d\n", i) + t.Logf("====== LOOP %d\n", i) + + // create consensus state from a clean slate + logger := log.NewNopLogger() + stateDB := dbm.NewMemDB() + state, _ := sm.MakeGenesisStateFromFile(consensusReplayConfig.GenesisFile()) + privValidator := loadPrivValidator(consensusReplayConfig) + blockDB := dbm.NewMemDB() + cs := newConsensusStateWithConfigAndBlockStore(consensusReplayConfig, state, privValidator, kvstore.NewKVStoreApplication(), blockDB) + cs.SetLogger(logger) + + // start sending transactions + ctx, cancel := context.WithCancel(context.Background()) + initFn(stateDB, cs, ctx) + + // clean up WAL file from the previous iteration + walFile := cs.config.WalFile() + os.Remove(walFile) + + // set crashing WAL + csWal, err := cs.OpenWAL(walFile) + require.NoError(t, err) + crashingWal.next = csWal + // reset the message counter + crashingWal.msgIndex = 1 + cs.wal = crashingWal + + // start consensus state + err = cs.Start() + require.NoError(t, err) + + i++ + + select { + case err := <-walPaniced: + t.Logf("WAL paniced: %v", err) + + // make sure we can make blocks after a crash + startNewConsensusStateAndWaitForBlock(t, cs.Height, blockDB, stateDB) + + // stop consensus state and transactions sender (initFn) + cs.Stop() + cancel() + + // if we reached the required height, exit + if _, ok := err.(ReachedHeightToStopError); ok { + break LOOP + } + case <-time.After(10 * time.Second): + t.Fatal("WAL did not panic for 10 seconds (check the log)") + } + } +} + +// crashingWAL is a WAL which crashes or rather simulates a crash during Save +// (before and after). It remembers a message for which we last panicked +// (lastPanicedForMsgIndex), so we don't panic for it in subsequent iterations. +type crashingWAL struct { + next WAL + panicCh chan error + heightToStop int64 + + msgIndex int // current message index + lastPanicedForMsgIndex int // last message for which we panicked +} + +// WALWriteError indicates a WAL crash. +type WALWriteError struct { + msg string +} + +func (e WALWriteError) Error() string { + return e.msg +} + +// ReachedHeightToStopError indicates we've reached the required consensus +// height and may exit. +type ReachedHeightToStopError struct { + height int64 +} + +func (e ReachedHeightToStopError) Error() string { + return fmt.Sprintf("reached height to stop %d", e.height) +} + +// Write simulate WAL's crashing by sending an error to the panicCh and then +// exiting the cs.receiveRoutine. +func (w *crashingWAL) Write(m WALMessage) { + if endMsg, ok := m.(EndHeightMessage); ok { + if endMsg.Height == w.heightToStop { + w.panicCh <- ReachedHeightToStopError{endMsg.Height} + runtime.Goexit() + } else { + w.next.Write(m) + } + return + } + + if w.msgIndex > w.lastPanicedForMsgIndex { + w.lastPanicedForMsgIndex = w.msgIndex + _, file, line, _ := runtime.Caller(1) + w.panicCh <- WALWriteError{fmt.Sprintf("failed to write %T to WAL (fileline: %s:%d)", m, file, line)} + runtime.Goexit() + } else { + w.msgIndex++ + w.next.Write(m) + } +} + +func (w *crashingWAL) WriteSync(m WALMessage) { + w.Write(m) +} + +func (w *crashingWAL) Group() *auto.Group { return w.next.Group() } +func (w *crashingWAL) SearchForEndHeight(height int64, options *WALSearchOptions) (gr *auto.GroupReader, found bool, err error) { + return w.next.SearchForEndHeight(height, options) +} + +func (w *crashingWAL) Start() error { return w.next.Start() } +func (w *crashingWAL) Stop() error { return w.next.Stop() } +func (w *crashingWAL) Wait() { w.next.Wait() } + +//------------------------------------------------------------------------------------------ +// Handshake Tests + +const ( + NUM_BLOCKS = 6 +) + +var ( + mempool = sm.MockMempool{} + evpool = sm.MockEvidencePool{} +) + +//--------------------------------------- +// Test handshake/replay + +// 0 - all synced up +// 1 - saved block but app and state are behind +// 2 - save block and committed but state is behind +var modes = []uint{0, 1, 2} + +// Sync from scratch +func TestHandshakeReplayAll(t *testing.T) { + for _, m := range modes { + testHandshakeReplay(t, 0, m) + } +} + +// Sync many, not from scratch +func TestHandshakeReplaySome(t *testing.T) { + for _, m := range modes { + testHandshakeReplay(t, 1, m) + } +} + +// Sync from lagging by one +func TestHandshakeReplayOne(t *testing.T) { + for _, m := range modes { + testHandshakeReplay(t, NUM_BLOCKS-1, m) + } +} + +// Sync from caught up +func TestHandshakeReplayNone(t *testing.T) { + for _, m := range modes { + testHandshakeReplay(t, NUM_BLOCKS, m) + } +} + +func tempWALWithData(data []byte) string { + walFile, err := ioutil.TempFile("", "wal") + if err != nil { + panic(fmt.Errorf("failed to create temp WAL file: %v", err)) + } + _, err = walFile.Write(data) + if err != nil { + panic(fmt.Errorf("failed to write to temp WAL file: %v", err)) + } + if err := walFile.Close(); err != nil { + panic(fmt.Errorf("failed to close temp WAL file: %v", err)) + } + return walFile.Name() +} + +// Make some blocks. Start a fresh app and apply nBlocks blocks. Then restart the app and sync it up with the remaining blocks +func testHandshakeReplay(t *testing.T, nBlocks int, mode uint) { + config := ResetConfig("proxy_test_") + + walBody, err := WALWithNBlocks(NUM_BLOCKS) + if err != nil { + t.Fatal(err) + } + walFile := tempWALWithData(walBody) + config.Consensus.SetWalFile(walFile) + + privVal := privval.LoadFilePV(config.PrivValidatorFile()) + + wal, err := NewWAL(walFile) + if err != nil { + t.Fatal(err) + } + wal.SetLogger(log.TestingLogger()) + if err := wal.Start(); err != nil { + t.Fatal(err) + } + defer wal.Stop() + + chain, commits, err := makeBlockchainFromWAL(wal) + if err != nil { + t.Fatalf(err.Error()) + } + + stateDB, state, store := stateAndStore(config, privVal.GetPubKey()) + store.chain = chain + store.commits = commits + + // run the chain through state.ApplyBlock to build up the tendermint state + state = buildTMStateFromChain(config, stateDB, state, chain, mode) + latestAppHash := state.AppHash + + // make a new client creator + kvstoreApp := kvstore.NewPersistentKVStoreApplication(path.Join(config.DBDir(), "2")) + clientCreator2 := proxy.NewLocalClientCreator(kvstoreApp) + if nBlocks > 0 { + // run nBlocks against a new client to build up the app state. + // use a throwaway tendermint state + proxyApp := proxy.NewAppConns(clientCreator2, nil) + stateDB, state, _ := stateAndStore(config, privVal.GetPubKey()) + buildAppStateFromChain(proxyApp, stateDB, state, chain, nBlocks, mode) + } + + // now start the app using the handshake - it should sync + genDoc, _ := sm.MakeGenesisDocFromFile(config.GenesisFile()) + handshaker := NewHandshaker(stateDB, state, store, genDoc) + proxyApp := proxy.NewAppConns(clientCreator2, handshaker) + if err := proxyApp.Start(); err != nil { + t.Fatalf("Error starting proxy app connections: %v", err) + } + defer proxyApp.Stop() + + // get the latest app hash from the app + res, err := proxyApp.Query().InfoSync(abci.RequestInfo{""}) + if err != nil { + t.Fatal(err) + } + + // the app hash should be synced up + if !bytes.Equal(latestAppHash, res.LastBlockAppHash) { + t.Fatalf("Expected app hashes to match after handshake/replay. got %X, expected %X", res.LastBlockAppHash, latestAppHash) + } + + expectedBlocksToSync := NUM_BLOCKS - nBlocks + if nBlocks == NUM_BLOCKS && mode > 0 { + expectedBlocksToSync++ + } else if nBlocks > 0 && mode == 1 { + expectedBlocksToSync++ + } + + if handshaker.NBlocks() != expectedBlocksToSync { + t.Fatalf("Expected handshake to sync %d blocks, got %d", expectedBlocksToSync, handshaker.NBlocks()) + } +} + +func applyBlock(stateDB dbm.DB, st sm.State, blk *types.Block, proxyApp proxy.AppConns) sm.State { + testPartSize := st.ConsensusParams.BlockPartSizeBytes + blockExec := sm.NewBlockExecutor(stateDB, log.TestingLogger(), proxyApp.Consensus(), mempool, evpool) + + blkID := types.BlockID{blk.Hash(), blk.MakePartSet(testPartSize).Header()} + newState, err := blockExec.ApplyBlock(st, blkID, blk) + if err != nil { + panic(err) + } + return newState +} + +func buildAppStateFromChain(proxyApp proxy.AppConns, stateDB dbm.DB, + state sm.State, chain []*types.Block, nBlocks int, mode uint) { + // start a new app without handshake, play nBlocks blocks + if err := proxyApp.Start(); err != nil { + panic(err) + } + defer proxyApp.Stop() + + validators := types.TM2PB.Validators(state.Validators) + if _, err := proxyApp.Consensus().InitChainSync(abci.RequestInitChain{ + Validators: validators, + }); err != nil { + panic(err) + } + + switch mode { + case 0: + for i := 0; i < nBlocks; i++ { + block := chain[i] + state = applyBlock(stateDB, state, block, proxyApp) + } + case 1, 2: + for i := 0; i < nBlocks-1; i++ { + block := chain[i] + state = applyBlock(stateDB, state, block, proxyApp) + } + + if mode == 2 { + // update the kvstore height and apphash + // as if we ran commit but not + state = applyBlock(stateDB, state, chain[nBlocks-1], proxyApp) + } + } + +} + +func buildTMStateFromChain(config *cfg.Config, stateDB dbm.DB, state sm.State, chain []*types.Block, mode uint) sm.State { + // run the whole chain against this client to build up the tendermint state + clientCreator := proxy.NewLocalClientCreator(kvstore.NewPersistentKVStoreApplication(path.Join(config.DBDir(), "1"))) + proxyApp := proxy.NewAppConns(clientCreator, nil) // sm.NewHandshaker(config, state, store, ReplayLastBlock)) + if err := proxyApp.Start(); err != nil { + panic(err) + } + defer proxyApp.Stop() + + validators := types.TM2PB.Validators(state.Validators) + if _, err := proxyApp.Consensus().InitChainSync(abci.RequestInitChain{ + Validators: validators, + }); err != nil { + panic(err) + } + + switch mode { + case 0: + // sync right up + for _, block := range chain { + state = applyBlock(stateDB, state, block, proxyApp) + } + + case 1, 2: + // sync up to the penultimate as if we stored the block. + // whether we commit or not depends on the appHash + for _, block := range chain[:len(chain)-1] { + state = applyBlock(stateDB, state, block, proxyApp) + } + + // apply the final block to a state copy so we can + // get the right next appHash but keep the state back + applyBlock(stateDB, state, chain[len(chain)-1], proxyApp) + } + + return state +} + +//-------------------------- +// utils for making blocks + +func makeBlockchainFromWAL(wal WAL) ([]*types.Block, []*types.Commit, error) { + // Search for height marker + gr, found, err := wal.SearchForEndHeight(0, &WALSearchOptions{}) + if err != nil { + return nil, nil, err + } + if !found { + return nil, nil, errors.New(cmn.Fmt("WAL does not contain height %d.", 1)) + } + defer gr.Close() // nolint: errcheck + + // log.Notice("Build a blockchain by reading from the WAL") + + var blocks []*types.Block + var commits []*types.Commit + + var thisBlockParts *types.PartSet + var thisBlockCommit *types.Commit + var height int64 + + dec := NewWALDecoder(gr) + for { + msg, err := dec.Decode() + if err == io.EOF { + break + } else if err != nil { + return nil, nil, err + } + + piece := readPieceFromWAL(msg) + if piece == nil { + continue + } + + switch p := piece.(type) { + case EndHeightMessage: + // if its not the first one, we have a full block + if thisBlockParts != nil { + var block = new(types.Block) + _, err = cdc.UnmarshalBinaryReader(thisBlockParts.GetReader(), block, 0) + if err != nil { + panic(err) + } + if block.Height != height+1 { + panic(cmn.Fmt("read bad block from wal. got height %d, expected %d", block.Height, height+1)) + } + commitHeight := thisBlockCommit.Precommits[0].Height + if commitHeight != height+1 { + panic(cmn.Fmt("commit doesnt match. got height %d, expected %d", commitHeight, height+1)) + } + blocks = append(blocks, block) + commits = append(commits, thisBlockCommit) + height++ + } + case *types.PartSetHeader: + thisBlockParts = types.NewPartSetFromHeader(*p) + case *types.Part: + _, err := thisBlockParts.AddPart(p) + if err != nil { + return nil, nil, err + } + case *types.Vote: + if p.Type == types.VoteTypePrecommit { + thisBlockCommit = &types.Commit{ + BlockID: p.BlockID, + Precommits: []*types.Vote{p}, + } + } + } + } + // grab the last block too + var block = new(types.Block) + _, err = cdc.UnmarshalBinaryReader(thisBlockParts.GetReader(), block, 0) + if err != nil { + panic(err) + } + if block.Height != height+1 { + panic(cmn.Fmt("read bad block from wal. got height %d, expected %d", block.Height, height+1)) + } + commitHeight := thisBlockCommit.Precommits[0].Height + if commitHeight != height+1 { + panic(cmn.Fmt("commit doesnt match. got height %d, expected %d", commitHeight, height+1)) + } + blocks = append(blocks, block) + commits = append(commits, thisBlockCommit) + return blocks, commits, nil +} + +func readPieceFromWAL(msg *TimedWALMessage) interface{} { + // for logging + switch m := msg.Msg.(type) { + case msgInfo: + switch msg := m.Msg.(type) { + case *ProposalMessage: + return &msg.Proposal.BlockPartsHeader + case *BlockPartMessage: + return msg.Part + case *VoteMessage: + return msg.Vote + } + case EndHeightMessage: + return m + } + + return nil +} + +// fresh state and mock store +func stateAndStore(config *cfg.Config, pubKey crypto.PubKey) (dbm.DB, sm.State, *mockBlockStore) { + stateDB := dbm.NewMemDB() + state, _ := sm.MakeGenesisStateFromFile(config.GenesisFile()) + store := NewMockBlockStore(config, state.ConsensusParams) + return stateDB, state, store +} + +//---------------------------------- +// mock block store + +type mockBlockStore struct { + config *cfg.Config + params types.ConsensusParams + chain []*types.Block + commits []*types.Commit +} + +// TODO: NewBlockStore(db.NewMemDB) ... +func NewMockBlockStore(config *cfg.Config, params types.ConsensusParams) *mockBlockStore { + return &mockBlockStore{config, params, nil, nil} +} + +func (bs *mockBlockStore) Height() int64 { return int64(len(bs.chain)) } +func (bs *mockBlockStore) LoadBlock(height int64) *types.Block { return bs.chain[height-1] } +func (bs *mockBlockStore) LoadBlockMeta(height int64) *types.BlockMeta { + block := bs.chain[height-1] + return &types.BlockMeta{ + BlockID: types.BlockID{block.Hash(), block.MakePartSet(bs.params.BlockPartSizeBytes).Header()}, + Header: block.Header, + } +} +func (bs *mockBlockStore) LoadBlockPart(height int64, index int) *types.Part { return nil } +func (bs *mockBlockStore) SaveBlock(block *types.Block, blockParts *types.PartSet, seenCommit *types.Commit) { +} +func (bs *mockBlockStore) LoadBlockCommit(height int64) *types.Commit { + return bs.commits[height-1] +} +func (bs *mockBlockStore) LoadSeenCommit(height int64) *types.Commit { + return bs.commits[height-1] +} + +//---------------------------------------- + +func TestInitChainUpdateValidators(t *testing.T) { + val, _ := types.RandValidator(true, 10) + vals := types.NewValidatorSet([]*types.Validator{val}) + app := &initChainApp{vals: types.TM2PB.Validators(vals)} + clientCreator := proxy.NewLocalClientCreator(app) + + config := ResetConfig("proxy_test_") + privVal := privval.LoadFilePV(config.PrivValidatorFile()) + stateDB, state, store := stateAndStore(config, privVal.GetPubKey()) + + oldValAddr := state.Validators.Validators[0].Address + + // now start the app using the handshake - it should sync + genDoc, _ := sm.MakeGenesisDocFromFile(config.GenesisFile()) + handshaker := NewHandshaker(stateDB, state, store, genDoc) + proxyApp := proxy.NewAppConns(clientCreator, handshaker) + if err := proxyApp.Start(); err != nil { + t.Fatalf("Error starting proxy app connections: %v", err) + } + defer proxyApp.Stop() + + // reload the state, check the validator set was updated + state = sm.LoadState(stateDB) + + newValAddr := state.Validators.Validators[0].Address + expectValAddr := val.Address + assert.NotEqual(t, oldValAddr, newValAddr) + assert.Equal(t, newValAddr, expectValAddr) +} + +func newInitChainApp(vals []abci.Validator) *initChainApp { + return &initChainApp{ + vals: vals, + } +} + +// returns the vals on InitChain +type initChainApp struct { + abci.BaseApplication + vals []abci.Validator +} + +func (ica *initChainApp) InitChain(req abci.RequestInitChain) abci.ResponseInitChain { + return abci.ResponseInitChain{ + Validators: ica.vals, + } +} diff --git a/consensus/state.go b/consensus/state.go new file mode 100644 index 000000000..aab822969 --- /dev/null +++ b/consensus/state.go @@ -0,0 +1,1673 @@ +package consensus + +import ( + "bytes" + "errors" + "fmt" + "reflect" + "runtime/debug" + "sync" + "time" + + fail "github.com/ebuchman/fail-test" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" + + cfg "github.com/tendermint/tendermint/config" + cstypes "github.com/tendermint/tendermint/consensus/types" + tmevents "github.com/tendermint/tendermint/libs/events" + "github.com/tendermint/tendermint/p2p" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" +) + +//----------------------------------------------------------------------------- +// Config + +const ( + proposalHeartbeatIntervalSeconds = 2 +) + +//----------------------------------------------------------------------------- +// Errors + +var ( + ErrInvalidProposalSignature = errors.New("Error invalid proposal signature") + ErrInvalidProposalPOLRound = errors.New("Error invalid proposal POL round") + ErrAddingVote = errors.New("Error adding vote") + ErrVoteHeightMismatch = errors.New("Error vote height mismatch") +) + +//----------------------------------------------------------------------------- + +var ( + msgQueueSize = 1000 +) + +// msgs from the reactor which may update the state +type msgInfo struct { + Msg ConsensusMessage `json:"msg"` + PeerID p2p.ID `json:"peer_key"` +} + +// internally generated messages which may update the state +type timeoutInfo struct { + Duration time.Duration `json:"duration"` + Height int64 `json:"height"` + Round int `json:"round"` + Step cstypes.RoundStepType `json:"step"` +} + +func (ti *timeoutInfo) String() string { + return fmt.Sprintf("%v ; %d/%d %v", ti.Duration, ti.Height, ti.Round, ti.Step) +} + +// ConsensusState handles execution of the consensus algorithm. +// It processes votes and proposals, and upon reaching agreement, +// commits blocks to the chain and executes them against the application. +// The internal state machine receives input from peers, the internal validator, and from a timer. +type ConsensusState struct { + cmn.BaseService + + // config details + config *cfg.ConsensusConfig + privValidator types.PrivValidator // for signing votes + + // services for creating and executing blocks + // TODO: encapsulate all of this in one "BlockManager" + blockExec *sm.BlockExecutor + blockStore sm.BlockStore + mempool sm.Mempool + evpool sm.EvidencePool + + // internal state + mtx sync.Mutex + cstypes.RoundState + state sm.State // State until height-1. + + // state changes may be triggered by: msgs from peers, + // msgs from ourself, or by timeouts + peerMsgQueue chan msgInfo + internalMsgQueue chan msgInfo + timeoutTicker TimeoutTicker + + // we use eventBus to trigger msg broadcasts in the reactor, + // and to notify external subscribers, eg. through a websocket + eventBus *types.EventBus + + // a Write-Ahead Log ensures we can recover from any kind of crash + // and helps us avoid signing conflicting votes + wal WAL + replayMode bool // so we don't log signing errors during replay + doWALCatchup bool // determines if we even try to do the catchup + + // for tests where we want to limit the number of transitions the state makes + nSteps int + + // some functions can be overwritten for testing + decideProposal func(height int64, round int) + doPrevote func(height int64, round int) + setProposal func(proposal *types.Proposal) error + + // closed when we finish shutting down + done chan struct{} + + // synchronous pubsub between consensus state and reactor. + // state only emits EventNewRoundStep, EventVote and EventProposalHeartbeat + evsw tmevents.EventSwitch + + // for reporting metrics + metrics *Metrics +} + +// CSOption sets an optional parameter on the ConsensusState. +type CSOption func(*ConsensusState) + +// NewConsensusState returns a new ConsensusState. +func NewConsensusState( + config *cfg.ConsensusConfig, + state sm.State, + blockExec *sm.BlockExecutor, + blockStore sm.BlockStore, + mempool sm.Mempool, + evpool sm.EvidencePool, + options ...CSOption, +) *ConsensusState { + cs := &ConsensusState{ + config: config, + blockExec: blockExec, + blockStore: blockStore, + mempool: mempool, + peerMsgQueue: make(chan msgInfo, msgQueueSize), + internalMsgQueue: make(chan msgInfo, msgQueueSize), + timeoutTicker: NewTimeoutTicker(), + done: make(chan struct{}), + doWALCatchup: true, + wal: nilWAL{}, + evpool: evpool, + evsw: tmevents.NewEventSwitch(), + metrics: NopMetrics(), + } + // set function defaults (may be overwritten before calling Start) + cs.decideProposal = cs.defaultDecideProposal + cs.doPrevote = cs.defaultDoPrevote + cs.setProposal = cs.defaultSetProposal + + cs.updateToState(state) + // Don't call scheduleRound0 yet. + // We do that upon Start(). + cs.reconstructLastCommit(state) + cs.BaseService = *cmn.NewBaseService(nil, "ConsensusState", cs) + for _, option := range options { + option(cs) + } + return cs +} + +//---------------------------------------- +// Public interface + +// SetLogger implements Service. +func (cs *ConsensusState) SetLogger(l log.Logger) { + cs.BaseService.Logger = l + cs.timeoutTicker.SetLogger(l) +} + +// SetEventBus sets event bus. +func (cs *ConsensusState) SetEventBus(b *types.EventBus) { + cs.eventBus = b + cs.blockExec.SetEventBus(b) +} + +// WithMetrics sets the metrics. +func WithMetrics(metrics *Metrics) CSOption { + return func(cs *ConsensusState) { cs.metrics = metrics } +} + +// String returns a string. +func (cs *ConsensusState) String() string { + // better not to access shared variables + return cmn.Fmt("ConsensusState") //(H:%v R:%v S:%v", cs.Height, cs.Round, cs.Step) +} + +// GetState returns a copy of the chain state. +func (cs *ConsensusState) GetState() sm.State { + cs.mtx.Lock() + defer cs.mtx.Unlock() + return cs.state.Copy() +} + +// GetRoundState returns a shallow copy of the internal consensus state. +func (cs *ConsensusState) GetRoundState() *cstypes.RoundState { + cs.mtx.Lock() + defer cs.mtx.Unlock() + + rs := cs.RoundState // copy + return &rs +} + +// GetRoundStateJSON returns a json of RoundState, marshalled using go-amino. +func (cs *ConsensusState) GetRoundStateJSON() ([]byte, error) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + + return cdc.MarshalJSON(cs.RoundState) +} + +// GetRoundStateSimpleJSON returns a json of RoundStateSimple, marshalled using go-amino. +func (cs *ConsensusState) GetRoundStateSimpleJSON() ([]byte, error) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + + return cdc.MarshalJSON(cs.RoundState.RoundStateSimple()) +} + +// GetValidators returns a copy of the current validators. +func (cs *ConsensusState) GetValidators() (int64, []*types.Validator) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + return cs.state.LastBlockHeight, cs.state.Validators.Copy().Validators +} + +// SetPrivValidator sets the private validator account for signing votes. +func (cs *ConsensusState) SetPrivValidator(priv types.PrivValidator) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + cs.privValidator = priv +} + +// SetTimeoutTicker sets the local timer. It may be useful to overwrite for testing. +func (cs *ConsensusState) SetTimeoutTicker(timeoutTicker TimeoutTicker) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + cs.timeoutTicker = timeoutTicker +} + +// LoadCommit loads the commit for a given height. +func (cs *ConsensusState) LoadCommit(height int64) *types.Commit { + cs.mtx.Lock() + defer cs.mtx.Unlock() + if height == cs.blockStore.Height() { + return cs.blockStore.LoadSeenCommit(height) + } + return cs.blockStore.LoadBlockCommit(height) +} + +// OnStart implements cmn.Service. +// It loads the latest state via the WAL, and starts the timeout and receive routines. +func (cs *ConsensusState) OnStart() error { + if err := cs.evsw.Start(); err != nil { + return err + } + + // we may set the WAL in testing before calling Start, + // so only OpenWAL if its still the nilWAL + if _, ok := cs.wal.(nilWAL); ok { + walFile := cs.config.WalFile() + wal, err := cs.OpenWAL(walFile) + if err != nil { + cs.Logger.Error("Error loading ConsensusState wal", "err", err.Error()) + return err + } + cs.wal = wal + } + + // we need the timeoutRoutine for replay so + // we don't block on the tick chan. + // NOTE: we will get a build up of garbage go routines + // firing on the tockChan until the receiveRoutine is started + // to deal with them (by that point, at most one will be valid) + if err := cs.timeoutTicker.Start(); err != nil { + return err + } + + // we may have lost some votes if the process crashed + // reload from consensus log to catchup + if cs.doWALCatchup { + if err := cs.catchupReplay(cs.Height); err != nil { + cs.Logger.Error("Error on catchup replay. Proceeding to start ConsensusState anyway", "err", err.Error()) + // NOTE: if we ever do return an error here, + // make sure to stop the timeoutTicker + } + } + + // now start the receiveRoutine + go cs.receiveRoutine(0) + + // schedule the first round! + // use GetRoundState so we don't race the receiveRoutine for access + cs.scheduleRound0(cs.GetRoundState()) + + return nil +} + +// timeoutRoutine: receive requests for timeouts on tickChan and fire timeouts on tockChan +// receiveRoutine: serializes processing of proposoals, block parts, votes; coordinates state transitions +func (cs *ConsensusState) startRoutines(maxSteps int) { + err := cs.timeoutTicker.Start() + if err != nil { + cs.Logger.Error("Error starting timeout ticker", "err", err) + return + } + go cs.receiveRoutine(maxSteps) +} + +// OnStop implements cmn.Service. It stops all routines and waits for the WAL to finish. +func (cs *ConsensusState) OnStop() { + cs.BaseService.OnStop() + + cs.evsw.Stop() + + cs.timeoutTicker.Stop() + + // Make BaseService.Wait() wait until cs.wal.Wait() + if cs.IsRunning() { + cs.wal.Wait() + } +} + +// Wait waits for the the main routine to return. +// NOTE: be sure to Stop() the event switch and drain +// any event channels or this may deadlock +func (cs *ConsensusState) Wait() { + <-cs.done +} + +// OpenWAL opens a file to log all consensus messages and timeouts for deterministic accountability +func (cs *ConsensusState) OpenWAL(walFile string) (WAL, error) { + wal, err := NewWAL(walFile) + if err != nil { + cs.Logger.Error("Failed to open WAL for consensus state", "wal", walFile, "err", err) + return nil, err + } + wal.SetLogger(cs.Logger.With("wal", walFile)) + if err := wal.Start(); err != nil { + return nil, err + } + return wal, nil +} + +//------------------------------------------------------------ +// Public interface for passing messages into the consensus state, possibly causing a state transition. +// If peerID == "", the msg is considered internal. +// Messages are added to the appropriate queue (peer or internal). +// If the queue is full, the function may block. +// TODO: should these return anything or let callers just use events? + +// AddVote inputs a vote. +func (cs *ConsensusState) AddVote(vote *types.Vote, peerID p2p.ID) (added bool, err error) { + if peerID == "" { + cs.internalMsgQueue <- msgInfo{&VoteMessage{vote}, ""} + } else { + cs.peerMsgQueue <- msgInfo{&VoteMessage{vote}, peerID} + } + + // TODO: wait for event?! + return false, nil +} + +// SetProposal inputs a proposal. +func (cs *ConsensusState) SetProposal(proposal *types.Proposal, peerID p2p.ID) error { + + if peerID == "" { + cs.internalMsgQueue <- msgInfo{&ProposalMessage{proposal}, ""} + } else { + cs.peerMsgQueue <- msgInfo{&ProposalMessage{proposal}, peerID} + } + + // TODO: wait for event?! + return nil +} + +// AddProposalBlockPart inputs a part of the proposal block. +func (cs *ConsensusState) AddProposalBlockPart(height int64, round int, part *types.Part, peerID p2p.ID) error { + + if peerID == "" { + cs.internalMsgQueue <- msgInfo{&BlockPartMessage{height, round, part}, ""} + } else { + cs.peerMsgQueue <- msgInfo{&BlockPartMessage{height, round, part}, peerID} + } + + // TODO: wait for event?! + return nil +} + +// SetProposalAndBlock inputs the proposal and all block parts. +func (cs *ConsensusState) SetProposalAndBlock(proposal *types.Proposal, block *types.Block, parts *types.PartSet, peerID p2p.ID) error { + if err := cs.SetProposal(proposal, peerID); err != nil { + return err + } + for i := 0; i < parts.Total(); i++ { + part := parts.GetPart(i) + if err := cs.AddProposalBlockPart(proposal.Height, proposal.Round, part, peerID); err != nil { + return err + } + } + return nil +} + +//------------------------------------------------------------ +// internal functions for managing the state + +func (cs *ConsensusState) updateHeight(height int64) { + cs.metrics.Height.Set(float64(height)) + cs.Height = height +} + +func (cs *ConsensusState) updateRoundStep(round int, step cstypes.RoundStepType) { + cs.Round = round + cs.Step = step +} + +// enterNewRound(height, 0) at cs.StartTime. +func (cs *ConsensusState) scheduleRound0(rs *cstypes.RoundState) { + //cs.Logger.Info("scheduleRound0", "now", time.Now(), "startTime", cs.StartTime) + sleepDuration := rs.StartTime.Sub(time.Now()) // nolint: gotype, gosimple + cs.scheduleTimeout(sleepDuration, rs.Height, 0, cstypes.RoundStepNewHeight) +} + +// Attempt to schedule a timeout (by sending timeoutInfo on the tickChan) +func (cs *ConsensusState) scheduleTimeout(duration time.Duration, height int64, round int, step cstypes.RoundStepType) { + cs.timeoutTicker.ScheduleTimeout(timeoutInfo{duration, height, round, step}) +} + +// send a msg into the receiveRoutine regarding our own proposal, block part, or vote +func (cs *ConsensusState) sendInternalMessage(mi msgInfo) { + select { + case cs.internalMsgQueue <- mi: + default: + // NOTE: using the go-routine means our votes can + // be processed out of order. + // TODO: use CList here for strict determinism and + // attempt push to internalMsgQueue in receiveRoutine + cs.Logger.Info("Internal msg queue is full. Using a go-routine") + go func() { cs.internalMsgQueue <- mi }() + } +} + +// Reconstruct LastCommit from SeenCommit, which we saved along with the block, +// (which happens even before saving the state) +func (cs *ConsensusState) reconstructLastCommit(state sm.State) { + if state.LastBlockHeight == 0 { + return + } + seenCommit := cs.blockStore.LoadSeenCommit(state.LastBlockHeight) + lastPrecommits := types.NewVoteSet(state.ChainID, state.LastBlockHeight, seenCommit.Round(), types.VoteTypePrecommit, state.LastValidators) + for _, precommit := range seenCommit.Precommits { + if precommit == nil { + continue + } + added, err := lastPrecommits.AddVote(precommit) + if !added || err != nil { + cmn.PanicCrisis(cmn.Fmt("Failed to reconstruct LastCommit: %v", err)) + } + } + if !lastPrecommits.HasTwoThirdsMajority() { + cmn.PanicSanity("Failed to reconstruct LastCommit: Does not have +2/3 maj") + } + cs.LastCommit = lastPrecommits +} + +// Updates ConsensusState and increments height to match that of state. +// The round becomes 0 and cs.Step becomes cstypes.RoundStepNewHeight. +func (cs *ConsensusState) updateToState(state sm.State) { + if cs.CommitRound > -1 && 0 < cs.Height && cs.Height != state.LastBlockHeight { + cmn.PanicSanity(cmn.Fmt("updateToState() expected state height of %v but found %v", + cs.Height, state.LastBlockHeight)) + } + if !cs.state.IsEmpty() && cs.state.LastBlockHeight+1 != cs.Height { + // This might happen when someone else is mutating cs.state. + // Someone forgot to pass in state.Copy() somewhere?! + cmn.PanicSanity(cmn.Fmt("Inconsistent cs.state.LastBlockHeight+1 %v vs cs.Height %v", + cs.state.LastBlockHeight+1, cs.Height)) + } + + // If state isn't further out than cs.state, just ignore. + // This happens when SwitchToConsensus() is called in the reactor. + // We don't want to reset e.g. the Votes. + if !cs.state.IsEmpty() && (state.LastBlockHeight <= cs.state.LastBlockHeight) { + cs.Logger.Info("Ignoring updateToState()", "newHeight", state.LastBlockHeight+1, "oldHeight", cs.state.LastBlockHeight+1) + return + } + + // Reset fields based on state. + validators := state.Validators + lastPrecommits := (*types.VoteSet)(nil) + if cs.CommitRound > -1 && cs.Votes != nil { + if !cs.Votes.Precommits(cs.CommitRound).HasTwoThirdsMajority() { + cmn.PanicSanity("updateToState(state) called but last Precommit round didn't have +2/3") + } + lastPrecommits = cs.Votes.Precommits(cs.CommitRound) + } + + // Next desired block height + height := state.LastBlockHeight + 1 + + // RoundState fields + cs.updateHeight(height) + cs.updateRoundStep(0, cstypes.RoundStepNewHeight) + if cs.CommitTime.IsZero() { + // "Now" makes it easier to sync up dev nodes. + // We add timeoutCommit to allow transactions + // to be gathered for the first block. + // And alternative solution that relies on clocks: + // cs.StartTime = state.LastBlockTime.Add(timeoutCommit) + cs.StartTime = cs.config.Commit(time.Now()) + } else { + cs.StartTime = cs.config.Commit(cs.CommitTime) + } + cs.Validators = validators + cs.Proposal = nil + cs.ProposalBlock = nil + cs.ProposalBlockParts = nil + cs.LockedRound = 0 + cs.LockedBlock = nil + cs.LockedBlockParts = nil + cs.ValidRound = 0 + cs.ValidBlock = nil + cs.ValidBlockParts = nil + cs.Votes = cstypes.NewHeightVoteSet(state.ChainID, height, validators) + cs.CommitRound = -1 + cs.LastCommit = lastPrecommits + cs.LastValidators = state.LastValidators + + cs.state = state + + // Finally, broadcast RoundState + cs.newStep() +} + +func (cs *ConsensusState) newStep() { + rs := cs.RoundStateEvent() + cs.wal.Write(rs) + cs.nSteps++ + // newStep is called by updateToStep in NewConsensusState before the eventBus is set! + if cs.eventBus != nil { + cs.eventBus.PublishEventNewRoundStep(rs) + cs.evsw.FireEvent(types.EventNewRoundStep, &cs.RoundState) + } +} + +//----------------------------------------- +// the main go routines + +// receiveRoutine handles messages which may cause state transitions. +// it's argument (n) is the number of messages to process before exiting - use 0 to run forever +// It keeps the RoundState and is the only thing that updates it. +// Updates (state transitions) happen on timeouts, complete proposals, and 2/3 majorities. +// ConsensusState must be locked before any internal state is updated. +func (cs *ConsensusState) receiveRoutine(maxSteps int) { + defer func() { + if r := recover(); r != nil { + cs.Logger.Error("CONSENSUS FAILURE!!!", "err", r, "stack", string(debug.Stack())) + } + }() + + for { + if maxSteps > 0 { + if cs.nSteps >= maxSteps { + cs.Logger.Info("reached max steps. exiting receive routine") + cs.nSteps = 0 + return + } + } + rs := cs.RoundState + var mi msgInfo + + select { + case height := <-cs.mempool.TxsAvailable(): + cs.handleTxsAvailable(height) + case mi = <-cs.peerMsgQueue: + cs.wal.Write(mi) + // handles proposals, block parts, votes + // may generate internal events (votes, complete proposals, 2/3 majorities) + cs.handleMsg(mi) + case mi = <-cs.internalMsgQueue: + cs.wal.WriteSync(mi) // NOTE: fsync + // handles proposals, block parts, votes + cs.handleMsg(mi) + case ti := <-cs.timeoutTicker.Chan(): // tockChan: + cs.wal.Write(ti) + // if the timeout is relevant to the rs + // go to the next step + cs.handleTimeout(ti, rs) + case <-cs.Quit(): + + // NOTE: the internalMsgQueue may have signed messages from our + // priv_val that haven't hit the WAL, but its ok because + // priv_val tracks LastSig + + // close wal now that we're done writing to it + cs.wal.Stop() + + close(cs.done) + return + } + } +} + +// state transitions on complete-proposal, 2/3-any, 2/3-one +func (cs *ConsensusState) handleMsg(mi msgInfo) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + + var err error + msg, peerID := mi.Msg, mi.PeerID + switch msg := msg.(type) { + case *ProposalMessage: + // will not cause transition. + // once proposal is set, we can receive block parts + err = cs.setProposal(msg.Proposal) + case *BlockPartMessage: + // if the proposal is complete, we'll enterPrevote or tryFinalizeCommit + _, err = cs.addProposalBlockPart(msg.Height, msg.Part) + if err != nil && msg.Round != cs.Round { + cs.Logger.Debug("Received block part from wrong round", "height", cs.Height, "csRound", cs.Round, "blockRound", msg.Round) + err = nil + } + case *VoteMessage: + // attempt to add the vote and dupeout the validator if its a duplicate signature + // if the vote gives us a 2/3-any or 2/3-one, we transition + err := cs.tryAddVote(msg.Vote, peerID) + if err == ErrAddingVote { + // TODO: punish peer + // We probably don't want to stop the peer here. The vote does not + // necessarily comes from a malicious peer but can be just broadcasted by + // a typical peer. + // https://github.com/tendermint/tendermint/issues/1281 + } + + // NOTE: the vote is broadcast to peers by the reactor listening + // for vote events + + // TODO: If rs.Height == vote.Height && rs.Round < vote.Round, + // the peer is sending us CatchupCommit precommits. + // We could make note of this and help filter in broadcastHasVoteMessage(). + default: + cs.Logger.Error("Unknown msg type", reflect.TypeOf(msg)) + } + if err != nil { + cs.Logger.Error("Error with msg", "height", cs.Height, "round", cs.Round, "type", reflect.TypeOf(msg), "peer", peerID, "err", err, "msg", msg) + } +} + +func (cs *ConsensusState) handleTimeout(ti timeoutInfo, rs cstypes.RoundState) { + cs.Logger.Debug("Received tock", "timeout", ti.Duration, "height", ti.Height, "round", ti.Round, "step", ti.Step) + + // timeouts must be for current height, round, step + if ti.Height != rs.Height || ti.Round < rs.Round || (ti.Round == rs.Round && ti.Step < rs.Step) { + cs.Logger.Debug("Ignoring tock because we're ahead", "height", rs.Height, "round", rs.Round, "step", rs.Step) + return + } + + // the timeout will now cause a state transition + cs.mtx.Lock() + defer cs.mtx.Unlock() + + switch ti.Step { + case cstypes.RoundStepNewHeight: + // NewRound event fired from enterNewRound. + // XXX: should we fire timeout here (for timeout commit)? + cs.enterNewRound(ti.Height, 0) + case cstypes.RoundStepNewRound: + cs.enterPropose(ti.Height, 0) + case cstypes.RoundStepPropose: + cs.eventBus.PublishEventTimeoutPropose(cs.RoundStateEvent()) + cs.enterPrevote(ti.Height, ti.Round) + case cstypes.RoundStepPrevoteWait: + cs.eventBus.PublishEventTimeoutWait(cs.RoundStateEvent()) + cs.enterPrecommit(ti.Height, ti.Round) + case cstypes.RoundStepPrecommitWait: + cs.eventBus.PublishEventTimeoutWait(cs.RoundStateEvent()) + cs.enterNewRound(ti.Height, ti.Round+1) + default: + panic(cmn.Fmt("Invalid timeout step: %v", ti.Step)) + } + +} + +func (cs *ConsensusState) handleTxsAvailable(height int64) { + cs.mtx.Lock() + defer cs.mtx.Unlock() + // we only need to do this for round 0 + cs.enterPropose(height, 0) +} + +//----------------------------------------------------------------------------- +// State functions +// Used internally by handleTimeout and handleMsg to make state transitions + +// Enter: `timeoutNewHeight` by startTime (commitTime+timeoutCommit), +// or, if SkipTimeout==true, after receiving all precommits from (height,round-1) +// Enter: `timeoutPrecommits` after any +2/3 precommits from (height,round-1) +// Enter: +2/3 precommits for nil at (height,round-1) +// Enter: +2/3 prevotes any or +2/3 precommits for block or any from (height, round) +// NOTE: cs.StartTime was already set for height. +func (cs *ConsensusState) enterNewRound(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + + if cs.Height != height || round < cs.Round || (cs.Round == round && cs.Step != cstypes.RoundStepNewHeight) { + logger.Debug(cmn.Fmt("enterNewRound(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + + if now := time.Now(); cs.StartTime.After(now) { + logger.Info("Need to set a buffer and log message here for sanity.", "startTime", cs.StartTime, "now", now) + } + + logger.Info(cmn.Fmt("enterNewRound(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + // Increment validators if necessary + validators := cs.Validators + if cs.Round < round { + validators = validators.Copy() + validators.IncrementAccum(round - cs.Round) + } + + // Setup new round + // we don't fire newStep for this step, + // but we fire an event, so update the round step first + cs.updateRoundStep(round, cstypes.RoundStepNewRound) + cs.Validators = validators + if round == 0 { + // We've already reset these upon new height, + // and meanwhile we might have received a proposal + // for round 0. + } else { + logger.Info("Resetting Proposal info") + cs.Proposal = nil + cs.ProposalBlock = nil + cs.ProposalBlockParts = nil + } + cs.Votes.SetRound(round + 1) // also track next round (round+1) to allow round-skipping + + cs.eventBus.PublishEventNewRound(cs.RoundStateEvent()) + cs.metrics.Rounds.Set(float64(round)) + + // Wait for txs to be available in the mempool + // before we enterPropose in round 0. If the last block changed the app hash, + // we may need an empty "proof" block, and enterPropose immediately. + waitForTxs := cs.config.WaitForTxs() && round == 0 && !cs.needProofBlock(height) + if waitForTxs { + if cs.config.CreateEmptyBlocksInterval > 0 { + cs.scheduleTimeout(cs.config.EmptyBlocksInterval(), height, round, cstypes.RoundStepNewRound) + } + go cs.proposalHeartbeat(height, round) + } else { + cs.enterPropose(height, round) + } +} + +// needProofBlock returns true on the first height (so the genesis app hash is signed right away) +// and where the last block (height-1) caused the app hash to change +func (cs *ConsensusState) needProofBlock(height int64) bool { + if height == 1 { + return true + } + + lastBlockMeta := cs.blockStore.LoadBlockMeta(height - 1) + return !bytes.Equal(cs.state.AppHash, lastBlockMeta.Header.AppHash) +} + +func (cs *ConsensusState) proposalHeartbeat(height int64, round int) { + counter := 0 + addr := cs.privValidator.GetAddress() + valIndex, _ := cs.Validators.GetByAddress(addr) + chainID := cs.state.ChainID + for { + rs := cs.GetRoundState() + // if we've already moved on, no need to send more heartbeats + if rs.Step > cstypes.RoundStepNewRound || rs.Round > round || rs.Height > height { + return + } + heartbeat := &types.Heartbeat{ + Height: rs.Height, + Round: rs.Round, + Sequence: counter, + ValidatorAddress: addr, + ValidatorIndex: valIndex, + } + cs.privValidator.SignHeartbeat(chainID, heartbeat) + cs.eventBus.PublishEventProposalHeartbeat(types.EventDataProposalHeartbeat{heartbeat}) + cs.evsw.FireEvent(types.EventProposalHeartbeat, heartbeat) + counter++ + time.Sleep(proposalHeartbeatIntervalSeconds * time.Second) + } +} + +// Enter (CreateEmptyBlocks): from enterNewRound(height,round) +// Enter (CreateEmptyBlocks, CreateEmptyBlocksInterval > 0 ): after enterNewRound(height,round), after timeout of CreateEmptyBlocksInterval +// Enter (!CreateEmptyBlocks) : after enterNewRound(height,round), once txs are in the mempool +func (cs *ConsensusState) enterPropose(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + + if cs.Height != height || round < cs.Round || (cs.Round == round && cstypes.RoundStepPropose <= cs.Step) { + logger.Debug(cmn.Fmt("enterPropose(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + logger.Info(cmn.Fmt("enterPropose(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + defer func() { + // Done enterPropose: + cs.updateRoundStep(round, cstypes.RoundStepPropose) + cs.newStep() + + // If we have the whole proposal + POL, then goto Prevote now. + // else, we'll enterPrevote when the rest of the proposal is received (in AddProposalBlockPart), + // or else after timeoutPropose + if cs.isProposalComplete() { + cs.enterPrevote(height, cs.Round) + } + }() + + // If we don't get the proposal and all block parts quick enough, enterPrevote + cs.scheduleTimeout(cs.config.Propose(round), height, round, cstypes.RoundStepPropose) + + // Nothing more to do if we're not a validator + if cs.privValidator == nil { + logger.Debug("This node is not a validator") + return + } + + // if not a validator, we're done + if !cs.Validators.HasAddress(cs.privValidator.GetAddress()) { + logger.Debug("This node is not a validator", "addr", cs.privValidator.GetAddress(), "vals", cs.Validators) + return + } + logger.Debug("This node is a validator") + + if cs.isProposer() { + logger.Info("enterPropose: Our turn to propose", "proposer", cs.Validators.GetProposer().Address, "privValidator", cs.privValidator) + cs.decideProposal(height, round) + } else { + logger.Info("enterPropose: Not our turn to propose", "proposer", cs.Validators.GetProposer().Address, "privValidator", cs.privValidator) + } +} + +func (cs *ConsensusState) isProposer() bool { + return bytes.Equal(cs.Validators.GetProposer().Address, cs.privValidator.GetAddress()) +} + +func (cs *ConsensusState) defaultDecideProposal(height int64, round int) { + var block *types.Block + var blockParts *types.PartSet + + // Decide on block + if cs.LockedBlock != nil { + // If we're locked onto a block, just choose that. + block, blockParts = cs.LockedBlock, cs.LockedBlockParts + } else if cs.ValidBlock != nil { + // If there is valid block, choose that. + block, blockParts = cs.ValidBlock, cs.ValidBlockParts + } else { + // Create a new proposal block from state/txs from the mempool. + block, blockParts = cs.createProposalBlock() + if block == nil { // on error + return + } + } + + // Make proposal + polRound, polBlockID := cs.Votes.POLInfo() + proposal := types.NewProposal(height, round, blockParts.Header(), polRound, polBlockID) + if err := cs.privValidator.SignProposal(cs.state.ChainID, proposal); err == nil { + // Set fields + /* fields set by setProposal and addBlockPart + cs.Proposal = proposal + cs.ProposalBlock = block + cs.ProposalBlockParts = blockParts + */ + + // send proposal and block parts on internal msg queue + cs.sendInternalMessage(msgInfo{&ProposalMessage{proposal}, ""}) + for i := 0; i < blockParts.Total(); i++ { + part := blockParts.GetPart(i) + cs.sendInternalMessage(msgInfo{&BlockPartMessage{cs.Height, cs.Round, part}, ""}) + } + cs.Logger.Info("Signed proposal", "height", height, "round", round, "proposal", proposal) + cs.Logger.Debug(cmn.Fmt("Signed proposal block: %v", block)) + } else { + if !cs.replayMode { + cs.Logger.Error("enterPropose: Error signing proposal", "height", height, "round", round, "err", err) + } + } +} + +// Returns true if the proposal block is complete && +// (if POLRound was proposed, we have +2/3 prevotes from there). +func (cs *ConsensusState) isProposalComplete() bool { + if cs.Proposal == nil || cs.ProposalBlock == nil { + return false + } + // we have the proposal. if there's a POLRound, + // make sure we have the prevotes from it too + if cs.Proposal.POLRound < 0 { + return true + } + // if this is false the proposer is lying or we haven't received the POL yet + return cs.Votes.Prevotes(cs.Proposal.POLRound).HasTwoThirdsMajority() + +} + +// Create the next block to propose and return it. +// Returns nil block upon error. +// NOTE: keep it side-effect free for clarity. +func (cs *ConsensusState) createProposalBlock() (block *types.Block, blockParts *types.PartSet) { + var commit *types.Commit + if cs.Height == 1 { + // We're creating a proposal for the first block. + // The commit is empty, but not nil. + commit = &types.Commit{} + } else if cs.LastCommit.HasTwoThirdsMajority() { + // Make the commit from LastCommit + commit = cs.LastCommit.MakeCommit() + } else { + // This shouldn't happen. + cs.Logger.Error("enterPropose: Cannot propose anything: No commit for the previous block.") + return + } + + // Mempool validated transactions + txs := cs.mempool.Reap(cs.config.MaxBlockSizeTxs) + block, parts := cs.state.MakeBlock(cs.Height, txs, commit) + evidence := cs.evpool.PendingEvidence() + block.AddEvidence(evidence) + return block, parts +} + +// Enter: `timeoutPropose` after entering Propose. +// Enter: proposal block and POL is ready. +// Enter: any +2/3 prevotes for future round. +// Prevote for LockedBlock if we're locked, or ProposalBlock if valid. +// Otherwise vote nil. +func (cs *ConsensusState) enterPrevote(height int64, round int) { + if cs.Height != height || round < cs.Round || (cs.Round == round && cstypes.RoundStepPrevote <= cs.Step) { + cs.Logger.Debug(cmn.Fmt("enterPrevote(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + + defer func() { + // Done enterPrevote: + cs.updateRoundStep(round, cstypes.RoundStepPrevote) + cs.newStep() + }() + + // fire event for how we got here + if cs.isProposalComplete() { + cs.eventBus.PublishEventCompleteProposal(cs.RoundStateEvent()) + } else { + // we received +2/3 prevotes for a future round + // TODO: catchup event? + } + + cs.Logger.Info(cmn.Fmt("enterPrevote(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + // Sign and broadcast vote as necessary + cs.doPrevote(height, round) + + // Once `addVote` hits any +2/3 prevotes, we will go to PrevoteWait + // (so we have more time to try and collect +2/3 prevotes for a single block) +} + +func (cs *ConsensusState) defaultDoPrevote(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + // If a block is locked, prevote that. + if cs.LockedBlock != nil { + logger.Info("enterPrevote: Block was locked") + cs.signAddVote(types.VoteTypePrevote, cs.LockedBlock.Hash(), cs.LockedBlockParts.Header()) + return + } + + // If ProposalBlock is nil, prevote nil. + if cs.ProposalBlock == nil { + logger.Info("enterPrevote: ProposalBlock is nil") + cs.signAddVote(types.VoteTypePrevote, nil, types.PartSetHeader{}) + return + } + + // Validate proposal block + err := cs.blockExec.ValidateBlock(cs.state, cs.ProposalBlock) + if err != nil { + // ProposalBlock is invalid, prevote nil. + logger.Error("enterPrevote: ProposalBlock is invalid", "err", err) + cs.signAddVote(types.VoteTypePrevote, nil, types.PartSetHeader{}) + return + } + + // Prevote cs.ProposalBlock + // NOTE: the proposal signature is validated when it is received, + // and the proposal block parts are validated as they are received (against the merkle hash in the proposal) + logger.Info("enterPrevote: ProposalBlock is valid") + cs.signAddVote(types.VoteTypePrevote, cs.ProposalBlock.Hash(), cs.ProposalBlockParts.Header()) +} + +// Enter: any +2/3 prevotes at next round. +func (cs *ConsensusState) enterPrevoteWait(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + + if cs.Height != height || round < cs.Round || (cs.Round == round && cstypes.RoundStepPrevoteWait <= cs.Step) { + logger.Debug(cmn.Fmt("enterPrevoteWait(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + if !cs.Votes.Prevotes(round).HasTwoThirdsAny() { + cmn.PanicSanity(cmn.Fmt("enterPrevoteWait(%v/%v), but Prevotes does not have any +2/3 votes", height, round)) + } + logger.Info(cmn.Fmt("enterPrevoteWait(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + defer func() { + // Done enterPrevoteWait: + cs.updateRoundStep(round, cstypes.RoundStepPrevoteWait) + cs.newStep() + }() + + // Wait for some more prevotes; enterPrecommit + cs.scheduleTimeout(cs.config.Prevote(round), height, round, cstypes.RoundStepPrevoteWait) +} + +// Enter: `timeoutPrevote` after any +2/3 prevotes. +// Enter: +2/3 precomits for block or nil. +// Enter: any +2/3 precommits for next round. +// Lock & precommit the ProposalBlock if we have enough prevotes for it (a POL in this round) +// else, unlock an existing lock and precommit nil if +2/3 of prevotes were nil, +// else, precommit nil otherwise. +func (cs *ConsensusState) enterPrecommit(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + + if cs.Height != height || round < cs.Round || (cs.Round == round && cstypes.RoundStepPrecommit <= cs.Step) { + logger.Debug(cmn.Fmt("enterPrecommit(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + + logger.Info(cmn.Fmt("enterPrecommit(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + defer func() { + // Done enterPrecommit: + cs.updateRoundStep(round, cstypes.RoundStepPrecommit) + cs.newStep() + }() + + // check for a polka + blockID, ok := cs.Votes.Prevotes(round).TwoThirdsMajority() + + // If we don't have a polka, we must precommit nil. + if !ok { + if cs.LockedBlock != nil { + logger.Info("enterPrecommit: No +2/3 prevotes during enterPrecommit while we're locked. Precommitting nil") + } else { + logger.Info("enterPrecommit: No +2/3 prevotes during enterPrecommit. Precommitting nil.") + } + cs.signAddVote(types.VoteTypePrecommit, nil, types.PartSetHeader{}) + return + } + + // At this point +2/3 prevoted for a particular block or nil. + cs.eventBus.PublishEventPolka(cs.RoundStateEvent()) + + // the latest POLRound should be this round. + polRound, _ := cs.Votes.POLInfo() + if polRound < round { + cmn.PanicSanity(cmn.Fmt("This POLRound should be %v but got %", round, polRound)) + } + + // +2/3 prevoted nil. Unlock and precommit nil. + if len(blockID.Hash) == 0 { + if cs.LockedBlock == nil { + logger.Info("enterPrecommit: +2/3 prevoted for nil.") + } else { + logger.Info("enterPrecommit: +2/3 prevoted for nil. Unlocking") + cs.LockedRound = 0 + cs.LockedBlock = nil + cs.LockedBlockParts = nil + cs.eventBus.PublishEventUnlock(cs.RoundStateEvent()) + } + cs.signAddVote(types.VoteTypePrecommit, nil, types.PartSetHeader{}) + return + } + + // At this point, +2/3 prevoted for a particular block. + + // If we're already locked on that block, precommit it, and update the LockedRound + if cs.LockedBlock.HashesTo(blockID.Hash) { + logger.Info("enterPrecommit: +2/3 prevoted locked block. Relocking") + cs.LockedRound = round + cs.eventBus.PublishEventRelock(cs.RoundStateEvent()) + cs.signAddVote(types.VoteTypePrecommit, blockID.Hash, blockID.PartsHeader) + return + } + + // If +2/3 prevoted for proposal block, stage and precommit it + if cs.ProposalBlock.HashesTo(blockID.Hash) { + logger.Info("enterPrecommit: +2/3 prevoted proposal block. Locking", "hash", blockID.Hash) + // Validate the block. + if err := cs.blockExec.ValidateBlock(cs.state, cs.ProposalBlock); err != nil { + cmn.PanicConsensus(cmn.Fmt("enterPrecommit: +2/3 prevoted for an invalid block: %v", err)) + } + cs.LockedRound = round + cs.LockedBlock = cs.ProposalBlock + cs.LockedBlockParts = cs.ProposalBlockParts + cs.eventBus.PublishEventLock(cs.RoundStateEvent()) + cs.signAddVote(types.VoteTypePrecommit, blockID.Hash, blockID.PartsHeader) + return + } + + // There was a polka in this round for a block we don't have. + // Fetch that block, unlock, and precommit nil. + // The +2/3 prevotes for this round is the POL for our unlock. + // TODO: In the future save the POL prevotes for justification. + cs.LockedRound = 0 + cs.LockedBlock = nil + cs.LockedBlockParts = nil + if !cs.ProposalBlockParts.HasHeader(blockID.PartsHeader) { + cs.ProposalBlock = nil + cs.ProposalBlockParts = types.NewPartSetFromHeader(blockID.PartsHeader) + } + cs.eventBus.PublishEventUnlock(cs.RoundStateEvent()) + cs.signAddVote(types.VoteTypePrecommit, nil, types.PartSetHeader{}) +} + +// Enter: any +2/3 precommits for next round. +func (cs *ConsensusState) enterPrecommitWait(height int64, round int) { + logger := cs.Logger.With("height", height, "round", round) + + if cs.Height != height || round < cs.Round || (cs.Round == round && cstypes.RoundStepPrecommitWait <= cs.Step) { + logger.Debug(cmn.Fmt("enterPrecommitWait(%v/%v): Invalid args. Current step: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + return + } + if !cs.Votes.Precommits(round).HasTwoThirdsAny() { + cmn.PanicSanity(cmn.Fmt("enterPrecommitWait(%v/%v), but Precommits does not have any +2/3 votes", height, round)) + } + logger.Info(cmn.Fmt("enterPrecommitWait(%v/%v). Current: %v/%v/%v", height, round, cs.Height, cs.Round, cs.Step)) + + defer func() { + // Done enterPrecommitWait: + cs.updateRoundStep(round, cstypes.RoundStepPrecommitWait) + cs.newStep() + }() + + // Wait for some more precommits; enterNewRound + cs.scheduleTimeout(cs.config.Precommit(round), height, round, cstypes.RoundStepPrecommitWait) + +} + +// Enter: +2/3 precommits for block +func (cs *ConsensusState) enterCommit(height int64, commitRound int) { + logger := cs.Logger.With("height", height, "commitRound", commitRound) + + if cs.Height != height || cstypes.RoundStepCommit <= cs.Step { + logger.Debug(cmn.Fmt("enterCommit(%v/%v): Invalid args. Current step: %v/%v/%v", height, commitRound, cs.Height, cs.Round, cs.Step)) + return + } + logger.Info(cmn.Fmt("enterCommit(%v/%v). Current: %v/%v/%v", height, commitRound, cs.Height, cs.Round, cs.Step)) + + defer func() { + // Done enterCommit: + // keep cs.Round the same, commitRound points to the right Precommits set. + cs.updateRoundStep(cs.Round, cstypes.RoundStepCommit) + cs.CommitRound = commitRound + cs.CommitTime = time.Now() + cs.newStep() + + // Maybe finalize immediately. + cs.tryFinalizeCommit(height) + }() + + blockID, ok := cs.Votes.Precommits(commitRound).TwoThirdsMajority() + if !ok { + cmn.PanicSanity("RunActionCommit() expects +2/3 precommits") + } + + // The Locked* fields no longer matter. + // Move them over to ProposalBlock if they match the commit hash, + // otherwise they'll be cleared in updateToState. + if cs.LockedBlock.HashesTo(blockID.Hash) { + logger.Info("Commit is for locked block. Set ProposalBlock=LockedBlock", "blockHash", blockID.Hash) + cs.ProposalBlock = cs.LockedBlock + cs.ProposalBlockParts = cs.LockedBlockParts + } + + // If we don't have the block being committed, set up to get it. + if !cs.ProposalBlock.HashesTo(blockID.Hash) { + if !cs.ProposalBlockParts.HasHeader(blockID.PartsHeader) { + logger.Info("Commit is for a block we don't know about. Set ProposalBlock=nil", "proposal", cs.ProposalBlock.Hash(), "commit", blockID.Hash) + // We're getting the wrong block. + // Set up ProposalBlockParts and keep waiting. + cs.ProposalBlock = nil + cs.ProposalBlockParts = types.NewPartSetFromHeader(blockID.PartsHeader) + } else { + // We just need to keep waiting. + } + } +} + +// If we have the block AND +2/3 commits for it, finalize. +func (cs *ConsensusState) tryFinalizeCommit(height int64) { + logger := cs.Logger.With("height", height) + + if cs.Height != height { + cmn.PanicSanity(cmn.Fmt("tryFinalizeCommit() cs.Height: %v vs height: %v", cs.Height, height)) + } + + blockID, ok := cs.Votes.Precommits(cs.CommitRound).TwoThirdsMajority() + if !ok || len(blockID.Hash) == 0 { + logger.Error("Attempt to finalize failed. There was no +2/3 majority, or +2/3 was for .") + return + } + if !cs.ProposalBlock.HashesTo(blockID.Hash) { + // TODO: this happens every time if we're not a validator (ugly logs) + // TODO: ^^ wait, why does it matter that we're a validator? + logger.Info("Attempt to finalize failed. We don't have the commit block.", "proposal-block", cs.ProposalBlock.Hash(), "commit-block", blockID.Hash) + return + } + + // go + cs.finalizeCommit(height) +} + +// Increment height and goto cstypes.RoundStepNewHeight +func (cs *ConsensusState) finalizeCommit(height int64) { + if cs.Height != height || cs.Step != cstypes.RoundStepCommit { + cs.Logger.Debug(cmn.Fmt("finalizeCommit(%v): Invalid args. Current step: %v/%v/%v", height, cs.Height, cs.Round, cs.Step)) + return + } + + blockID, ok := cs.Votes.Precommits(cs.CommitRound).TwoThirdsMajority() + block, blockParts := cs.ProposalBlock, cs.ProposalBlockParts + + if !ok { + cmn.PanicSanity(cmn.Fmt("Cannot finalizeCommit, commit does not have two thirds majority")) + } + if !blockParts.HasHeader(blockID.PartsHeader) { + cmn.PanicSanity(cmn.Fmt("Expected ProposalBlockParts header to be commit header")) + } + if !block.HashesTo(blockID.Hash) { + cmn.PanicSanity(cmn.Fmt("Cannot finalizeCommit, ProposalBlock does not hash to commit hash")) + } + if err := cs.blockExec.ValidateBlock(cs.state, block); err != nil { + cmn.PanicConsensus(cmn.Fmt("+2/3 committed an invalid block: %v", err)) + } + + cs.Logger.Info(cmn.Fmt("Finalizing commit of block with %d txs", block.NumTxs), + "height", block.Height, "hash", block.Hash(), "root", block.AppHash) + cs.Logger.Info(cmn.Fmt("%v", block)) + + fail.Fail() // XXX + + // Save to blockStore. + if cs.blockStore.Height() < block.Height { + // NOTE: the seenCommit is local justification to commit this block, + // but may differ from the LastCommit included in the next block + precommits := cs.Votes.Precommits(cs.CommitRound) + seenCommit := precommits.MakeCommit() + cs.blockStore.SaveBlock(block, blockParts, seenCommit) + } else { + // Happens during replay if we already saved the block but didn't commit + cs.Logger.Info("Calling finalizeCommit on already stored block", "height", block.Height) + } + + fail.Fail() // XXX + + // Write EndHeightMessage{} for this height, implying that the blockstore + // has saved the block. + // + // If we crash before writing this EndHeightMessage{}, we will recover by + // running ApplyBlock during the ABCI handshake when we restart. If we + // didn't save the block to the blockstore before writing + // EndHeightMessage{}, we'd have to change WAL replay -- currently it + // complains about replaying for heights where an #ENDHEIGHT entry already + // exists. + // + // Either way, the ConsensusState should not be resumed until we + // successfully call ApplyBlock (ie. later here, or in Handshake after + // restart). + cs.wal.WriteSync(EndHeightMessage{height}) // NOTE: fsync + + fail.Fail() // XXX + + // Create a copy of the state for staging and an event cache for txs. + stateCopy := cs.state.Copy() + + // Execute and commit the block, update and save the state, and update the mempool. + // NOTE The block.AppHash wont reflect these txs until the next block. + var err error + stateCopy, err = cs.blockExec.ApplyBlock(stateCopy, types.BlockID{block.Hash(), blockParts.Header()}, block) + if err != nil { + cs.Logger.Error("Error on ApplyBlock. Did the application crash? Please restart tendermint", "err", err) + err := cmn.Kill() + if err != nil { + cs.Logger.Error("Failed to kill this process - please do so manually", "err", err) + } + return + } + + fail.Fail() // XXX + + // must be called before we update state + cs.recordMetrics(height, block) + + // NewHeightStep! + cs.updateToState(stateCopy) + + fail.Fail() // XXX + + // cs.StartTime is already set. + // Schedule Round0 to start soon. + cs.scheduleRound0(&cs.RoundState) + + // By here, + // * cs.Height has been increment to height+1 + // * cs.Step is now cstypes.RoundStepNewHeight + // * cs.StartTime is set to when we will start round0. +} + +func (cs *ConsensusState) recordMetrics(height int64, block *types.Block) { + cs.metrics.Validators.Set(float64(cs.Validators.Size())) + cs.metrics.ValidatorsPower.Set(float64(cs.Validators.TotalVotingPower())) + missingValidators := 0 + missingValidatorsPower := int64(0) + for i, val := range cs.Validators.Validators { + var vote *types.Vote + if i < len(block.LastCommit.Precommits) { + vote = block.LastCommit.Precommits[i] + } + if vote == nil { + missingValidators++ + missingValidatorsPower += val.VotingPower + } + } + cs.metrics.MissingValidators.Set(float64(missingValidators)) + cs.metrics.MissingValidatorsPower.Set(float64(missingValidatorsPower)) + cs.metrics.ByzantineValidators.Set(float64(len(block.Evidence.Evidence))) + byzantineValidatorsPower := int64(0) + for _, ev := range block.Evidence.Evidence { + if _, val := cs.Validators.GetByAddress(ev.Address()); val != nil { + byzantineValidatorsPower += val.VotingPower + } + } + cs.metrics.ByzantineValidatorsPower.Set(float64(byzantineValidatorsPower)) + + if height > 1 { + lastBlockMeta := cs.blockStore.LoadBlockMeta(height - 1) + cs.metrics.BlockIntervalSeconds.Observe( + block.Time.Sub(lastBlockMeta.Header.Time).Seconds(), + ) + } + + cs.metrics.NumTxs.Set(float64(block.NumTxs)) + cs.metrics.BlockSizeBytes.Set(float64(block.Size())) + cs.metrics.TotalTxs.Set(float64(block.TotalTxs)) +} + +//----------------------------------------------------------------------------- + +func (cs *ConsensusState) defaultSetProposal(proposal *types.Proposal) error { + // Already have one + // TODO: possibly catch double proposals + if cs.Proposal != nil { + return nil + } + + // Does not apply + if proposal.Height != cs.Height || proposal.Round != cs.Round { + return nil + } + + // We don't care about the proposal if we're already in cstypes.RoundStepCommit. + if cstypes.RoundStepCommit <= cs.Step { + return nil + } + + // Verify POLRound, which must be -1 or between 0 and proposal.Round exclusive. + if proposal.POLRound != -1 && + (proposal.POLRound < 0 || proposal.Round <= proposal.POLRound) { + return ErrInvalidProposalPOLRound + } + + // Verify signature + if !cs.Validators.GetProposer().PubKey.VerifyBytes(proposal.SignBytes(cs.state.ChainID), proposal.Signature) { + return ErrInvalidProposalSignature + } + + cs.Proposal = proposal + cs.ProposalBlockParts = types.NewPartSetFromHeader(proposal.BlockPartsHeader) + cs.Logger.Info("Received proposal", "proposal", proposal) + return nil +} + +// NOTE: block is not necessarily valid. +// Asynchronously triggers either enterPrevote (before we timeout of propose) or tryFinalizeCommit, once we have the full block. +func (cs *ConsensusState) addProposalBlockPart(height int64, part *types.Part) (added bool, err error) { + // Blocks might be reused, so round mismatch is OK + if cs.Height != height { + cs.Logger.Debug("Received block part from wrong height", "height", height) + return false, nil + } + + // We're not expecting a block part. + if cs.ProposalBlockParts == nil { + cs.Logger.Info("Received a block part when we're not expecting any", "height", height) + return false, nil // TODO: bad peer? Return error? + } + + added, err = cs.ProposalBlockParts.AddPart(part) + if err != nil { + return added, err + } + if added && cs.ProposalBlockParts.IsComplete() { + // Added and completed! + _, err = cdc.UnmarshalBinaryReader(cs.ProposalBlockParts.GetReader(), &cs.ProposalBlock, int64(cs.state.ConsensusParams.BlockSize.MaxBytes)) + if err != nil { + return true, err + } + // NOTE: it's possible to receive complete proposal blocks for future rounds without having the proposal + cs.Logger.Info("Received complete proposal block", "height", cs.ProposalBlock.Height, "hash", cs.ProposalBlock.Hash()) + + // Update Valid* if we can. + prevotes := cs.Votes.Prevotes(cs.Round) + blockID, hasTwoThirds := prevotes.TwoThirdsMajority() + if hasTwoThirds && !blockID.IsZero() && (cs.ValidRound < cs.Round) { + if cs.ProposalBlock.HashesTo(blockID.Hash) { + cs.Logger.Info("Updating valid block to new proposal block", + "valid-round", cs.Round, "valid-block-hash", cs.ProposalBlock.Hash()) + cs.ValidRound = cs.Round + cs.ValidBlock = cs.ProposalBlock + cs.ValidBlockParts = cs.ProposalBlockParts + } + // TODO: In case there is +2/3 majority in Prevotes set for some + // block and cs.ProposalBlock contains different block, either + // proposer is faulty or voting power of faulty processes is more + // than 1/3. We should trigger in the future accountability + // procedure at this point. + } + + if cs.Step == cstypes.RoundStepPropose && cs.isProposalComplete() { + // Move onto the next step + cs.enterPrevote(height, cs.Round) + } else if cs.Step == cstypes.RoundStepCommit { + // If we're waiting on the proposal block... + cs.tryFinalizeCommit(height) + } + return true, nil + } + return added, nil +} + +// Attempt to add the vote. if its a duplicate signature, dupeout the validator +func (cs *ConsensusState) tryAddVote(vote *types.Vote, peerID p2p.ID) error { + _, err := cs.addVote(vote, peerID) + if err != nil { + // If the vote height is off, we'll just ignore it, + // But if it's a conflicting sig, add it to the cs.evpool. + // If it's otherwise invalid, punish peer. + if err == ErrVoteHeightMismatch { + return err + } else if voteErr, ok := err.(*types.ErrVoteConflictingVotes); ok { + if bytes.Equal(vote.ValidatorAddress, cs.privValidator.GetAddress()) { + cs.Logger.Error("Found conflicting vote from ourselves. Did you unsafe_reset a validator?", "height", vote.Height, "round", vote.Round, "type", vote.Type) + return err + } + cs.evpool.AddEvidence(voteErr.DuplicateVoteEvidence) + return err + } else { + // Probably an invalid signature / Bad peer. + // Seems this can also err sometimes with "Unexpected step" - perhaps not from a bad peer ? + cs.Logger.Error("Error attempting to add vote", "err", err) + return ErrAddingVote + } + } + return nil +} + +//----------------------------------------------------------------------------- + +func (cs *ConsensusState) addVote(vote *types.Vote, peerID p2p.ID) (added bool, err error) { + cs.Logger.Debug("addVote", "voteHeight", vote.Height, "voteType", vote.Type, "valIndex", vote.ValidatorIndex, "csHeight", cs.Height) + + // A precommit for the previous height? + // These come in while we wait timeoutCommit + if vote.Height+1 == cs.Height { + if !(cs.Step == cstypes.RoundStepNewHeight && vote.Type == types.VoteTypePrecommit) { + // TODO: give the reason .. + // fmt.Errorf("tryAddVote: Wrong height, not a LastCommit straggler commit.") + return added, ErrVoteHeightMismatch + } + added, err = cs.LastCommit.AddVote(vote) + if !added { + return added, err + } + + cs.Logger.Info(cmn.Fmt("Added to lastPrecommits: %v", cs.LastCommit.StringShort())) + cs.eventBus.PublishEventVote(types.EventDataVote{vote}) + cs.evsw.FireEvent(types.EventVote, vote) + + // if we can skip timeoutCommit and have all the votes now, + if cs.config.SkipTimeoutCommit && cs.LastCommit.HasAll() { + // go straight to new round (skip timeout commit) + // cs.scheduleTimeout(time.Duration(0), cs.Height, 0, cstypes.RoundStepNewHeight) + cs.enterNewRound(cs.Height, 0) + } + + return + } + + // Height mismatch is ignored. + // Not necessarily a bad peer, but not favourable behaviour. + if vote.Height != cs.Height { + err = ErrVoteHeightMismatch + cs.Logger.Info("Vote ignored and not added", "voteHeight", vote.Height, "csHeight", cs.Height, "err", err) + return + } + + height := cs.Height + added, err = cs.Votes.AddVote(vote, peerID) + if !added { + // Either duplicate, or error upon cs.Votes.AddByIndex() + return + } + + cs.eventBus.PublishEventVote(types.EventDataVote{vote}) + cs.evsw.FireEvent(types.EventVote, vote) + + switch vote.Type { + case types.VoteTypePrevote: + prevotes := cs.Votes.Prevotes(vote.Round) + cs.Logger.Info("Added to prevote", "vote", vote, "prevotes", prevotes.StringShort()) + + // If +2/3 prevotes for a block or nil for *any* round: + if blockID, ok := prevotes.TwoThirdsMajority(); ok { + + // There was a polka! + // If we're locked but this is a recent polka, unlock. + // If it matches our ProposalBlock, update the ValidBlock + + // Unlock if `cs.LockedRound < vote.Round <= cs.Round` + // NOTE: If vote.Round > cs.Round, we'll deal with it when we get to vote.Round + if (cs.LockedBlock != nil) && + (cs.LockedRound < vote.Round) && + (vote.Round <= cs.Round) && + !cs.LockedBlock.HashesTo(blockID.Hash) { + + cs.Logger.Info("Unlocking because of POL.", "lockedRound", cs.LockedRound, "POLRound", vote.Round) + cs.LockedRound = 0 + cs.LockedBlock = nil + cs.LockedBlockParts = nil + cs.eventBus.PublishEventUnlock(cs.RoundStateEvent()) + } + + // Update Valid* if we can. + // NOTE: our proposal block may be nil or not what received a polka.. + // TODO: we may want to still update the ValidBlock and obtain it via gossipping + if !blockID.IsZero() && + (cs.ValidRound < vote.Round) && + (vote.Round <= cs.Round) && + cs.ProposalBlock.HashesTo(blockID.Hash) { + + cs.Logger.Info("Updating ValidBlock because of POL.", "validRound", cs.ValidRound, "POLRound", vote.Round) + cs.ValidRound = vote.Round + cs.ValidBlock = cs.ProposalBlock + cs.ValidBlockParts = cs.ProposalBlockParts + } + } + + // If +2/3 prevotes for *anything* for this or future round: + if cs.Round <= vote.Round && prevotes.HasTwoThirdsAny() { + // Round-skip over to PrevoteWait or goto Precommit. + cs.enterNewRound(height, vote.Round) // if the vote is ahead of us + if prevotes.HasTwoThirdsMajority() { + cs.enterPrecommit(height, vote.Round) + } else { + cs.enterPrevote(height, vote.Round) // if the vote is ahead of us + cs.enterPrevoteWait(height, vote.Round) + } + } else if cs.Proposal != nil && 0 <= cs.Proposal.POLRound && cs.Proposal.POLRound == vote.Round { + // If the proposal is now complete, enter prevote of cs.Round. + if cs.isProposalComplete() { + cs.enterPrevote(height, cs.Round) + } + } + + case types.VoteTypePrecommit: + precommits := cs.Votes.Precommits(vote.Round) + cs.Logger.Info("Added to precommit", "vote", vote, "precommits", precommits.StringShort()) + blockID, ok := precommits.TwoThirdsMajority() + if ok { + if len(blockID.Hash) == 0 { + cs.enterNewRound(height, vote.Round+1) + } else { + cs.enterNewRound(height, vote.Round) + cs.enterPrecommit(height, vote.Round) + cs.enterCommit(height, vote.Round) + + if cs.config.SkipTimeoutCommit && precommits.HasAll() { + // if we have all the votes now, + // go straight to new round (skip timeout commit) + // cs.scheduleTimeout(time.Duration(0), cs.Height, 0, cstypes.RoundStepNewHeight) + cs.enterNewRound(cs.Height, 0) + } + + } + } else if cs.Round <= vote.Round && precommits.HasTwoThirdsAny() { + cs.enterNewRound(height, vote.Round) + cs.enterPrecommit(height, vote.Round) + cs.enterPrecommitWait(height, vote.Round) + } + default: + panic(cmn.Fmt("Unexpected vote type %X", vote.Type)) // go-wire should prevent this. + } + + return +} + +func (cs *ConsensusState) signVote(type_ byte, hash []byte, header types.PartSetHeader) (*types.Vote, error) { + addr := cs.privValidator.GetAddress() + valIndex, _ := cs.Validators.GetByAddress(addr) + vote := &types.Vote{ + ValidatorAddress: addr, + ValidatorIndex: valIndex, + Height: cs.Height, + Round: cs.Round, + Timestamp: time.Now().UTC(), + Type: type_, + BlockID: types.BlockID{hash, header}, + } + err := cs.privValidator.SignVote(cs.state.ChainID, vote) + return vote, err +} + +// sign the vote and publish on internalMsgQueue +func (cs *ConsensusState) signAddVote(type_ byte, hash []byte, header types.PartSetHeader) *types.Vote { + // if we don't have a key or we're not in the validator set, do nothing + if cs.privValidator == nil || !cs.Validators.HasAddress(cs.privValidator.GetAddress()) { + return nil + } + vote, err := cs.signVote(type_, hash, header) + if err == nil { + cs.sendInternalMessage(msgInfo{&VoteMessage{vote}, ""}) + cs.Logger.Info("Signed and pushed vote", "height", cs.Height, "round", cs.Round, "vote", vote, "err", err) + return vote + } + //if !cs.replayMode { + cs.Logger.Error("Error signing vote", "height", cs.Height, "round", cs.Round, "vote", vote, "err", err) + //} + return nil +} + +//--------------------------------------------------------- + +func CompareHRS(h1 int64, r1 int, s1 cstypes.RoundStepType, h2 int64, r2 int, s2 cstypes.RoundStepType) int { + if h1 < h2 { + return -1 + } else if h1 > h2 { + return 1 + } + if r1 < r2 { + return -1 + } else if r1 > r2 { + return 1 + } + if s1 < s2 { + return -1 + } else if s1 > s2 { + return 1 + } + return 0 +} diff --git a/consensus/state_test.go b/consensus/state_test.go new file mode 100644 index 000000000..d0def6309 --- /dev/null +++ b/consensus/state_test.go @@ -0,0 +1,1099 @@ +package consensus + +import ( + "bytes" + "context" + "fmt" + "testing" + "time" + + cstypes "github.com/tendermint/tendermint/consensus/types" + tmpubsub "github.com/tendermint/tendermint/libs/pubsub" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" +) + +func init() { + config = ResetConfig("consensus_state_test") +} + +func ensureProposeTimeout(timeoutPropose int) time.Duration { + return time.Duration(timeoutPropose*2) * time.Millisecond +} + +/* + +ProposeSuite +x * TestProposerSelection0 - round robin ordering, round 0 +x * TestProposerSelection2 - round robin ordering, round 2++ +x * TestEnterProposeNoValidator - timeout into prevote round +x * TestEnterPropose - finish propose without timing out (we have the proposal) +x * TestBadProposal - 2 vals, bad proposal (bad block state hash), should prevote and precommit nil +FullRoundSuite +x * TestFullRound1 - 1 val, full successful round +x * TestFullRoundNil - 1 val, full round of nil +x * TestFullRound2 - 2 vals, both required for full round +LockSuite +x * TestLockNoPOL - 2 vals, 4 rounds. one val locked, precommits nil every round except first. +x * TestLockPOLRelock - 4 vals, one precommits, other 3 polka at next round, so we unlock and precomit the polka +x * TestLockPOLUnlock - 4 vals, one precommits, other 3 polka nil at next round, so we unlock and precomit nil +x * TestLockPOLSafety1 - 4 vals. We shouldn't change lock based on polka at earlier round +x * TestLockPOLSafety2 - 4 vals. After unlocking, we shouldn't relock based on polka at earlier round + * TestNetworkLock - once +1/3 precommits, network should be locked + * TestNetworkLockPOL - once +1/3 precommits, the block with more recent polka is committed +SlashingSuite +x * TestSlashingPrevotes - a validator prevoting twice in a round gets slashed +x * TestSlashingPrecommits - a validator precomitting twice in a round gets slashed +CatchupSuite + * TestCatchup - if we might be behind and we've seen any 2/3 prevotes, round skip to new round, precommit, or prevote +HaltSuite +x * TestHalt1 - if we see +2/3 precommits after timing out into new round, we should still commit + +*/ + +//---------------------------------------------------------------------------------------------------- +// ProposeSuite + +func TestStateProposerSelection0(t *testing.T) { + cs1, vss := randConsensusState(4) + height, round := cs1.Height, cs1.Round + + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + + startTestRound(cs1, height, round) + + // wait for new round so proposer is set + <-newRoundCh + + // lets commit a block and ensure proposer for the next height is correct + prop := cs1.GetRoundState().Validators.GetProposer() + if !bytes.Equal(prop.Address, cs1.privValidator.GetAddress()) { + t.Fatalf("expected proposer to be validator %d. Got %X", 0, prop.Address) + } + + // wait for complete proposal + <-proposalCh + + rs := cs1.GetRoundState() + signAddVotes(cs1, types.VoteTypePrecommit, rs.ProposalBlock.Hash(), rs.ProposalBlockParts.Header(), vss[1:]...) + + // wait for new round so next validator is set + <-newRoundCh + + prop = cs1.GetRoundState().Validators.GetProposer() + if !bytes.Equal(prop.Address, vss[1].GetAddress()) { + panic(cmn.Fmt("expected proposer to be validator %d. Got %X", 1, prop.Address)) + } +} + +// Now let's do it all again, but starting from round 2 instead of 0 +func TestStateProposerSelection2(t *testing.T) { + cs1, vss := randConsensusState(4) // test needs more work for more than 3 validators + + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + + // this time we jump in at round 2 + incrementRound(vss[1:]...) + incrementRound(vss[1:]...) + startTestRound(cs1, cs1.Height, 2) + + <-newRoundCh // wait for the new round + + // everyone just votes nil. we get a new proposer each round + for i := 0; i < len(vss); i++ { + prop := cs1.GetRoundState().Validators.GetProposer() + if !bytes.Equal(prop.Address, vss[(i+2)%len(vss)].GetAddress()) { + panic(cmn.Fmt("expected proposer to be validator %d. Got %X", (i+2)%len(vss), prop.Address)) + } + + rs := cs1.GetRoundState() + signAddVotes(cs1, types.VoteTypePrecommit, nil, rs.ProposalBlockParts.Header(), vss[1:]...) + <-newRoundCh // wait for the new round event each round + + incrementRound(vss[1:]...) + } + +} + +// a non-validator should timeout into the prevote round +func TestStateEnterProposeNoPrivValidator(t *testing.T) { + cs, _ := randConsensusState(1) + cs.SetPrivValidator(nil) + height, round := cs.Height, cs.Round + + // Listen for propose timeout event + timeoutCh := subscribe(cs.eventBus, types.EventQueryTimeoutPropose) + + startTestRound(cs, height, round) + + // if we're not a validator, EnterPropose should timeout + ticker := time.NewTicker(ensureProposeTimeout(cs.config.TimeoutPropose)) + select { + case <-timeoutCh: + case <-ticker.C: + panic("Expected EnterPropose to timeout") + + } + + if cs.GetRoundState().Proposal != nil { + t.Error("Expected to make no proposal, since no privValidator") + } +} + +// a validator should not timeout of the prevote round (TODO: unless the block is really big!) +func TestStateEnterProposeYesPrivValidator(t *testing.T) { + cs, _ := randConsensusState(1) + height, round := cs.Height, cs.Round + + // Listen for propose timeout event + + timeoutCh := subscribe(cs.eventBus, types.EventQueryTimeoutPropose) + proposalCh := subscribe(cs.eventBus, types.EventQueryCompleteProposal) + + cs.enterNewRound(height, round) + cs.startRoutines(3) + + <-proposalCh + + // Check that Proposal, ProposalBlock, ProposalBlockParts are set. + rs := cs.GetRoundState() + if rs.Proposal == nil { + t.Error("rs.Proposal should be set") + } + if rs.ProposalBlock == nil { + t.Error("rs.ProposalBlock should be set") + } + if rs.ProposalBlockParts.Total() == 0 { + t.Error("rs.ProposalBlockParts should be set") + } + + // if we're a validator, enterPropose should not timeout + ticker := time.NewTicker(ensureProposeTimeout(cs.config.TimeoutPropose)) + select { + case <-timeoutCh: + panic("Expected EnterPropose not to timeout") + case <-ticker.C: + + } +} + +func TestStateBadProposal(t *testing.T) { + cs1, vss := randConsensusState(2) + height, round := cs1.Height, cs1.Round + vs2 := vss[1] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + voteCh := subscribe(cs1.eventBus, types.EventQueryVote) + + propBlock, _ := cs1.createProposalBlock() //changeProposer(t, cs1, vs2) + + // make the second validator the proposer by incrementing round + round = round + 1 + incrementRound(vss[1:]...) + + // make the block bad by tampering with statehash + stateHash := propBlock.AppHash + if len(stateHash) == 0 { + stateHash = make([]byte, 32) + } + stateHash[0] = byte((stateHash[0] + 1) % 255) + propBlock.AppHash = stateHash + propBlockParts := propBlock.MakePartSet(partSize) + proposal := types.NewProposal(vs2.Height, round, propBlockParts.Header(), -1, types.BlockID{}) + if err := vs2.SignProposal(config.ChainID(), proposal); err != nil { + t.Fatal("failed to sign bad proposal", err) + } + + // set the proposal block + if err := cs1.SetProposalAndBlock(proposal, propBlock, propBlockParts, "some peer"); err != nil { + t.Fatal(err) + } + + // start the machine + startTestRound(cs1, height, round) + + // wait for proposal + <-proposalCh + + // wait for prevote + <-voteCh + + validatePrevote(t, cs1, round, vss[0], nil) + + // add bad prevote from vs2 and wait for it + signAddVotes(cs1, types.VoteTypePrevote, propBlock.Hash(), propBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh + + // wait for precommit + <-voteCh + + validatePrecommit(t, cs1, round, 0, vss[0], nil, nil) + signAddVotes(cs1, types.VoteTypePrecommit, propBlock.Hash(), propBlock.MakePartSet(partSize).Header(), vs2) +} + +//---------------------------------------------------------------------------------------------------- +// FullRoundSuite + +// propose, prevote, and precommit a block +func TestStateFullRound1(t *testing.T) { + cs, vss := randConsensusState(1) + height, round := cs.Height, cs.Round + + // NOTE: buffer capacity of 0 ensures we can validate prevote and last commit + // before consensus can move to the next height (and cause a race condition) + cs.eventBus.Stop() + eventBus := types.NewEventBusWithBufferCapacity(0) + eventBus.SetLogger(log.TestingLogger().With("module", "events")) + cs.SetEventBus(eventBus) + eventBus.Start() + + voteCh := subscribe(cs.eventBus, types.EventQueryVote) + propCh := subscribe(cs.eventBus, types.EventQueryCompleteProposal) + newRoundCh := subscribe(cs.eventBus, types.EventQueryNewRound) + + startTestRound(cs, height, round) + + <-newRoundCh + + // grab proposal + re := <-propCh + propBlockHash := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState).ProposalBlock.Hash() + + <-voteCh // wait for prevote + validatePrevote(t, cs, round, vss[0], propBlockHash) + + <-voteCh // wait for precommit + + // we're going to roll right into new height + <-newRoundCh + + validateLastPrecommit(t, cs, vss[0], propBlockHash) +} + +// nil is proposed, so prevote and precommit nil +func TestStateFullRoundNil(t *testing.T) { + cs, vss := randConsensusState(1) + height, round := cs.Height, cs.Round + + voteCh := subscribe(cs.eventBus, types.EventQueryVote) + + cs.enterPrevote(height, round) + cs.startRoutines(4) + + <-voteCh // prevote + <-voteCh // precommit + + // should prevote and precommit nil + validatePrevoteAndPrecommit(t, cs, round, 0, vss[0], nil, nil) +} + +// run through propose, prevote, precommit commit with two validators +// where the first validator has to wait for votes from the second +func TestStateFullRound2(t *testing.T) { + cs1, vss := randConsensusState(2) + vs2 := vss[1] + height, round := cs1.Height, cs1.Round + + voteCh := subscribe(cs1.eventBus, types.EventQueryVote) + newBlockCh := subscribe(cs1.eventBus, types.EventQueryNewBlock) + + // start round and wait for propose and prevote + startTestRound(cs1, height, round) + + <-voteCh // prevote + + // we should be stuck in limbo waiting for more prevotes + rs := cs1.GetRoundState() + propBlockHash, propPartsHeader := rs.ProposalBlock.Hash(), rs.ProposalBlockParts.Header() + + // prevote arrives from vs2: + signAddVotes(cs1, types.VoteTypePrevote, propBlockHash, propPartsHeader, vs2) + <-voteCh + + <-voteCh //precommit + + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 0, 0, vss[0], propBlockHash, propBlockHash) + + // we should be stuck in limbo waiting for more precommits + + // precommit arrives from vs2: + signAddVotes(cs1, types.VoteTypePrecommit, propBlockHash, propPartsHeader, vs2) + <-voteCh + + // wait to finish commit, propose in next height + <-newBlockCh +} + +//------------------------------------------------------------------------------------------ +// LockSuite + +// two validators, 4 rounds. +// two vals take turns proposing. val1 locks on first one, precommits nil on everything else +func TestStateLockNoPOL(t *testing.T) { + cs1, vss := randConsensusState(2) + vs2 := vss[1] + height := cs1.Height + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + timeoutProposeCh := subscribe(cs1.eventBus, types.EventQueryTimeoutPropose) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + voteCh := subscribe(cs1.eventBus, types.EventQueryVote) + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + + /* + Round1 (cs1, B) // B B // B B2 + */ + + // start round and wait for prevote + cs1.enterNewRound(height, 0) + cs1.startRoutines(0) + + re := <-proposalCh + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + theBlockHash := rs.ProposalBlock.Hash() + + <-voteCh // prevote + + // we should now be stuck in limbo forever, waiting for more prevotes + // prevote arrives from vs2: + signAddVotes(cs1, types.VoteTypePrevote, cs1.ProposalBlock.Hash(), cs1.ProposalBlockParts.Header(), vs2) + <-voteCh // prevote + + <-voteCh // precommit + + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 0, 0, vss[0], theBlockHash, theBlockHash) + + // we should now be stuck in limbo forever, waiting for more precommits + // lets add one for a different block + // NOTE: in practice we should never get to a point where there are precommits for different blocks at the same round + hash := make([]byte, len(theBlockHash)) + copy(hash, theBlockHash) + hash[0] = byte((hash[0] + 1) % 255) + signAddVotes(cs1, types.VoteTypePrecommit, hash, rs.ProposalBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh // precommit + + // (note we're entering precommit for a second time this round) + // but with invalid args. then we enterPrecommitWait, and the timeout to new round + <-timeoutWaitCh + + /// + + <-newRoundCh + t.Log("#### ONTO ROUND 1") + /* + Round2 (cs1, B) // B B2 + */ + + incrementRound(vs2) + + // now we're on a new round and not the proposer, so wait for timeout + re = <-timeoutProposeCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + if rs.ProposalBlock != nil { + panic("Expected proposal block to be nil") + } + + // wait to finish prevote + <-voteCh + + // we should have prevoted our locked block + validatePrevote(t, cs1, 1, vss[0], rs.LockedBlock.Hash()) + + // add a conflicting prevote from the other validator + signAddVotes(cs1, types.VoteTypePrevote, hash, rs.LockedBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh + + // now we're going to enter prevote again, but with invalid args + // and then prevote wait, which should timeout. then wait for precommit + <-timeoutWaitCh + + <-voteCh // precommit + + // the proposed block should still be locked and our precommit added + // we should precommit nil and be locked on the proposal + validatePrecommit(t, cs1, 1, 0, vss[0], nil, theBlockHash) + + // add conflicting precommit from vs2 + // NOTE: in practice we should never get to a point where there are precommits for different blocks at the same round + signAddVotes(cs1, types.VoteTypePrecommit, hash, rs.LockedBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh + + // (note we're entering precommit for a second time this round, but with invalid args + // then we enterPrecommitWait and timeout into NewRound + <-timeoutWaitCh + + <-newRoundCh + t.Log("#### ONTO ROUND 2") + /* + Round3 (vs2, _) // B, B2 + */ + + incrementRound(vs2) + + re = <-proposalCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + // now we're on a new round and are the proposer + if !bytes.Equal(rs.ProposalBlock.Hash(), rs.LockedBlock.Hash()) { + panic(cmn.Fmt("Expected proposal block to be locked block. Got %v, Expected %v", rs.ProposalBlock, rs.LockedBlock)) + } + + <-voteCh // prevote + + validatePrevote(t, cs1, 2, vss[0], rs.LockedBlock.Hash()) + + signAddVotes(cs1, types.VoteTypePrevote, hash, rs.ProposalBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh + + <-timeoutWaitCh // prevote wait + <-voteCh // precommit + + validatePrecommit(t, cs1, 2, 0, vss[0], nil, theBlockHash) // precommit nil but be locked on proposal + + signAddVotes(cs1, types.VoteTypePrecommit, hash, rs.ProposalBlock.MakePartSet(partSize).Header(), vs2) // NOTE: conflicting precommits at same height + <-voteCh + + <-timeoutWaitCh + + // before we time out into new round, set next proposal block + prop, propBlock := decideProposal(cs1, vs2, vs2.Height, vs2.Round+1) + if prop == nil || propBlock == nil { + t.Fatal("Failed to create proposal block with vs2") + } + + incrementRound(vs2) + + <-newRoundCh + t.Log("#### ONTO ROUND 3") + /* + Round4 (vs2, C) // B C // B C + */ + + // now we're on a new round and not the proposer + // so set the proposal block + if err := cs1.SetProposalAndBlock(prop, propBlock, propBlock.MakePartSet(partSize), ""); err != nil { + t.Fatal(err) + } + + <-proposalCh + <-voteCh // prevote + + // prevote for locked block (not proposal) + validatePrevote(t, cs1, 0, vss[0], cs1.LockedBlock.Hash()) + + signAddVotes(cs1, types.VoteTypePrevote, propBlock.Hash(), propBlock.MakePartSet(partSize).Header(), vs2) + <-voteCh + + <-timeoutWaitCh + <-voteCh + + validatePrecommit(t, cs1, 2, 0, vss[0], nil, theBlockHash) // precommit nil but locked on proposal + + signAddVotes(cs1, types.VoteTypePrecommit, propBlock.Hash(), propBlock.MakePartSet(partSize).Header(), vs2) // NOTE: conflicting precommits at same height + <-voteCh +} + +// 4 vals, one precommits, other 3 polka at next round, so we unlock and precomit the polka +func TestStateLockPOLRelock(t *testing.T) { + cs1, vss := randConsensusState(4) + vs2, vs3, vs4 := vss[1], vss[2], vss[3] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + timeoutProposeCh := subscribe(cs1.eventBus, types.EventQueryTimeoutPropose) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + voteCh := subscribe(cs1.eventBus, types.EventQueryVote) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + newBlockCh := subscribe(cs1.eventBus, types.EventQueryNewBlockHeader) + + // everything done from perspective of cs1 + + /* + Round1 (cs1, B) // B B B B// B nil B nil + + eg. vs2 and vs4 didn't see the 2/3 prevotes + */ + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + + <-newRoundCh + re := <-proposalCh + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + theBlockHash := rs.ProposalBlock.Hash() + + <-voteCh // prevote + + signAddVotes(cs1, types.VoteTypePrevote, cs1.ProposalBlock.Hash(), cs1.ProposalBlockParts.Header(), vs2, vs3, vs4) + // prevotes + discardFromChan(voteCh, 3) + + <-voteCh // our precommit + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 0, 0, vss[0], theBlockHash, theBlockHash) + + // add precommits from the rest + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs4) + signAddVotes(cs1, types.VoteTypePrecommit, cs1.ProposalBlock.Hash(), cs1.ProposalBlockParts.Header(), vs3) + // precommites + discardFromChan(voteCh, 3) + + // before we timeout to the new round set the new proposal + prop, propBlock := decideProposal(cs1, vs2, vs2.Height, vs2.Round+1) + propBlockParts := propBlock.MakePartSet(partSize) + propBlockHash := propBlock.Hash() + + incrementRound(vs2, vs3, vs4) + + // timeout to new round + <-timeoutWaitCh + + //XXX: this isnt guaranteed to get there before the timeoutPropose ... + if err := cs1.SetProposalAndBlock(prop, propBlock, propBlockParts, "some peer"); err != nil { + t.Fatal(err) + } + + <-newRoundCh + t.Log("### ONTO ROUND 1") + + /* + Round2 (vs2, C) // B C C C // C C C _) + + cs1 changes lock! + */ + + // now we're on a new round and not the proposer + // but we should receive the proposal + select { + case <-proposalCh: + case <-timeoutProposeCh: + <-proposalCh + } + + // go to prevote, prevote for locked block (not proposal), move on + <-voteCh + validatePrevote(t, cs1, 0, vss[0], theBlockHash) + + // now lets add prevotes from everyone else for the new block + signAddVotes(cs1, types.VoteTypePrevote, propBlockHash, propBlockParts.Header(), vs2, vs3, vs4) + // prevotes + discardFromChan(voteCh, 3) + + // now either we go to PrevoteWait or Precommit + select { + case <-timeoutWaitCh: // we're in PrevoteWait, go to Precommit + // XXX: there's no guarantee we see the polka, this might be a precommit for nil, + // in which case the test fails! + <-voteCh + case <-voteCh: // we went straight to Precommit + } + + // we should have unlocked and locked on the new block + validatePrecommit(t, cs1, 1, 1, vss[0], propBlockHash, propBlockHash) + + signAddVotes(cs1, types.VoteTypePrecommit, propBlockHash, propBlockParts.Header(), vs2, vs3) + discardFromChan(voteCh, 2) + + be := <-newBlockCh + b := be.(types.EventDataNewBlockHeader) + re = <-newRoundCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + if rs.Height != 2 { + panic("Expected height to increment") + } + + if !bytes.Equal(b.Header.Hash(), propBlockHash) { + panic("Expected new block to be proposal block") + } +} + +// 4 vals, one precommits, other 3 polka at next round, so we unlock and precomit the polka +func TestStateLockPOLUnlock(t *testing.T) { + cs1, vss := randConsensusState(4) + vs2, vs3, vs4 := vss[1], vss[2], vss[3] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutProposeCh := subscribe(cs1.eventBus, types.EventQueryTimeoutPropose) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + unlockCh := subscribe(cs1.eventBus, types.EventQueryUnlock) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // everything done from perspective of cs1 + + /* + Round1 (cs1, B) // B B B B // B nil B nil + + eg. didn't see the 2/3 prevotes + */ + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + <-newRoundCh + re := <-proposalCh + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + theBlockHash := rs.ProposalBlock.Hash() + + <-voteCh // prevote + + signAddVotes(cs1, types.VoteTypePrevote, cs1.ProposalBlock.Hash(), cs1.ProposalBlockParts.Header(), vs2, vs3, vs4) + + <-voteCh //precommit + + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 0, 0, vss[0], theBlockHash, theBlockHash) + + rs = cs1.GetRoundState() + + // add precommits from the rest + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs4) + signAddVotes(cs1, types.VoteTypePrecommit, cs1.ProposalBlock.Hash(), cs1.ProposalBlockParts.Header(), vs3) + + // before we time out into new round, set next proposal block + prop, propBlock := decideProposal(cs1, vs2, vs2.Height, vs2.Round+1) + propBlockParts := propBlock.MakePartSet(partSize) + + incrementRound(vs2, vs3, vs4) + + // timeout to new round + re = <-timeoutWaitCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + lockedBlockHash := rs.LockedBlock.Hash() + + //XXX: this isnt guaranteed to get there before the timeoutPropose ... + if err := cs1.SetProposalAndBlock(prop, propBlock, propBlockParts, "some peer"); err != nil { + t.Fatal(err) + } + + <-newRoundCh + t.Log("#### ONTO ROUND 1") + /* + Round2 (vs2, C) // B nil nil nil // nil nil nil _ + + cs1 unlocks! + */ + + // now we're on a new round and not the proposer, + // but we should receive the proposal + select { + case <-proposalCh: + case <-timeoutProposeCh: + <-proposalCh + } + + // go to prevote, prevote for locked block (not proposal) + <-voteCh + validatePrevote(t, cs1, 0, vss[0], lockedBlockHash) + // now lets add prevotes from everyone else for nil (a polka!) + signAddVotes(cs1, types.VoteTypePrevote, nil, types.PartSetHeader{}, vs2, vs3, vs4) + + // the polka makes us unlock and precommit nil + <-unlockCh + <-voteCh // precommit + + // we should have unlocked and committed nil + // NOTE: since we don't relock on nil, the lock round is 0 + validatePrecommit(t, cs1, 1, 0, vss[0], nil, nil) + + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs3) + <-newRoundCh +} + +// 4 vals +// a polka at round 1 but we miss it +// then a polka at round 2 that we lock on +// then we see the polka from round 1 but shouldn't unlock +func TestStateLockPOLSafety1(t *testing.T) { + cs1, vss := randConsensusState(4) + vs2, vs3, vs4 := vss[1], vss[2], vss[3] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutProposeCh := subscribe(cs1.eventBus, types.EventQueryTimeoutPropose) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + <-newRoundCh + re := <-proposalCh + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + propBlock := rs.ProposalBlock + + <-voteCh // prevote + + validatePrevote(t, cs1, 0, vss[0], propBlock.Hash()) + + // the others sign a polka but we don't see it + prevotes := signVotes(types.VoteTypePrevote, propBlock.Hash(), propBlock.MakePartSet(partSize).Header(), vs2, vs3, vs4) + + // before we time out into new round, set next proposer + // and next proposal block + /* + _, v1 := cs1.Validators.GetByAddress(vss[0].Address) + v1.VotingPower = 1 + if updated := cs1.Validators.Update(v1); !updated { + panic("failed to update validator") + }*/ + + t.Logf("old prop hash %v", fmt.Sprintf("%X", propBlock.Hash())) + + // we do see them precommit nil + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs3, vs4) + + prop, propBlock := decideProposal(cs1, vs2, vs2.Height, vs2.Round+1) + propBlockHash := propBlock.Hash() + propBlockParts := propBlock.MakePartSet(partSize) + + incrementRound(vs2, vs3, vs4) + + //XXX: this isnt guaranteed to get there before the timeoutPropose ... + if err := cs1.SetProposalAndBlock(prop, propBlock, propBlockParts, "some peer"); err != nil { + t.Fatal(err) + } + + <-newRoundCh + t.Log("### ONTO ROUND 1") + /*Round2 + // we timeout and prevote our lock + // a polka happened but we didn't see it! + */ + + // now we're on a new round and not the proposer, + // but we should receive the proposal + select { + case re = <-proposalCh: + case <-timeoutProposeCh: + re = <-proposalCh + } + + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + if rs.LockedBlock != nil { + panic("we should not be locked!") + } + t.Logf("new prop hash %v", fmt.Sprintf("%X", propBlockHash)) + // go to prevote, prevote for proposal block + <-voteCh + validatePrevote(t, cs1, 1, vss[0], propBlockHash) + + // now we see the others prevote for it, so we should lock on it + signAddVotes(cs1, types.VoteTypePrevote, propBlockHash, propBlockParts.Header(), vs2, vs3, vs4) + + <-voteCh // precommit + + // we should have precommitted + validatePrecommit(t, cs1, 1, 1, vss[0], propBlockHash, propBlockHash) + + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs3) + + <-timeoutWaitCh + + incrementRound(vs2, vs3, vs4) + + <-newRoundCh + + t.Log("### ONTO ROUND 2") + /*Round3 + we see the polka from round 1 but we shouldn't unlock! + */ + + // timeout of propose + <-timeoutProposeCh + + // finish prevote + <-voteCh + + // we should prevote what we're locked on + validatePrevote(t, cs1, 2, vss[0], propBlockHash) + + newStepCh := subscribe(cs1.eventBus, types.EventQueryNewRoundStep) + + // add prevotes from the earlier round + addVotes(cs1, prevotes...) + + t.Log("Done adding prevotes!") + + ensureNoNewStep(newStepCh) +} + +// 4 vals. +// polka P0 at R0, P1 at R1, and P2 at R2, +// we lock on P0 at R0, don't see P1, and unlock using P2 at R2 +// then we should make sure we don't lock using P1 + +// What we want: +// dont see P0, lock on P1 at R1, dont unlock using P0 at R2 +func TestStateLockPOLSafety2(t *testing.T) { + cs1, vss := randConsensusState(4) + vs2, vs3, vs4 := vss[1], vss[2], vss[3] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutProposeCh := subscribe(cs1.eventBus, types.EventQueryTimeoutPropose) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + unlockCh := subscribe(cs1.eventBus, types.EventQueryUnlock) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // the block for R0: gets polkad but we miss it + // (even though we signed it, shhh) + _, propBlock0 := decideProposal(cs1, vss[0], cs1.Height, cs1.Round) + propBlockHash0 := propBlock0.Hash() + propBlockParts0 := propBlock0.MakePartSet(partSize) + + // the others sign a polka but we don't see it + prevotes := signVotes(types.VoteTypePrevote, propBlockHash0, propBlockParts0.Header(), vs2, vs3, vs4) + + // the block for round 1 + prop1, propBlock1 := decideProposal(cs1, vs2, vs2.Height, vs2.Round+1) + propBlockHash1 := propBlock1.Hash() + propBlockParts1 := propBlock1.MakePartSet(partSize) + propBlockID1 := types.BlockID{propBlockHash1, propBlockParts1.Header()} + + incrementRound(vs2, vs3, vs4) + + cs1.updateRoundStep(0, cstypes.RoundStepPrecommitWait) + + t.Log("### ONTO Round 1") + // jump in at round 1 + height := cs1.Height + startTestRound(cs1, height, 1) + <-newRoundCh + + if err := cs1.SetProposalAndBlock(prop1, propBlock1, propBlockParts1, "some peer"); err != nil { + t.Fatal(err) + } + <-proposalCh + + <-voteCh // prevote + + signAddVotes(cs1, types.VoteTypePrevote, propBlockHash1, propBlockParts1.Header(), vs2, vs3, vs4) + + <-voteCh // precommit + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 1, 1, vss[0], propBlockHash1, propBlockHash1) + + // add precommits from the rest + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2, vs4) + signAddVotes(cs1, types.VoteTypePrecommit, propBlockHash1, propBlockParts1.Header(), vs3) + + incrementRound(vs2, vs3, vs4) + + // timeout of precommit wait to new round + <-timeoutWaitCh + + // in round 2 we see the polkad block from round 0 + newProp := types.NewProposal(height, 2, propBlockParts0.Header(), 0, propBlockID1) + if err := vs3.SignProposal(config.ChainID(), newProp); err != nil { + t.Fatal(err) + } + if err := cs1.SetProposalAndBlock(newProp, propBlock0, propBlockParts0, "some peer"); err != nil { + t.Fatal(err) + } + + // Add the pol votes + addVotes(cs1, prevotes...) + + <-newRoundCh + t.Log("### ONTO Round 2") + /*Round2 + // now we see the polka from round 1, but we shouldnt unlock + */ + + select { + case <-timeoutProposeCh: + <-proposalCh + case <-proposalCh: + } + + select { + case <-unlockCh: + panic("validator unlocked using an old polka") + case <-voteCh: + // prevote our locked block + } + validatePrevote(t, cs1, 2, vss[0], propBlockHash1) + +} + +//------------------------------------------------------------------------------------------ +// SlashingSuite +// TODO: Slashing + +/* +func TestStateSlashingPrevotes(t *testing.T) { + cs1, vss := randConsensusState(2) + vs2 := vss[1] + + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + <-newRoundCh + re := <-proposalCh + <-voteCh // prevote + + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + // we should now be stuck in limbo forever, waiting for more prevotes + // add one for a different block should cause us to go into prevote wait + hash := rs.ProposalBlock.Hash() + hash[0] = byte(hash[0]+1) % 255 + signAddVotes(cs1, types.VoteTypePrevote, hash, rs.ProposalBlockParts.Header(), vs2) + + <-timeoutWaitCh + + // NOTE: we have to send the vote for different block first so we don't just go into precommit round right + // away and ignore more prevotes (and thus fail to slash!) + + // add the conflicting vote + signAddVotes(cs1, types.VoteTypePrevote, rs.ProposalBlock.Hash(), rs.ProposalBlockParts.Header(), vs2) + + // XXX: Check for existence of Dupeout info +} + +func TestStateSlashingPrecommits(t *testing.T) { + cs1, vss := randConsensusState(2) + vs2 := vss[1] + + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + <-newRoundCh + re := <-proposalCh + <-voteCh // prevote + + // add prevote from vs2 + signAddVotes(cs1, types.VoteTypePrevote, rs.ProposalBlock.Hash(), rs.ProposalBlockParts.Header(), vs2) + + <-voteCh // precommit + + // we should now be stuck in limbo forever, waiting for more prevotes + // add one for a different block should cause us to go into prevote wait + hash := rs.ProposalBlock.Hash() + hash[0] = byte(hash[0]+1) % 255 + signAddVotes(cs1, types.VoteTypePrecommit, hash, rs.ProposalBlockParts.Header(), vs2) + + // NOTE: we have to send the vote for different block first so we don't just go into precommit round right + // away and ignore more prevotes (and thus fail to slash!) + + // add precommit from vs2 + signAddVotes(cs1, types.VoteTypePrecommit, rs.ProposalBlock.Hash(), rs.ProposalBlockParts.Header(), vs2) + + // XXX: Check for existence of Dupeout info +} +*/ + +//------------------------------------------------------------------------------------------ +// CatchupSuite + +//------------------------------------------------------------------------------------------ +// HaltSuite + +// 4 vals. +// we receive a final precommit after going into next round, but others might have gone to commit already! +func TestStateHalt1(t *testing.T) { + cs1, vss := randConsensusState(4) + vs2, vs3, vs4 := vss[1], vss[2], vss[3] + + partSize := cs1.state.ConsensusParams.BlockPartSizeBytes + + proposalCh := subscribe(cs1.eventBus, types.EventQueryCompleteProposal) + timeoutWaitCh := subscribe(cs1.eventBus, types.EventQueryTimeoutWait) + newRoundCh := subscribe(cs1.eventBus, types.EventQueryNewRound) + newBlockCh := subscribe(cs1.eventBus, types.EventQueryNewBlock) + voteCh := subscribeToVoter(cs1, cs1.privValidator.GetAddress()) + + // start round and wait for propose and prevote + startTestRound(cs1, cs1.Height, 0) + <-newRoundCh + re := <-proposalCh + rs := re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + propBlock := rs.ProposalBlock + propBlockParts := propBlock.MakePartSet(partSize) + + <-voteCh // prevote + + signAddVotes(cs1, types.VoteTypePrevote, propBlock.Hash(), propBlockParts.Header(), vs3, vs4) + <-voteCh // precommit + + // the proposed block should now be locked and our precommit added + validatePrecommit(t, cs1, 0, 0, vss[0], propBlock.Hash(), propBlock.Hash()) + + // add precommits from the rest + signAddVotes(cs1, types.VoteTypePrecommit, nil, types.PartSetHeader{}, vs2) // didnt receive proposal + signAddVotes(cs1, types.VoteTypePrecommit, propBlock.Hash(), propBlockParts.Header(), vs3) + // we receive this later, but vs3 might receive it earlier and with ours will go to commit! + precommit4 := signVote(vs4, types.VoteTypePrecommit, propBlock.Hash(), propBlockParts.Header()) + + incrementRound(vs2, vs3, vs4) + + // timeout to new round + <-timeoutWaitCh + re = <-newRoundCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + t.Log("### ONTO ROUND 1") + /*Round2 + // we timeout and prevote our lock + // a polka happened but we didn't see it! + */ + + // go to prevote, prevote for locked block + <-voteCh // prevote + validatePrevote(t, cs1, 0, vss[0], rs.LockedBlock.Hash()) + + // now we receive the precommit from the previous round + addVotes(cs1, precommit4) + + // receiving that precommit should take us straight to commit + <-newBlockCh + re = <-newRoundCh + rs = re.(types.EventDataRoundState).RoundState.(*cstypes.RoundState) + + if rs.Height != 2 { + panic("expected height to increment") + } +} + +// subscribe subscribes test client to the given query and returns a channel with cap = 1. +func subscribe(eventBus *types.EventBus, q tmpubsub.Query) <-chan interface{} { + out := make(chan interface{}, 1) + err := eventBus.Subscribe(context.Background(), testSubscriber, q, out) + if err != nil { + panic(fmt.Sprintf("failed to subscribe %s to %v", testSubscriber, q)) + } + return out +} + +// discardFromChan reads n values from the channel. +func discardFromChan(ch <-chan interface{}, n int) { + for i := 0; i < n; i++ { + <-ch + } +} diff --git a/consensus/test_data/many_blocks.cswal b/consensus/test_data/many_blocks.cswal new file mode 100644 index 0000000000000000000000000000000000000000..d443fff78eab4ee086c5c5b3783eba7df00522f6 GIT binary patch literal 11137 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 literal 0 HcmV?d00001 diff --git a/consensus/ticker.go b/consensus/ticker.go new file mode 100644 index 000000000..b37b7c495 --- /dev/null +++ b/consensus/ticker.go @@ -0,0 +1,134 @@ +package consensus + +import ( + "time" + + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/log" +) + +var ( + tickTockBufferSize = 10 +) + +// TimeoutTicker is a timer that schedules timeouts +// conditional on the height/round/step in the timeoutInfo. +// The timeoutInfo.Duration may be non-positive. +type TimeoutTicker interface { + Start() error + Stop() error + Chan() <-chan timeoutInfo // on which to receive a timeout + ScheduleTimeout(ti timeoutInfo) // reset the timer + + SetLogger(log.Logger) +} + +// timeoutTicker wraps time.Timer, +// scheduling timeouts only for greater height/round/step +// than what it's already seen. +// Timeouts are scheduled along the tickChan, +// and fired on the tockChan. +type timeoutTicker struct { + cmn.BaseService + + timer *time.Timer + tickChan chan timeoutInfo // for scheduling timeouts + tockChan chan timeoutInfo // for notifying about them +} + +// NewTimeoutTicker returns a new TimeoutTicker. +func NewTimeoutTicker() TimeoutTicker { + tt := &timeoutTicker{ + timer: time.NewTimer(0), + tickChan: make(chan timeoutInfo, tickTockBufferSize), + tockChan: make(chan timeoutInfo, tickTockBufferSize), + } + tt.BaseService = *cmn.NewBaseService(nil, "TimeoutTicker", tt) + tt.stopTimer() // don't want to fire until the first scheduled timeout + return tt +} + +// OnStart implements cmn.Service. It starts the timeout routine. +func (t *timeoutTicker) OnStart() error { + + go t.timeoutRoutine() + + return nil +} + +// OnStop implements cmn.Service. It stops the timeout routine. +func (t *timeoutTicker) OnStop() { + t.BaseService.OnStop() + t.stopTimer() +} + +// Chan returns a channel on which timeouts are sent. +func (t *timeoutTicker) Chan() <-chan timeoutInfo { + return t.tockChan +} + +// ScheduleTimeout schedules a new timeout by sending on the internal tickChan. +// The timeoutRoutine is always available to read from tickChan, so this won't block. +// The scheduling may fail if the timeoutRoutine has already scheduled a timeout for a later height/round/step. +func (t *timeoutTicker) ScheduleTimeout(ti timeoutInfo) { + t.tickChan <- ti +} + +//------------------------------------------------------------- + +// stop the timer and drain if necessary +func (t *timeoutTicker) stopTimer() { + // Stop() returns false if it was already fired or was stopped + if !t.timer.Stop() { + select { + case <-t.timer.C: + default: + t.Logger.Debug("Timer already stopped") + } + } +} + +// send on tickChan to start a new timer. +// timers are interupted and replaced by new ticks from later steps +// timeouts of 0 on the tickChan will be immediately relayed to the tockChan +func (t *timeoutTicker) timeoutRoutine() { + t.Logger.Debug("Starting timeout routine") + var ti timeoutInfo + for { + select { + case newti := <-t.tickChan: + t.Logger.Debug("Received tick", "old_ti", ti, "new_ti", newti) + + // ignore tickers for old height/round/step + if newti.Height < ti.Height { + continue + } else if newti.Height == ti.Height { + if newti.Round < ti.Round { + continue + } else if newti.Round == ti.Round { + if ti.Step > 0 && newti.Step <= ti.Step { + continue + } + } + } + + // stop the last timer + t.stopTimer() + + // update timeoutInfo and reset timer + // NOTE time.Timer allows duration to be non-positive + ti = newti + t.timer.Reset(ti.Duration) + t.Logger.Debug("Scheduled timeout", "dur", ti.Duration, "height", ti.Height, "round", ti.Round, "step", ti.Step) + case <-t.timer.C: + t.Logger.Info("Timed out", "dur", ti.Duration, "height", ti.Height, "round", ti.Round, "step", ti.Step) + // go routine here guarantees timeoutRoutine doesn't block. + // Determinism comes from playback in the receiveRoutine. + // We can eliminate it by merging the timeoutRoutine into receiveRoutine + // and managing the timeouts ourselves with a millisecond ticker + go func(toi timeoutInfo) { t.tockChan <- toi }(ti) + case <-t.Quit(): + return + } + } +} diff --git a/consensus/types/height_vote_set.go b/consensus/types/height_vote_set.go new file mode 100644 index 000000000..3c9867940 --- /dev/null +++ b/consensus/types/height_vote_set.go @@ -0,0 +1,261 @@ +package types + +import ( + "errors" + "fmt" + "strings" + "sync" + + "github.com/tendermint/tendermint/p2p" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +type RoundVoteSet struct { + Prevotes *types.VoteSet + Precommits *types.VoteSet +} + +var ( + GotVoteFromUnwantedRoundError = errors.New("Peer has sent a vote that does not match our round for more than one round") +) + +/* +Keeps track of all VoteSets from round 0 to round 'round'. + +Also keeps track of up to one RoundVoteSet greater than +'round' from each peer, to facilitate catchup syncing of commits. + +A commit is +2/3 precommits for a block at a round, +but which round is not known in advance, so when a peer +provides a precommit for a round greater than mtx.round, +we create a new entry in roundVoteSets but also remember the +peer to prevent abuse. +We let each peer provide us with up to 2 unexpected "catchup" rounds. +One for their LastCommit round, and another for the official commit round. +*/ +type HeightVoteSet struct { + chainID string + height int64 + valSet *types.ValidatorSet + + mtx sync.Mutex + round int // max tracked round + roundVoteSets map[int]RoundVoteSet // keys: [0...round] + peerCatchupRounds map[p2p.ID][]int // keys: peer.ID; values: at most 2 rounds +} + +func NewHeightVoteSet(chainID string, height int64, valSet *types.ValidatorSet) *HeightVoteSet { + hvs := &HeightVoteSet{ + chainID: chainID, + } + hvs.Reset(height, valSet) + return hvs +} + +func (hvs *HeightVoteSet) Reset(height int64, valSet *types.ValidatorSet) { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + + hvs.height = height + hvs.valSet = valSet + hvs.roundVoteSets = make(map[int]RoundVoteSet) + hvs.peerCatchupRounds = make(map[p2p.ID][]int) + + hvs.addRound(0) + hvs.round = 0 +} + +func (hvs *HeightVoteSet) Height() int64 { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + return hvs.height +} + +func (hvs *HeightVoteSet) Round() int { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + return hvs.round +} + +// Create more RoundVoteSets up to round. +func (hvs *HeightVoteSet) SetRound(round int) { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + if hvs.round != 0 && (round < hvs.round+1) { + cmn.PanicSanity("SetRound() must increment hvs.round") + } + for r := hvs.round + 1; r <= round; r++ { + if _, ok := hvs.roundVoteSets[r]; ok { + continue // Already exists because peerCatchupRounds. + } + hvs.addRound(r) + } + hvs.round = round +} + +func (hvs *HeightVoteSet) addRound(round int) { + if _, ok := hvs.roundVoteSets[round]; ok { + cmn.PanicSanity("addRound() for an existing round") + } + // log.Debug("addRound(round)", "round", round) + prevotes := types.NewVoteSet(hvs.chainID, hvs.height, round, types.VoteTypePrevote, hvs.valSet) + precommits := types.NewVoteSet(hvs.chainID, hvs.height, round, types.VoteTypePrecommit, hvs.valSet) + hvs.roundVoteSets[round] = RoundVoteSet{ + Prevotes: prevotes, + Precommits: precommits, + } +} + +// Duplicate votes return added=false, err=nil. +// By convention, peerID is "" if origin is self. +func (hvs *HeightVoteSet) AddVote(vote *types.Vote, peerID p2p.ID) (added bool, err error) { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + if !types.IsVoteTypeValid(vote.Type) { + return + } + voteSet := hvs.getVoteSet(vote.Round, vote.Type) + if voteSet == nil { + if rndz := hvs.peerCatchupRounds[peerID]; len(rndz) < 2 { + hvs.addRound(vote.Round) + voteSet = hvs.getVoteSet(vote.Round, vote.Type) + hvs.peerCatchupRounds[peerID] = append(rndz, vote.Round) + } else { + // punish peer + err = GotVoteFromUnwantedRoundError + return + } + } + added, err = voteSet.AddVote(vote) + return +} + +func (hvs *HeightVoteSet) Prevotes(round int) *types.VoteSet { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + return hvs.getVoteSet(round, types.VoteTypePrevote) +} + +func (hvs *HeightVoteSet) Precommits(round int) *types.VoteSet { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + return hvs.getVoteSet(round, types.VoteTypePrecommit) +} + +// Last round and blockID that has +2/3 prevotes for a particular block or nil. +// Returns -1 if no such round exists. +func (hvs *HeightVoteSet) POLInfo() (polRound int, polBlockID types.BlockID) { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + for r := hvs.round; r >= 0; r-- { + rvs := hvs.getVoteSet(r, types.VoteTypePrevote) + polBlockID, ok := rvs.TwoThirdsMajority() + if ok { + return r, polBlockID + } + } + return -1, types.BlockID{} +} + +func (hvs *HeightVoteSet) getVoteSet(round int, type_ byte) *types.VoteSet { + rvs, ok := hvs.roundVoteSets[round] + if !ok { + return nil + } + switch type_ { + case types.VoteTypePrevote: + return rvs.Prevotes + case types.VoteTypePrecommit: + return rvs.Precommits + default: + cmn.PanicSanity(cmn.Fmt("Unexpected vote type %X", type_)) + return nil + } +} + +// If a peer claims that it has 2/3 majority for given blockKey, call this. +// NOTE: if there are too many peers, or too much peer churn, +// this can cause memory issues. +// TODO: implement ability to remove peers too +func (hvs *HeightVoteSet) SetPeerMaj23(round int, type_ byte, peerID p2p.ID, blockID types.BlockID) error { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + if !types.IsVoteTypeValid(type_) { + return fmt.Errorf("SetPeerMaj23: Invalid vote type %v", type_) + } + voteSet := hvs.getVoteSet(round, type_) + if voteSet == nil { + return nil // something we don't know about yet + } + return voteSet.SetPeerMaj23(types.P2PID(peerID), blockID) +} + +//--------------------------------------------------------- +// string and json + +func (hvs *HeightVoteSet) String() string { + return hvs.StringIndented("") +} + +func (hvs *HeightVoteSet) StringIndented(indent string) string { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + vsStrings := make([]string, 0, (len(hvs.roundVoteSets)+1)*2) + // rounds 0 ~ hvs.round inclusive + for round := 0; round <= hvs.round; round++ { + voteSetString := hvs.roundVoteSets[round].Prevotes.StringShort() + vsStrings = append(vsStrings, voteSetString) + voteSetString = hvs.roundVoteSets[round].Precommits.StringShort() + vsStrings = append(vsStrings, voteSetString) + } + // all other peer catchup rounds + for round, roundVoteSet := range hvs.roundVoteSets { + if round <= hvs.round { + continue + } + voteSetString := roundVoteSet.Prevotes.StringShort() + vsStrings = append(vsStrings, voteSetString) + voteSetString = roundVoteSet.Precommits.StringShort() + vsStrings = append(vsStrings, voteSetString) + } + return cmn.Fmt(`HeightVoteSet{H:%v R:0~%v +%s %v +%s}`, + hvs.height, hvs.round, + indent, strings.Join(vsStrings, "\n"+indent+" "), + indent) +} + +func (hvs *HeightVoteSet) MarshalJSON() ([]byte, error) { + hvs.mtx.Lock() + defer hvs.mtx.Unlock() + + allVotes := hvs.toAllRoundVotes() + return cdc.MarshalJSON(allVotes) +} + +func (hvs *HeightVoteSet) toAllRoundVotes() []roundVotes { + totalRounds := hvs.round + 1 + allVotes := make([]roundVotes, totalRounds) + // rounds 0 ~ hvs.round inclusive + for round := 0; round < totalRounds; round++ { + allVotes[round] = roundVotes{ + Round: round, + Prevotes: hvs.roundVoteSets[round].Prevotes.VoteStrings(), + PrevotesBitArray: hvs.roundVoteSets[round].Prevotes.BitArrayString(), + Precommits: hvs.roundVoteSets[round].Precommits.VoteStrings(), + PrecommitsBitArray: hvs.roundVoteSets[round].Precommits.BitArrayString(), + } + } + // TODO: all other peer catchup rounds + return allVotes +} + +type roundVotes struct { + Round int `json:"round"` + Prevotes []string `json:"prevotes"` + PrevotesBitArray string `json:"prevotes_bit_array"` + Precommits []string `json:"precommits"` + PrecommitsBitArray string `json:"precommits_bit_array"` +} diff --git a/consensus/types/height_vote_set_test.go b/consensus/types/height_vote_set_test.go new file mode 100644 index 000000000..678d34759 --- /dev/null +++ b/consensus/types/height_vote_set_test.go @@ -0,0 +1,69 @@ +package types + +import ( + "testing" + "time" + + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +var config *cfg.Config // NOTE: must be reset for each _test.go file + +func init() { + config = cfg.ResetTestRoot("consensus_height_vote_set_test") +} + +func TestPeerCatchupRounds(t *testing.T) { + valSet, privVals := types.RandValidatorSet(10, 1) + + hvs := NewHeightVoteSet(config.ChainID(), 1, valSet) + + vote999_0 := makeVoteHR(t, 1, 999, privVals, 0) + added, err := hvs.AddVote(vote999_0, "peer1") + if !added || err != nil { + t.Error("Expected to successfully add vote from peer", added, err) + } + + vote1000_0 := makeVoteHR(t, 1, 1000, privVals, 0) + added, err = hvs.AddVote(vote1000_0, "peer1") + if !added || err != nil { + t.Error("Expected to successfully add vote from peer", added, err) + } + + vote1001_0 := makeVoteHR(t, 1, 1001, privVals, 0) + added, err = hvs.AddVote(vote1001_0, "peer1") + if err != GotVoteFromUnwantedRoundError { + t.Errorf("Expected GotVoteFromUnwantedRoundError, but got %v", err) + } + if added { + t.Error("Expected to *not* add vote from peer, too many catchup rounds.") + } + + added, err = hvs.AddVote(vote1001_0, "peer2") + if !added || err != nil { + t.Error("Expected to successfully add vote from another peer") + } + +} + +func makeVoteHR(t *testing.T, height int64, round int, privVals []types.PrivValidator, valIndex int) *types.Vote { + privVal := privVals[valIndex] + vote := &types.Vote{ + ValidatorAddress: privVal.GetAddress(), + ValidatorIndex: valIndex, + Height: height, + Round: round, + Timestamp: time.Now().UTC(), + Type: types.VoteTypePrecommit, + BlockID: types.BlockID{[]byte("fakehash"), types.PartSetHeader{}}, + } + chainID := config.ChainID() + err := privVal.SignVote(chainID, vote) + if err != nil { + panic(cmn.Fmt("Error signing vote: %v", err)) + return nil + } + return vote +} diff --git a/consensus/types/peer_round_state.go b/consensus/types/peer_round_state.go new file mode 100644 index 000000000..dcb6c8e02 --- /dev/null +++ b/consensus/types/peer_round_state.go @@ -0,0 +1,57 @@ +package types + +import ( + "fmt" + "time" + + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +//----------------------------------------------------------------------------- + +// PeerRoundState contains the known state of a peer. +// NOTE: Read-only when returned by PeerState.GetRoundState(). +type PeerRoundState struct { + Height int64 `json:"height"` // Height peer is at + Round int `json:"round"` // Round peer is at, -1 if unknown. + Step RoundStepType `json:"step"` // Step peer is at + StartTime time.Time `json:"start_time"` // Estimated start of round 0 at this height + Proposal bool `json:"proposal"` // True if peer has proposal for this round + ProposalBlockPartsHeader types.PartSetHeader `json:"proposal_block_parts_header"` // + ProposalBlockParts *cmn.BitArray `json:"proposal_block_parts"` // + ProposalPOLRound int `json:"proposal_pol_round"` // Proposal's POL round. -1 if none. + ProposalPOL *cmn.BitArray `json:"proposal_pol"` // nil until ProposalPOLMessage received. + Prevotes *cmn.BitArray `json:"prevotes"` // All votes peer has for this round + Precommits *cmn.BitArray `json:"precommits"` // All precommits peer has for this round + LastCommitRound int `json:"last_commit_round"` // Round of commit for last height. -1 if none. + LastCommit *cmn.BitArray `json:"last_commit"` // All commit precommits of commit for last height. + CatchupCommitRound int `json:"catchup_commit_round"` // Round that we have commit for. Not necessarily unique. -1 if none. + CatchupCommit *cmn.BitArray `json:"catchup_commit"` // All commit precommits peer has for this height & CatchupCommitRound +} + +// String returns a string representation of the PeerRoundState +func (prs PeerRoundState) String() string { + return prs.StringIndented("") +} + +// StringIndented returns a string representation of the PeerRoundState +func (prs PeerRoundState) StringIndented(indent string) string { + return fmt.Sprintf(`PeerRoundState{ +%s %v/%v/%v @%v +%s Proposal %v -> %v +%s POL %v (round %v) +%s Prevotes %v +%s Precommits %v +%s LastCommit %v (round %v) +%s Catchup %v (round %v) +%s}`, + indent, prs.Height, prs.Round, prs.Step, prs.StartTime, + indent, prs.ProposalBlockPartsHeader, prs.ProposalBlockParts, + indent, prs.ProposalPOL, prs.ProposalPOLRound, + indent, prs.Prevotes, + indent, prs.Precommits, + indent, prs.LastCommit, prs.LastCommitRound, + indent, prs.CatchupCommit, prs.CatchupCommitRound, + indent) +} diff --git a/consensus/types/round_state.go b/consensus/types/round_state.go new file mode 100644 index 000000000..14da1f149 --- /dev/null +++ b/consensus/types/round_state.go @@ -0,0 +1,164 @@ +package types + +import ( + "encoding/json" + "fmt" + "time" + + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +//----------------------------------------------------------------------------- +// RoundStepType enum type + +// RoundStepType enumerates the state of the consensus state machine +type RoundStepType uint8 // These must be numeric, ordered. + +// RoundStepType +const ( + RoundStepNewHeight = RoundStepType(0x01) // Wait til CommitTime + timeoutCommit + RoundStepNewRound = RoundStepType(0x02) // Setup new round and go to RoundStepPropose + RoundStepPropose = RoundStepType(0x03) // Did propose, gossip proposal + RoundStepPrevote = RoundStepType(0x04) // Did prevote, gossip prevotes + RoundStepPrevoteWait = RoundStepType(0x05) // Did receive any +2/3 prevotes, start timeout + RoundStepPrecommit = RoundStepType(0x06) // Did precommit, gossip precommits + RoundStepPrecommitWait = RoundStepType(0x07) // Did receive any +2/3 precommits, start timeout + RoundStepCommit = RoundStepType(0x08) // Entered commit state machine + // NOTE: RoundStepNewHeight acts as RoundStepCommitWait. +) + +// String returns a string +func (rs RoundStepType) String() string { + switch rs { + case RoundStepNewHeight: + return "RoundStepNewHeight" + case RoundStepNewRound: + return "RoundStepNewRound" + case RoundStepPropose: + return "RoundStepPropose" + case RoundStepPrevote: + return "RoundStepPrevote" + case RoundStepPrevoteWait: + return "RoundStepPrevoteWait" + case RoundStepPrecommit: + return "RoundStepPrecommit" + case RoundStepPrecommitWait: + return "RoundStepPrecommitWait" + case RoundStepCommit: + return "RoundStepCommit" + default: + return "RoundStepUnknown" // Cannot panic. + } +} + +//----------------------------------------------------------------------------- + +// RoundState defines the internal consensus state. +// NOTE: Not thread safe. Should only be manipulated by functions downstream +// of the cs.receiveRoutine +type RoundState struct { + Height int64 `json:"height"` // Height we are working on + Round int `json:"round"` + Step RoundStepType `json:"step"` + StartTime time.Time `json:"start_time"` + CommitTime time.Time `json:"commit_time"` // Subjective time when +2/3 precommits for Block at Round were found + Validators *types.ValidatorSet `json:"validators"` + Proposal *types.Proposal `json:"proposal"` + ProposalBlock *types.Block `json:"proposal_block"` + ProposalBlockParts *types.PartSet `json:"proposal_block_parts"` + LockedRound int `json:"locked_round"` + LockedBlock *types.Block `json:"locked_block"` + LockedBlockParts *types.PartSet `json:"locked_block_parts"` + ValidRound int `json:"valid_round"` // Last known round with POL for non-nil valid block. + ValidBlock *types.Block `json:"valid_block"` // Last known block of POL mentioned above. + ValidBlockParts *types.PartSet `json:"valid_block_parts"` // Last known block parts of POL metnioned above. + Votes *HeightVoteSet `json:"votes"` + CommitRound int `json:"commit_round"` // + LastCommit *types.VoteSet `json:"last_commit"` // Last precommits at Height-1 + LastValidators *types.ValidatorSet `json:"last_validators"` +} + +// Compressed version of the RoundState for use in RPC +type RoundStateSimple struct { + HeightRoundStep string `json:"height/round/step"` + StartTime time.Time `json:"start_time"` + ProposalBlockHash cmn.HexBytes `json:"proposal_block_hash"` + LockedBlockHash cmn.HexBytes `json:"locked_block_hash"` + ValidBlockHash cmn.HexBytes `json:"valid_block_hash"` + Votes json.RawMessage `json:"height_vote_set"` +} + +// Compress the RoundState to RoundStateSimple +func (rs *RoundState) RoundStateSimple() RoundStateSimple { + votesJSON, err := rs.Votes.MarshalJSON() + if err != nil { + panic(err) + } + return RoundStateSimple{ + HeightRoundStep: fmt.Sprintf("%d/%d/%d", rs.Height, rs.Round, rs.Step), + StartTime: rs.StartTime, + ProposalBlockHash: rs.ProposalBlock.Hash(), + LockedBlockHash: rs.LockedBlock.Hash(), + ValidBlockHash: rs.ValidBlock.Hash(), + Votes: votesJSON, + } +} + +// RoundStateEvent returns the H/R/S of the RoundState as an event. +func (rs *RoundState) RoundStateEvent() types.EventDataRoundState { + // XXX: copy the RoundState + // if we want to avoid this, we may need synchronous events after all + rsCopy := *rs + edrs := types.EventDataRoundState{ + Height: rs.Height, + Round: rs.Round, + Step: rs.Step.String(), + RoundState: &rsCopy, + } + return edrs +} + +// String returns a string +func (rs *RoundState) String() string { + return rs.StringIndented("") +} + +// StringIndented returns a string +func (rs *RoundState) StringIndented(indent string) string { + return fmt.Sprintf(`RoundState{ +%s H:%v R:%v S:%v +%s StartTime: %v +%s CommitTime: %v +%s Validators: %v +%s Proposal: %v +%s ProposalBlock: %v %v +%s LockedRound: %v +%s LockedBlock: %v %v +%s ValidRound: %v +%s ValidBlock: %v %v +%s Votes: %v +%s LastCommit: %v +%s LastValidators:%v +%s}`, + indent, rs.Height, rs.Round, rs.Step, + indent, rs.StartTime, + indent, rs.CommitTime, + indent, rs.Validators.StringIndented(indent+" "), + indent, rs.Proposal, + indent, rs.ProposalBlockParts.StringShort(), rs.ProposalBlock.StringShort(), + indent, rs.LockedRound, + indent, rs.LockedBlockParts.StringShort(), rs.LockedBlock.StringShort(), + indent, rs.ValidRound, + indent, rs.ValidBlockParts.StringShort(), rs.ValidBlock.StringShort(), + indent, rs.Votes.StringIndented(indent+" "), + indent, rs.LastCommit.StringShort(), + indent, rs.LastValidators.StringIndented(indent+" "), + indent) +} + +// StringShort returns a string +func (rs *RoundState) StringShort() string { + return fmt.Sprintf(`RoundState{H:%v R:%v S:%v ST:%v}`, + rs.Height, rs.Round, rs.Step, rs.StartTime) +} diff --git a/consensus/types/round_state_test.go b/consensus/types/round_state_test.go new file mode 100644 index 000000000..042d8de7f --- /dev/null +++ b/consensus/types/round_state_test.go @@ -0,0 +1,95 @@ +package types + +import ( + "testing" + "time" + + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/crypto" + "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" +) + +func BenchmarkRoundStateDeepCopy(b *testing.B) { + b.StopTimer() + + // Random validators + nval, ntxs := 100, 100 + vset, _ := types.RandValidatorSet(nval, 1) + precommits := make([]*types.Vote, nval) + blockID := types.BlockID{ + Hash: cmn.RandBytes(20), + PartsHeader: types.PartSetHeader{ + Hash: cmn.RandBytes(20), + }, + } + sig := crypto.SignatureEd25519{} + for i := 0; i < nval; i++ { + precommits[i] = &types.Vote{ + ValidatorAddress: types.Address(cmn.RandBytes(20)), + Timestamp: time.Now(), + BlockID: blockID, + Signature: sig, + } + } + txs := make([]types.Tx, ntxs) + for i := 0; i < ntxs; i++ { + txs[i] = cmn.RandBytes(100) + } + // Random block + block := &types.Block{ + Header: &types.Header{ + ChainID: cmn.RandStr(12), + Time: time.Now(), + LastBlockID: blockID, + LastCommitHash: cmn.RandBytes(20), + DataHash: cmn.RandBytes(20), + ValidatorsHash: cmn.RandBytes(20), + ConsensusHash: cmn.RandBytes(20), + AppHash: cmn.RandBytes(20), + LastResultsHash: cmn.RandBytes(20), + EvidenceHash: cmn.RandBytes(20), + }, + Data: &types.Data{ + Txs: txs, + }, + Evidence: types.EvidenceData{}, + LastCommit: &types.Commit{ + BlockID: blockID, + Precommits: precommits, + }, + } + parts := block.MakePartSet(4096) + // Random Proposal + proposal := &types.Proposal{ + Timestamp: time.Now(), + BlockPartsHeader: types.PartSetHeader{ + Hash: cmn.RandBytes(20), + }, + POLBlockID: blockID, + Signature: sig, + } + // Random HeightVoteSet + // TODO: hvs := + + rs := &RoundState{ + StartTime: time.Now(), + CommitTime: time.Now(), + Validators: vset, + Proposal: proposal, + ProposalBlock: block, + ProposalBlockParts: parts, + LockedBlock: block, + LockedBlockParts: parts, + ValidBlock: block, + ValidBlockParts: parts, + Votes: nil, // TODO + LastCommit: nil, // TODO + LastValidators: vset, + } + b.StartTimer() + + for i := 0; i < b.N; i++ { + amino.DeepCopy(rs) + } +} diff --git a/consensus/types/wire.go b/consensus/types/wire.go new file mode 100644 index 000000000..6342d7eba --- /dev/null +++ b/consensus/types/wire.go @@ -0,0 +1,12 @@ +package types + +import ( + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/crypto" +) + +var cdc = amino.NewCodec() + +func init() { + crypto.RegisterAmino(cdc) +} diff --git a/consensus/version.go b/consensus/version.go new file mode 100644 index 000000000..2c137bf7f --- /dev/null +++ b/consensus/version.go @@ -0,0 +1,13 @@ +package consensus + +import ( + cmn "github.com/tendermint/tmlibs/common" +) + +// kind of arbitrary +var Spec = "1" // async +var Major = "0" // +var Minor = "2" // replay refactor +var Revision = "2" // validation -> commit + +var Version = cmn.Fmt("v%s/%s.%s.%s", Spec, Major, Minor, Revision) diff --git a/consensus/wal.go b/consensus/wal.go new file mode 100644 index 000000000..3d9bf8afc --- /dev/null +++ b/consensus/wal.go @@ -0,0 +1,323 @@ +package consensus + +import ( + "encoding/binary" + "fmt" + "hash/crc32" + "io" + "path/filepath" + "time" + + "github.com/pkg/errors" + + amino "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/types" + auto "github.com/tendermint/tmlibs/autofile" + cmn "github.com/tendermint/tmlibs/common" +) + +const ( + // must be greater than params.BlockGossip.BlockPartSizeBytes + a few bytes + maxMsgSizeBytes = 1024 * 1024 // 1MB +) + +//-------------------------------------------------------- +// types and functions for savings consensus messages + +type TimedWALMessage struct { + Time time.Time `json:"time"` // for debugging purposes + Msg WALMessage `json:"msg"` +} + +// EndHeightMessage marks the end of the given height inside WAL. +// @internal used by scripts/wal2json util. +type EndHeightMessage struct { + Height int64 `json:"height"` +} + +type WALMessage interface{} + +func RegisterWALMessages(cdc *amino.Codec) { + cdc.RegisterInterface((*WALMessage)(nil), nil) + cdc.RegisterConcrete(types.EventDataRoundState{}, "tendermint/wal/EventDataRoundState", nil) + cdc.RegisterConcrete(msgInfo{}, "tendermint/wal/MsgInfo", nil) + cdc.RegisterConcrete(timeoutInfo{}, "tendermint/wal/TimeoutInfo", nil) + cdc.RegisterConcrete(EndHeightMessage{}, "tendermint/wal/EndHeightMessage", nil) +} + +//-------------------------------------------------------- +// Simple write-ahead logger + +// WAL is an interface for any write-ahead logger. +type WAL interface { + Write(WALMessage) + WriteSync(WALMessage) + Group() *auto.Group + SearchForEndHeight(height int64, options *WALSearchOptions) (gr *auto.GroupReader, found bool, err error) + + Start() error + Stop() error + Wait() +} + +// Write ahead logger writes msgs to disk before they are processed. +// Can be used for crash-recovery and deterministic replay +// TODO: currently the wal is overwritten during replay catchup +// give it a mode so it's either reading or appending - must read to end to start appending again +type baseWAL struct { + cmn.BaseService + + group *auto.Group + + enc *WALEncoder +} + +func NewWAL(walFile string) (*baseWAL, error) { + err := cmn.EnsureDir(filepath.Dir(walFile), 0700) + if err != nil { + return nil, errors.Wrap(err, "failed to ensure WAL directory is in place") + } + + group, err := auto.OpenGroup(walFile) + if err != nil { + return nil, err + } + wal := &baseWAL{ + group: group, + enc: NewWALEncoder(group), + } + wal.BaseService = *cmn.NewBaseService(nil, "baseWAL", wal) + return wal, nil +} + +func (wal *baseWAL) Group() *auto.Group { + return wal.group +} + +func (wal *baseWAL) OnStart() error { + size, err := wal.group.Head.Size() + if err != nil { + return err + } else if size == 0 { + wal.WriteSync(EndHeightMessage{0}) + } + err = wal.group.Start() + return err +} + +func (wal *baseWAL) OnStop() { + wal.group.Stop() + wal.group.Close() +} + +// Write is called in newStep and for each receive on the +// peerMsgQueue and the timeoutTicker. +// NOTE: does not call fsync() +func (wal *baseWAL) Write(msg WALMessage) { + if wal == nil { + return + } + + // Write the wal message + if err := wal.enc.Encode(&TimedWALMessage{time.Now(), msg}); err != nil { + panic(cmn.Fmt("Error writing msg to consensus wal: %v \n\nMessage: %v", err, msg)) + } +} + +// WriteSync is called when we receive a msg from ourselves +// so that we write to disk before sending signed messages. +// NOTE: calls fsync() +func (wal *baseWAL) WriteSync(msg WALMessage) { + if wal == nil { + return + } + + wal.Write(msg) + if err := wal.group.Flush(); err != nil { + panic(cmn.Fmt("Error flushing consensus wal buf to file. Error: %v \n", err)) + } +} + +// WALSearchOptions are optional arguments to SearchForEndHeight. +type WALSearchOptions struct { + // IgnoreDataCorruptionErrors set to true will result in skipping data corruption errors. + IgnoreDataCorruptionErrors bool +} + +// SearchForEndHeight searches for the EndHeightMessage with the given height +// and returns an auto.GroupReader, whenever it was found or not and an error. +// Group reader will be nil if found equals false. +// +// CONTRACT: caller must close group reader. +func (wal *baseWAL) SearchForEndHeight(height int64, options *WALSearchOptions) (gr *auto.GroupReader, found bool, err error) { + var msg *TimedWALMessage + lastHeightFound := int64(-1) + + // NOTE: starting from the last file in the group because we're usually + // searching for the last height. See replay.go + min, max := wal.group.MinIndex(), wal.group.MaxIndex() + wal.Logger.Debug("Searching for height", "height", height, "min", min, "max", max) + for index := max; index >= min; index-- { + gr, err = wal.group.NewReader(index) + if err != nil { + return nil, false, err + } + + dec := NewWALDecoder(gr) + for { + msg, err = dec.Decode() + if err == io.EOF { + // OPTIMISATION: no need to look for height in older files if we've seen h < height + if lastHeightFound > 0 && lastHeightFound < height { + gr.Close() + return nil, false, nil + } + // check next file + break + } + if options.IgnoreDataCorruptionErrors && IsDataCorruptionError(err) { + wal.Logger.Debug("Corrupted entry. Skipping...", "err", err) + // do nothing + continue + } else if err != nil { + gr.Close() + return nil, false, err + } + + if m, ok := msg.Msg.(EndHeightMessage); ok { + lastHeightFound = m.Height + if m.Height == height { // found + wal.Logger.Debug("Found", "height", height, "index", index) + return gr, true, nil + } + } + } + gr.Close() + } + + return nil, false, nil +} + +/////////////////////////////////////////////////////////////////////////////// + +// A WALEncoder writes custom-encoded WAL messages to an output stream. +// +// Format: 4 bytes CRC sum + 4 bytes length + arbitrary-length value (go-amino encoded) +type WALEncoder struct { + wr io.Writer +} + +// NewWALEncoder returns a new encoder that writes to wr. +func NewWALEncoder(wr io.Writer) *WALEncoder { + return &WALEncoder{wr} +} + +// Encode writes the custom encoding of v to the stream. +func (enc *WALEncoder) Encode(v *TimedWALMessage) error { + data := cdc.MustMarshalBinaryBare(v) + + crc := crc32.Checksum(data, crc32c) + length := uint32(len(data)) + totalLength := 8 + int(length) + + msg := make([]byte, totalLength) + binary.BigEndian.PutUint32(msg[0:4], crc) + binary.BigEndian.PutUint32(msg[4:8], length) + copy(msg[8:], data) + + _, err := enc.wr.Write(msg) + + return err +} + +/////////////////////////////////////////////////////////////////////////////// + +// IsDataCorruptionError returns true if data has been corrupted inside WAL. +func IsDataCorruptionError(err error) bool { + _, ok := err.(DataCorruptionError) + return ok +} + +// DataCorruptionError is an error that occures if data on disk was corrupted. +type DataCorruptionError struct { + cause error +} + +func (e DataCorruptionError) Error() string { + return fmt.Sprintf("DataCorruptionError[%v]", e.cause) +} + +func (e DataCorruptionError) Cause() error { + return e.cause +} + +// A WALDecoder reads and decodes custom-encoded WAL messages from an input +// stream. See WALEncoder for the format used. +// +// It will also compare the checksums and make sure data size is equal to the +// length from the header. If that is not the case, error will be returned. +type WALDecoder struct { + rd io.Reader +} + +// NewWALDecoder returns a new decoder that reads from rd. +func NewWALDecoder(rd io.Reader) *WALDecoder { + return &WALDecoder{rd} +} + +// Decode reads the next custom-encoded value from its reader and returns it. +func (dec *WALDecoder) Decode() (*TimedWALMessage, error) { + b := make([]byte, 4) + + _, err := dec.rd.Read(b) + if err == io.EOF { + return nil, err + } + if err != nil { + return nil, fmt.Errorf("failed to read checksum: %v", err) + } + crc := binary.BigEndian.Uint32(b) + + b = make([]byte, 4) + _, err = dec.rd.Read(b) + if err != nil { + return nil, fmt.Errorf("failed to read length: %v", err) + } + length := binary.BigEndian.Uint32(b) + + if length > maxMsgSizeBytes { + return nil, fmt.Errorf("length %d exceeded maximum possible value of %d bytes", length, maxMsgSizeBytes) + } + + data := make([]byte, length) + _, err = dec.rd.Read(data) + if err != nil { + return nil, fmt.Errorf("failed to read data: %v", err) + } + + // check checksum before decoding data + actualCRC := crc32.Checksum(data, crc32c) + if actualCRC != crc { + return nil, DataCorruptionError{fmt.Errorf("checksums do not match: (read: %v, actual: %v)", crc, actualCRC)} + } + + var res = new(TimedWALMessage) // nolint: gosimple + err = cdc.UnmarshalBinaryBare(data, res) + if err != nil { + return nil, DataCorruptionError{fmt.Errorf("failed to decode data: %v", err)} + } + + return res, err +} + +type nilWAL struct{} + +func (nilWAL) Write(m WALMessage) {} +func (nilWAL) WriteSync(m WALMessage) {} +func (nilWAL) Group() *auto.Group { return nil } +func (nilWAL) SearchForEndHeight(height int64, options *WALSearchOptions) (gr *auto.GroupReader, found bool, err error) { + return nil, false, nil +} +func (nilWAL) Start() error { return nil } +func (nilWAL) Stop() error { return nil } +func (nilWAL) Wait() {} diff --git a/consensus/wal_fuzz.go b/consensus/wal_fuzz.go new file mode 100644 index 000000000..e15097c30 --- /dev/null +++ b/consensus/wal_fuzz.go @@ -0,0 +1,31 @@ +// +build gofuzz + +package consensus + +import ( + "bytes" + "io" +) + +func Fuzz(data []byte) int { + dec := NewWALDecoder(bytes.NewReader(data)) + for { + msg, err := dec.Decode() + if err == io.EOF { + break + } + if err != nil { + if msg != nil { + panic("msg != nil on error") + } + return 0 + } + var w bytes.Buffer + enc := NewWALEncoder(&w) + err = enc.Encode(msg) + if err != nil { + panic(err) + } + } + return 1 +} diff --git a/consensus/wal_generator.go b/consensus/wal_generator.go new file mode 100644 index 000000000..9a4b70595 --- /dev/null +++ b/consensus/wal_generator.go @@ -0,0 +1,205 @@ +package consensus + +import ( + "bufio" + "bytes" + "fmt" + "os" + "path/filepath" + "strings" + "time" + + "github.com/pkg/errors" + "github.com/tendermint/abci/example/kvstore" + bc "github.com/tendermint/tendermint/blockchain" + cfg "github.com/tendermint/tendermint/config" + "github.com/tendermint/tendermint/privval" + "github.com/tendermint/tendermint/proxy" + sm "github.com/tendermint/tendermint/state" + "github.com/tendermint/tendermint/types" + auto "github.com/tendermint/tmlibs/autofile" + cmn "github.com/tendermint/tmlibs/common" + "github.com/tendermint/tmlibs/db" + "github.com/tendermint/tmlibs/log" +) + +// WALWithNBlocks generates a consensus WAL. It does this by spining up a +// stripped down version of node (proxy app, event bus, consensus state) with a +// persistent kvstore application and special consensus wal instance +// (byteBufferWAL) and waits until numBlocks are created. Then it returns a WAL +// content. If the node fails to produce given numBlocks, it returns an error. +func WALWithNBlocks(numBlocks int) (data []byte, err error) { + config := getConfig() + + app := kvstore.NewPersistentKVStoreApplication(filepath.Join(config.DBDir(), "wal_generator")) + + logger := log.TestingLogger().With("wal_generator", "wal_generator") + logger.Info("generating WAL (last height msg excluded)", "numBlocks", numBlocks) + + ///////////////////////////////////////////////////////////////////////////// + // COPY PASTE FROM node.go WITH A FEW MODIFICATIONS + // NOTE: we can't import node package because of circular dependency + privValidatorFile := config.PrivValidatorFile() + privValidator := privval.LoadOrGenFilePV(privValidatorFile) + genDoc, err := types.GenesisDocFromFile(config.GenesisFile()) + if err != nil { + return nil, errors.Wrap(err, "failed to read genesis file") + } + stateDB := db.NewMemDB() + blockStoreDB := db.NewMemDB() + state, err := sm.MakeGenesisState(genDoc) + if err != nil { + return nil, errors.Wrap(err, "failed to make genesis state") + } + blockStore := bc.NewBlockStore(blockStoreDB) + handshaker := NewHandshaker(stateDB, state, blockStore, genDoc) + proxyApp := proxy.NewAppConns(proxy.NewLocalClientCreator(app), handshaker) + proxyApp.SetLogger(logger.With("module", "proxy")) + if err := proxyApp.Start(); err != nil { + return nil, errors.Wrap(err, "failed to start proxy app connections") + } + defer proxyApp.Stop() + eventBus := types.NewEventBus() + eventBus.SetLogger(logger.With("module", "events")) + if err := eventBus.Start(); err != nil { + return nil, errors.Wrap(err, "failed to start event bus") + } + defer eventBus.Stop() + mempool := sm.MockMempool{} + evpool := sm.MockEvidencePool{} + blockExec := sm.NewBlockExecutor(stateDB, log.TestingLogger(), proxyApp.Consensus(), mempool, evpool) + consensusState := NewConsensusState(config.Consensus, state.Copy(), blockExec, blockStore, mempool, evpool) + consensusState.SetLogger(logger) + consensusState.SetEventBus(eventBus) + if privValidator != nil { + consensusState.SetPrivValidator(privValidator) + } + // END OF COPY PASTE + ///////////////////////////////////////////////////////////////////////////// + + // set consensus wal to buffered WAL, which will write all incoming msgs to buffer + var b bytes.Buffer + wr := bufio.NewWriter(&b) + numBlocksWritten := make(chan struct{}) + wal := newByteBufferWAL(logger, NewWALEncoder(wr), int64(numBlocks), numBlocksWritten) + // see wal.go#103 + wal.Write(EndHeightMessage{0}) + consensusState.wal = wal + + if err := consensusState.Start(); err != nil { + return nil, errors.Wrap(err, "failed to start consensus state") + } + + select { + case <-numBlocksWritten: + consensusState.Stop() + wr.Flush() + return b.Bytes(), nil + case <-time.After(1 * time.Minute): + consensusState.Stop() + return []byte{}, fmt.Errorf("waited too long for tendermint to produce %d blocks (grep logs for `wal_generator`)", numBlocks) + } +} + +// f**ing long, but unique for each test +func makePathname() string { + // get path + p, err := os.Getwd() + if err != nil { + panic(err) + } + // fmt.Println(p) + sep := string(filepath.Separator) + return strings.Replace(p, sep, "_", -1) +} + +func randPort() int { + // returns between base and base + spread + base, spread := 20000, 20000 + return base + cmn.RandIntn(spread) +} + +func makeAddrs() (string, string, string) { + start := randPort() + return fmt.Sprintf("tcp://0.0.0.0:%d", start), + fmt.Sprintf("tcp://0.0.0.0:%d", start+1), + fmt.Sprintf("tcp://0.0.0.0:%d", start+2) +} + +// getConfig returns a config for test cases +func getConfig() *cfg.Config { + pathname := makePathname() + c := cfg.ResetTestRoot(fmt.Sprintf("%s_%d", pathname, cmn.RandInt())) + + // and we use random ports to run in parallel + tm, rpc, grpc := makeAddrs() + c.P2P.ListenAddress = tm + c.RPC.ListenAddress = rpc + c.RPC.GRPCListenAddress = grpc + return c +} + +// byteBufferWAL is a WAL which writes all msgs to a byte buffer. Writing stops +// when the heightToStop is reached. Client will be notified via +// signalWhenStopsTo channel. +type byteBufferWAL struct { + enc *WALEncoder + stopped bool + heightToStop int64 + signalWhenStopsTo chan<- struct{} + + logger log.Logger +} + +// needed for determinism +var fixedTime, _ = time.Parse(time.RFC3339, "2017-01-02T15:04:05Z") + +func newByteBufferWAL(logger log.Logger, enc *WALEncoder, nBlocks int64, signalStop chan<- struct{}) *byteBufferWAL { + return &byteBufferWAL{ + enc: enc, + heightToStop: nBlocks, + signalWhenStopsTo: signalStop, + logger: logger, + } +} + +// Save writes message to the internal buffer except when heightToStop is +// reached, in which case it will signal the caller via signalWhenStopsTo and +// skip writing. +func (w *byteBufferWAL) Write(m WALMessage) { + if w.stopped { + w.logger.Debug("WAL already stopped. Not writing message", "msg", m) + return + } + + if endMsg, ok := m.(EndHeightMessage); ok { + w.logger.Debug("WAL write end height message", "height", endMsg.Height, "stopHeight", w.heightToStop) + if endMsg.Height == w.heightToStop { + w.logger.Debug("Stopping WAL at height", "height", endMsg.Height) + w.signalWhenStopsTo <- struct{}{} + w.stopped = true + return + } + } + + w.logger.Debug("WAL Write Message", "msg", m) + err := w.enc.Encode(&TimedWALMessage{fixedTime, m}) + if err != nil { + panic(fmt.Sprintf("failed to encode the msg %v", m)) + } +} + +func (w *byteBufferWAL) WriteSync(m WALMessage) { + w.Write(m) +} + +func (w *byteBufferWAL) Group() *auto.Group { + panic("not implemented") +} +func (w *byteBufferWAL) SearchForEndHeight(height int64, options *WALSearchOptions) (gr *auto.GroupReader, found bool, err error) { + return nil, false, nil +} + +func (w *byteBufferWAL) Start() error { return nil } +func (w *byteBufferWAL) Stop() error { return nil } +func (w *byteBufferWAL) Wait() {} diff --git a/consensus/wal_test.go b/consensus/wal_test.go new file mode 100644 index 000000000..eebbc85a2 --- /dev/null +++ b/consensus/wal_test.go @@ -0,0 +1,133 @@ +package consensus + +import ( + "bytes" + "crypto/rand" + // "sync" + "testing" + "time" + + "github.com/tendermint/tendermint/consensus/types" + tmtypes "github.com/tendermint/tendermint/types" + cmn "github.com/tendermint/tmlibs/common" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func TestWALEncoderDecoder(t *testing.T) { + now := time.Now() + msgs := []TimedWALMessage{ + TimedWALMessage{Time: now, Msg: EndHeightMessage{0}}, + TimedWALMessage{Time: now, Msg: timeoutInfo{Duration: time.Second, Height: 1, Round: 1, Step: types.RoundStepPropose}}, + } + + b := new(bytes.Buffer) + + for _, msg := range msgs { + b.Reset() + + enc := NewWALEncoder(b) + err := enc.Encode(&msg) + require.NoError(t, err) + + dec := NewWALDecoder(b) + decoded, err := dec.Decode() + require.NoError(t, err) + + assert.Equal(t, msg.Time.UTC(), decoded.Time) + assert.Equal(t, msg.Msg, decoded.Msg) + } +} + +func TestWALSearchForEndHeight(t *testing.T) { + walBody, err := WALWithNBlocks(6) + if err != nil { + t.Fatal(err) + } + walFile := tempWALWithData(walBody) + + wal, err := NewWAL(walFile) + if err != nil { + t.Fatal(err) + } + + h := int64(3) + gr, found, err := wal.SearchForEndHeight(h, &WALSearchOptions{}) + assert.NoError(t, err, cmn.Fmt("expected not to err on height %d", h)) + assert.True(t, found, cmn.Fmt("expected to find end height for %d", h)) + assert.NotNil(t, gr, "expected group not to be nil") + defer gr.Close() + + dec := NewWALDecoder(gr) + msg, err := dec.Decode() + assert.NoError(t, err, "expected to decode a message") + rs, ok := msg.Msg.(tmtypes.EventDataRoundState) + assert.True(t, ok, "expected message of type EventDataRoundState") + assert.Equal(t, rs.Height, h+1, cmn.Fmt("wrong height")) +} + +/* +var initOnce sync.Once + +func registerInterfacesOnce() { + initOnce.Do(func() { + var _ = wire.RegisterInterface( + struct{ WALMessage }{}, + wire.ConcreteType{[]byte{}, 0x10}, + ) + }) +} +*/ + +func nBytes(n int) []byte { + buf := make([]byte, n) + n, _ = rand.Read(buf) + return buf[:n] +} + +func benchmarkWalDecode(b *testing.B, n int) { + // registerInterfacesOnce() + + buf := new(bytes.Buffer) + enc := NewWALEncoder(buf) + + data := nBytes(n) + enc.Encode(&TimedWALMessage{Msg: data, Time: time.Now().Round(time.Second)}) + + encoded := buf.Bytes() + + b.ResetTimer() + for i := 0; i < b.N; i++ { + buf.Reset() + buf.Write(encoded) + dec := NewWALDecoder(buf) + if _, err := dec.Decode(); err != nil { + b.Fatal(err) + } + } + b.ReportAllocs() +} + +func BenchmarkWalDecode512B(b *testing.B) { + benchmarkWalDecode(b, 512) +} + +func BenchmarkWalDecode10KB(b *testing.B) { + benchmarkWalDecode(b, 10*1024) +} +func BenchmarkWalDecode100KB(b *testing.B) { + benchmarkWalDecode(b, 100*1024) +} +func BenchmarkWalDecode1MB(b *testing.B) { + benchmarkWalDecode(b, 1024*1024) +} +func BenchmarkWalDecode10MB(b *testing.B) { + benchmarkWalDecode(b, 10*1024*1024) +} +func BenchmarkWalDecode100MB(b *testing.B) { + benchmarkWalDecode(b, 100*1024*1024) +} +func BenchmarkWalDecode1GB(b *testing.B) { + benchmarkWalDecode(b, 1024*1024*1024) +} diff --git a/consensus/wire.go b/consensus/wire.go new file mode 100644 index 000000000..5f231c0c7 --- /dev/null +++ b/consensus/wire.go @@ -0,0 +1,14 @@ +package consensus + +import ( + "github.com/tendermint/go-amino" + "github.com/tendermint/tendermint/crypto" +) + +var cdc = amino.NewCodec() + +func init() { + RegisterConsensusMessages(cdc) + RegisterWALMessages(cdc) + crypto.RegisterAmino(cdc) +} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..61862e5c1 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,68 @@ +version: '3' + +services: + node0: + container_name: node0 + image: "tendermint/localnode" + ports: + - "26656-26657:26656-26657" + environment: + - ID=0 + - LOG=$${LOG:-tendermint.log} + volumes: + - ./build:/tendermint:Z + networks: + localnet: + ipv4_address: 192.167.10.2 + + node1: + container_name: node1 + image: "tendermint/localnode" + ports: + - "26659-26660:26656-26657" + environment: + - ID=1 + - LOG=$${LOG:-tendermint.log} + volumes: + - ./build:/tendermint:Z + networks: + localnet: + ipv4_address: 192.167.10.3 + + node2: + container_name: node2 + image: "tendermint/localnode" + environment: + - ID=2 + - LOG=$${LOG:-tendermint.log} + ports: + - "26661-26662:26656-26657" + volumes: + - ./build:/tendermint:Z + networks: + localnet: + ipv4_address: 192.167.10.4 + + node3: + container_name: node3 + image: "tendermint/localnode" + environment: + - ID=3 + - LOG=$${LOG:-tendermint.log} + ports: + - "26663-26664:26656-26657" + volumes: + - ./build:/tendermint:Z + networks: + localnet: + ipv4_address: 192.167.10.5 + +networks: + localnet: + driver: bridge + ipam: + driver: default + config: + - + subnet: 192.167.10.0/16 + diff --git a/docs/.python-version b/docs/.python-version new file mode 100644 index 000000000..9bbf49249 --- /dev/null +++ b/docs/.python-version @@ -0,0 +1 @@ +2.7.14 diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 000000000..442c9be65 --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,23 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = python -msphinx +SPHINXPROJ = Tendermint +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +install: + @pip install -r requirements.txt + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..180acdcb9 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,14 @@ +Here lies our documentation. After making edits, run: + +``` +pip install -r requirements.txt +make html +``` + +to build the docs locally then open the file `_build/html/index.html` in your browser. + +**WARNING:** This documentation is intended to be viewed at: + +https://tendermint.readthedocs.io + +and may contain broken internal links when viewed from Github. diff --git a/docs/_static/custom_collapsible_code.css b/docs/_static/custom_collapsible_code.css new file mode 100644 index 000000000..695268a83 --- /dev/null +++ b/docs/_static/custom_collapsible_code.css @@ -0,0 +1,17 @@ +.toggle { + padding-bottom: 1em ; +} + +.toggle .header { + display: block; + clear: both; + cursor: pointer; +} + +.toggle .header:after { + content: " ▼"; +} + +.toggle .header.open:after { + content: " ▲"; +} \ No newline at end of file diff --git a/docs/_static/custom_collapsible_code.js b/docs/_static/custom_collapsible_code.js new file mode 100644 index 000000000..f4ff22adc --- /dev/null +++ b/docs/_static/custom_collapsible_code.js @@ -0,0 +1,10 @@ +let makeCodeBlocksCollapsible = function() { + $(".toggle > *").hide(); + $(".toggle .header").show(); + $(".toggle .header").click(function() { + $(this).parent().children().not(".header").toggle({"duration": 400}); + $(this).parent().children(".header").toggleClass("open"); + }); +}; +// we could use the }(); way if we would have access to jQuery in HEAD, i.e. we would need to force the theme +// to load jQuery before our custom scripts diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html new file mode 100644 index 000000000..736460bc0 --- /dev/null +++ b/docs/_templates/layout.html @@ -0,0 +1,20 @@ +{% extends "!layout.html" %} + +{% set css_files = css_files + ["_static/custom_collapsible_code.css"] %} + +# sadly, I didn't find a css style way to add custom JS to a list that is automagically added to head like CSS (above) #} +{% block extrahead %} + +{% endblock %} + +{% block footer %} + +{% endblock %} + + diff --git a/docs/abci-cli.md b/docs/abci-cli.md new file mode 100644 index 000000000..14095d162 --- /dev/null +++ b/docs/abci-cli.md @@ -0,0 +1,329 @@ +# Using ABCI-CLI + +To facilitate testing and debugging of ABCI servers and simple apps, we +built a CLI, the `abci-cli`, for sending ABCI messages from the command +line. + +## Install + +Make sure you [have Go installed](https://golang.org/doc/install). + +Next, install the `abci-cli` tool and example applications: + + go get -u github.com/tendermint/abci/cmd/abci-cli + +If this fails, you may need to use [dep](https://github.com/golang/dep) +to get vendored dependencies: + + cd $GOPATH/src/github.com/tendermint/abci + make get_tools + make get_vendor_deps + make install + +Now run `abci-cli` to see the list of commands: + + Usage: + abci-cli [command] + + Available Commands: + batch Run a batch of abci commands against an application + check_tx Validate a tx + commit Commit the application state and return the Merkle root hash + console Start an interactive abci console for multiple commands + counter ABCI demo example + deliver_tx Deliver a new tx to the application + kvstore ABCI demo example + echo Have the application echo a message + help Help about any command + info Get some info about the application + query Query the application state + set_option Set an options on the application + + Flags: + --abci string socket or grpc (default "socket") + --address string address of application socket (default "tcp://127.0.0.1:26658") + -h, --help help for abci-cli + -v, --verbose print the command and results as if it were a console session + + Use "abci-cli [command] --help" for more information about a command. + +## KVStore - First Example + +The `abci-cli` tool lets us send ABCI messages to our application, to +help build and debug them. + +The most important messages are `deliver_tx`, `check_tx`, and `commit`, +but there are others for convenience, configuration, and information +purposes. + +We'll start a kvstore application, which was installed at the same time +as `abci-cli` above. The kvstore just stores transactions in a merkle +tree. + +Its code can be found +[here](https://github.com/tendermint/abci/blob/master/cmd/abci-cli/abci-cli.go) +and looks like: + + func cmdKVStore(cmd *cobra.Command, args []string) error { + logger := log.NewTMLogger(log.NewSyncWriter(os.Stdout)) + + // Create the application - in memory or persisted to disk + var app types.Application + if flagPersist == "" { + app = kvstore.NewKVStoreApplication() + } else { + app = kvstore.NewPersistentKVStoreApplication(flagPersist) + app.(*kvstore.PersistentKVStoreApplication).SetLogger(logger.With("module", "kvstore")) + } + + // Start the listener + srv, err := server.NewServer(flagAddrD, flagAbci, app) + if err != nil { + return err + } + srv.SetLogger(logger.With("module", "abci-server")) + if err := srv.Start(); err != nil { + return err + } + + // Wait forever + cmn.TrapSignal(func() { + // Cleanup + srv.Stop() + }) + return nil + } + +Start by running: + + abci-cli kvstore + +And in another terminal, run + + abci-cli echo hello + abci-cli info + +You'll see something like: + + -> data: hello + -> data.hex: 68656C6C6F + +and: + + -> data: {"size":0} + -> data.hex: 7B2273697A65223A307D + +An ABCI application must provide two things: + +- a socket server +- a handler for ABCI messages + +When we run the `abci-cli` tool we open a new connection to the +application's socket server, send the given ABCI message, and wait for a +response. + +The server may be generic for a particular language, and we provide a +[reference implementation in +Golang](https://github.com/tendermint/abci/tree/master/server). See the +[list of other ABCI implementations](./ecosystem.html) for servers in +other languages. + +The handler is specific to the application, and may be arbitrary, so +long as it is deterministic and conforms to the ABCI interface +specification. + +So when we run `abci-cli info`, we open a new connection to the ABCI +server, which calls the `Info()` method on the application, which tells +us the number of transactions in our Merkle tree. + +Now, since every command opens a new connection, we provide the +`abci-cli console` and `abci-cli batch` commands, to allow multiple ABCI +messages to be sent over a single connection. + +Running `abci-cli console` should drop you in an interactive console for +speaking ABCI messages to your application. + +Try running these commands: + + > echo hello + -> code: OK + -> data: hello + -> data.hex: 0x68656C6C6F + + > info + -> code: OK + -> data: {"size":0} + -> data.hex: 0x7B2273697A65223A307D + + > commit + -> code: OK + -> data.hex: 0x0000000000000000 + + > deliver_tx "abc" + -> code: OK + + > info + -> code: OK + -> data: {"size":1} + -> data.hex: 0x7B2273697A65223A317D + + > commit + -> code: OK + -> data.hex: 0x0200000000000000 + + > query "abc" + -> code: OK + -> log: exists + -> height: 0 + -> value: abc + -> value.hex: 616263 + + > deliver_tx "def=xyz" + -> code: OK + + > commit + -> code: OK + -> data.hex: 0x0400000000000000 + + > query "def" + -> code: OK + -> log: exists + -> height: 0 + -> value: xyz + -> value.hex: 78797A + +Note that if we do `deliver_tx "abc"` it will store `(abc, abc)`, but if +we do `deliver_tx "abc=efg"` it will store `(abc, efg)`. + +Similarly, you could put the commands in a file and run +`abci-cli --verbose batch < myfile`. + +## Counter - Another Example + +Now that we've got the hang of it, let's try another application, the +"counter" app. + +Like the kvstore app, its code can be found +[here](https://github.com/tendermint/abci/blob/master/cmd/abci-cli/abci-cli.go) +and looks like: + + func cmdCounter(cmd *cobra.Command, args []string) error { + + app := counter.NewCounterApplication(flagSerial) + + logger := log.NewTMLogger(log.NewSyncWriter(os.Stdout)) + + // Start the listener + srv, err := server.NewServer(flagAddrC, flagAbci, app) + if err != nil { + return err + } + srv.SetLogger(logger.With("module", "abci-server")) + if err := srv.Start(); err != nil { + return err + } + + // Wait forever + cmn.TrapSignal(func() { + // Cleanup + srv.Stop() + }) + return nil + } + +The counter app doesn't use a Merkle tree, it just counts how many times +we've sent a transaction, asked for a hash, or committed the state. The +result of `commit` is just the number of transactions sent. + +This application has two modes: `serial=off` and `serial=on`. + +When `serial=on`, transactions must be a big-endian encoded incrementing +integer, starting at 0. + +If `serial=off`, there are no restrictions on transactions. + +We can toggle the value of `serial` using the `set_option` ABCI message. + +When `serial=on`, some transactions are invalid. In a live blockchain, +transactions collect in memory before they are committed into blocks. To +avoid wasting resources on invalid transactions, ABCI provides the +`check_tx` message, which application developers can use to accept or +reject transactions, before they are stored in memory or gossipped to +other peers. + +In this instance of the counter app, `check_tx` only allows transactions +whose integer is greater than the last committed one. + +Let's kill the console and the kvstore application, and start the +counter app: + + abci-cli counter + +In another window, start the `abci-cli console`: + + > set_option serial on + -> code: OK + -> log: OK (SetOption doesn't return anything.) + + > check_tx 0x00 + -> code: OK + + > check_tx 0xff + -> code: OK + + > deliver_tx 0x00 + -> code: OK + + > check_tx 0x00 + -> code: BadNonce + -> log: Invalid nonce. Expected >= 1, got 0 + + > deliver_tx 0x01 + -> code: OK + + > deliver_tx 0x04 + -> code: BadNonce + -> log: Invalid nonce. Expected 2, got 4 + + > info + -> code: OK + -> data: {"hashes":0,"txs":2} + -> data.hex: 0x7B22686173686573223A302C22747873223A327D + +This is a very simple application, but between `counter` and `kvstore`, +its easy to see how you can build out arbitrary application states on +top of the ABCI. [Hyperledger's +Burrow](https://github.com/hyperledger/burrow) also runs atop ABCI, +bringing with it Ethereum-like accounts, the Ethereum virtual-machine, +Monax's permissioning scheme, and native contracts extensions. + +But the ultimate flexibility comes from being able to write the +application easily in any language. + +We have implemented the counter in a number of languages [see the +example directory](https://github.com/tendermint/abci/tree/master/example). + +To run the Node JS version, `cd` to `example/js` and run + + node app.js + +(you'll have to kill the other counter application process). In another +window, run the console and those previous ABCI commands. You should get +the same results as for the Go version. + +## Bounties + +Want to write the counter app in your favorite language?! We'd be happy +to add you to our [ecosystem](https://tendermint.com/ecosystem)! We're +also offering [bounties](https://hackerone.com/tendermint/) for +implementations in new languages! + +The `abci-cli` is designed strictly for testing and debugging. In a real +deployment, the role of sending messages is taken by Tendermint, which +connects to the app using three separate connections, each with its own +pattern of messages. + +For more information, see the [application developers +guide](./app-development.html). For examples of running an ABCI app with +Tendermint, see the [getting started guide](./getting-started.html). +Next is the ABCI specification. diff --git a/docs/app-architecture.md b/docs/app-architecture.md new file mode 100644 index 000000000..64b1a3794 --- /dev/null +++ b/docs/app-architecture.md @@ -0,0 +1,50 @@ +# Application Architecture Guide + +Here we provide a brief guide on the recommended architecture of a +Tendermint blockchain application. + +The following diagram provides a superb example: + + + +The end-user application here is the Cosmos Voyager, at the bottom left. +Voyager communicates with a REST API exposed by a local Light-Client +Daemon. The Light-Client Daemon is an application specific program that +communicates with Tendermint nodes and verifies Tendermint light-client +proofs through the Tendermint Core RPC. The Tendermint Core process +communicates with a local ABCI application, where the user query or +transaction is actually processed. + +The ABCI application must be a deterministic result of the Tendermint +consensus - any external influence on the application state that didn't +come through Tendermint could cause a consensus failure. Thus *nothing* +should communicate with the application except Tendermint via ABCI. + +If the application is written in Go, it can be compiled into the +Tendermint binary. Otherwise, it should use a unix socket to communicate +with Tendermint. If it's necessary to use TCP, extra care must be taken +to encrypt and authenticate the connection. + +All reads from the app happen through the Tendermint `/abci_query` +endpoint. All writes to the app happen through the Tendermint +`/broadcast_tx_*` endpoints. + +The Light-Client Daemon is what provides light clients (end users) with +nearly all the security of a full node. It formats and broadcasts +transactions, and verifies proofs of queries and transaction results. +Note that it need not be a daemon - the Light-Client logic could instead +be implemented in the same process as the end-user application. + +Note for those ABCI applications with weaker security requirements, the +functionality of the Light-Client Daemon can be moved into the ABCI +application process itself. That said, exposing the application process +to anything besides Tendermint over ABCI requires extreme caution, as +all transactions, and possibly all queries, should still pass through +Tendermint. + +See the following for more extensive documentation: +- [Interchain Standard for the Light-Client REST API](https://github.com/cosmos/cosmos-sdk/pull/1028) +- [Tendermint RPC Docs](https://tendermint.github.io/slate/) +- [Tendermint in Production](https://github.com/tendermint/tendermint/pull/1618) +- [Tendermint Basics](https://tendermint.readthedocs.io/en/master/using-tendermint.html) +- [ABCI spec](https://github.com/tendermint/abci/blob/develop/specification.md) diff --git a/docs/app-development.md b/docs/app-development.md new file mode 100644 index 000000000..488657670 --- /dev/null +++ b/docs/app-development.md @@ -0,0 +1,527 @@ +# Application Development Guide + +## ABCI Design + +The purpose of ABCI is to provide a clean interface between state +transition machines on one computer and the mechanics of their +replication across multiple computers. The former we call 'application +logic' and the latter the 'consensus engine'. Application logic +validates transactions and optionally executes transactions against some +persistent state. A consensus engine ensures all transactions are +replicated in the same order on every machine. We call each machine in a +consensus engine a 'validator', and each validator runs the same +transactions through the same application logic. In particular, we are +interested in blockchain-style consensus engines, where transactions are +committed in hash-linked blocks. + +The ABCI design has a few distinct components: + +- message protocol + - pairs of request and response messages + - consensus makes requests, application responds + - defined using protobuf +- server/client + - consensus engine runs the client + - application runs the server + - two implementations: + - async raw bytes + - grpc +- blockchain protocol + - abci is connection oriented + - Tendermint Core maintains three connections: + - [mempool connection](#mempool-connection): for checking if + transactions should be relayed before they are committed; + only uses `CheckTx` + - [consensus connection](#consensus-connection): for executing + transactions that have been committed. Message sequence is + -for every block + -`BeginBlock, [DeliverTx, ...], EndBlock, Commit` + - [query connection](#query-connection): for querying the + application state; only uses Query and Info + +The mempool and consensus logic act as clients, and each maintains an +open ABCI connection with the application, which hosts an ABCI server. +Shown are the request and response types sent on each connection. + +## Message Protocol + +The message protocol consists of pairs of requests and responses. Some +messages have no fields, while others may include byte-arrays, strings, +or integers. See the `message Request` and `message Response` +definitions in [the protobuf definition +file](https://github.com/tendermint/abci/blob/master/types/types.proto), +and the [protobuf +documentation](https://developers.google.com/protocol-buffers/docs/overview) +for more details. + +For each request, a server should respond with the corresponding +response, where order of requests is preserved in the order of +responses. + +## Server + +To use ABCI in your programming language of choice, there must be a ABCI +server in that language. Tendermint supports two kinds of implementation +of the server: + +- Asynchronous, raw socket server (Tendermint Socket Protocol, also + known as TSP or Teaspoon) +- GRPC + +Both can be tested using the `abci-cli` by setting the `--abci` flag +appropriately (ie. to `socket` or `grpc`). + +See examples, in various stages of maintenance, in +[Go](https://github.com/tendermint/abci/tree/master/server), +[JavaScript](https://github.com/tendermint/js-abci), +[Python](https://github.com/tendermint/abci/tree/master/example/python3/abci), +[C++](https://github.com/mdyring/cpp-tmsp), and +[Java](https://github.com/jTendermint/jabci). + +### GRPC + +If GRPC is available in your language, this is the easiest approach, +though it will have significant performance overhead. + +To get started with GRPC, copy in the [protobuf +file](https://github.com/tendermint/abci/blob/master/types/types.proto) +and compile it using the GRPC plugin for your language. For instance, +for golang, the command is `protoc --go_out=plugins=grpc:. types.proto`. +See the [grpc documentation for more details](http://www.grpc.io/docs/). +`protoc` will autogenerate all the necessary code for ABCI client and +server in your language, including whatever interface your application +must satisfy to be used by the ABCI server for handling requests. + +### TSP + +If GRPC is not available in your language, or you require higher +performance, or otherwise enjoy programming, you may implement your own +ABCI server using the Tendermint Socket Protocol, known affectionately +as Teaspoon. The first step is still to auto-generate the relevant data +types and codec in your language using `protoc`. Messages coming over +the socket are Protobuf3 encoded, but additionally length-prefixed to +facilitate use as a streaming protocol. Protobuf3 doesn't have an +official length-prefix standard, so we use our own. The first byte in +the prefix represents the length of the Big Endian encoded length. The +remaining bytes in the prefix are the Big Endian encoded length. + +For example, if the Protobuf3 encoded ABCI message is 0xDEADBEEF (4 +bytes), the length-prefixed message is 0x0104DEADBEEF. If the Protobuf3 +encoded ABCI message is 65535 bytes long, the length-prefixed message +would be like 0x02FFFF.... + +Note this prefixing does not apply for grpc. + +An ABCI server must also be able to support multiple connections, as +Tendermint uses three connections. + +## Client + +There are currently two use-cases for an ABCI client. One is a testing +tool, as in the `abci-cli`, which allows ABCI requests to be sent via +command line. The other is a consensus engine, such as Tendermint Core, +which makes requests to the application every time a new transaction is +received or a block is committed. + +It is unlikely that you will need to implement a client. For details of +our client, see +[here](https://github.com/tendermint/abci/tree/master/client). + +Most of the examples below are from [kvstore +application](https://github.com/tendermint/abci/blob/master/example/kvstore/kvstore.go), +which is a part of the abci repo. [persistent_kvstore +application](https://github.com/tendermint/abci/blob/master/example/kvstore/persistent_kvstore.go) +is used to show `BeginBlock`, `EndBlock` and `InitChain` example +implementations. + +## Blockchain Protocol + +In ABCI, a transaction is simply an arbitrary length byte-array. It is +the application's responsibility to define the transaction codec as they +please, and to use it for both CheckTx and DeliverTx. + +Note that there are two distinct means for running transactions, +corresponding to stages of 'awareness' of the transaction in the +network. The first stage is when a transaction is received by a +validator from a client into the so-called mempool or transaction pool +-this is where we use CheckTx. The second is when the transaction is +successfully committed on more than 2/3 of validators - where we use +DeliverTx. In the former case, it may not be necessary to run all the +state transitions associated with the transaction, as the transaction +may not ultimately be committed until some much later time, when the +result of its execution will be different. For instance, an Ethereum +ABCI app would check signatures and amounts in CheckTx, but would not +actually execute any contract code until the DeliverTx, so as to avoid +executing state transitions that have not been finalized. + +To formalize the distinction further, two explicit ABCI connections are +made between Tendermint Core and the application: the mempool connection +and the consensus connection. We also make a third connection, the query +connection, to query the local state of the app. + +### Mempool Connection + +The mempool connection is used *only* for CheckTx requests. Transactions +are run using CheckTx in the same order they were received by the +validator. If the CheckTx returns `OK`, the transaction is kept in +memory and relayed to other peers in the same order it was received. +Otherwise, it is discarded. + +CheckTx requests run concurrently with block processing; so they should +run against a copy of the main application state which is reset after +every block. This copy is necessary to track transitions made by a +sequence of CheckTx requests before they are included in a block. When a +block is committed, the application must ensure to reset the mempool +state to the latest committed state. Tendermint Core will then filter +through all transactions in the mempool, removing any that were included +in the block, and re-run the rest using CheckTx against the post-Commit +mempool state (this behaviour can be turned off with +`[mempool] recheck = false`). + +In go: + + func (app *KVStoreApplication) CheckTx(tx []byte) types.Result { + return types.OK + } + +In Java: + + ResponseCheckTx requestCheckTx(RequestCheckTx req) { + byte[] transaction = req.getTx().toByteArray(); + + // validate transaction + + if (notValid) { + return ResponseCheckTx.newBuilder().setCode(CodeType.BadNonce).setLog("invalid tx").build(); + } else { + return ResponseCheckTx.newBuilder().setCode(CodeType.OK).build(); + } + } + +### Replay Protection + +To prevent old transactions from being replayed, CheckTx must implement +replay protection. + +Tendermint provides the first defence layer by keeping a lightweight +in-memory cache of 100k (`[mempool] cache_size`) last transactions in +the mempool. If Tendermint is just started or the clients sent more than +100k transactions, old transactions may be sent to the application. So +it is important CheckTx implements some logic to handle them. + +There are cases where a transaction will (or may) become valid in some +future state, in which case you probably want to disable Tendermint's +cache. You can do that by setting `[mempool] cache_size = 0` in the +config. + +### Consensus Connection + +The consensus connection is used only when a new block is committed, and +communicates all information from the block in a series of requests: +`BeginBlock, [DeliverTx, ...], EndBlock, Commit`. That is, when a block +is committed in the consensus, we send a list of DeliverTx requests (one +for each transaction) sandwiched by BeginBlock and EndBlock requests, +and followed by a Commit. + +### DeliverTx + +DeliverTx is the workhorse of the blockchain. Tendermint sends the +DeliverTx requests asynchronously but in order, and relies on the +underlying socket protocol (ie. TCP) to ensure they are received by the +app in order. They have already been ordered in the global consensus by +the Tendermint protocol. + +DeliverTx returns a abci.Result, which includes a Code, Data, and Log. +The code may be non-zero (non-OK), meaning the corresponding transaction +should have been rejected by the mempool, but may have been included in +a block by a Byzantine proposer. + +The block header will be updated (TODO) to include some commitment to +the results of DeliverTx, be it a bitarray of non-OK transactions, or a +merkle root of the data returned by the DeliverTx requests, or both. + +In go: + + // tx is either "key=value" or just arbitrary bytes + func (app *KVStoreApplication) DeliverTx(tx []byte) types.Result { + parts := strings.Split(string(tx), "=") + if len(parts) == 2 { + app.state.Set([]byte(parts[0]), []byte(parts[1])) + } else { + app.state.Set(tx, tx) + } + return types.OK + } + +In Java: + + /** + * Using Protobuf types from the protoc compiler, we always start with a byte[] + */ + ResponseDeliverTx deliverTx(RequestDeliverTx request) { + byte[] transaction = request.getTx().toByteArray(); + + // validate your transaction + + if (notValid) { + return ResponseDeliverTx.newBuilder().setCode(CodeType.BadNonce).setLog("transaction was invalid").build(); + } else { + ResponseDeliverTx.newBuilder().setCode(CodeType.OK).build(); + } + + } + +### Commit + +Once all processing of the block is complete, Tendermint sends the +Commit request and blocks waiting for a response. While the mempool may +run concurrently with block processing (the BeginBlock, DeliverTxs, and +EndBlock), it is locked for the Commit request so that its state can be +safely reset during Commit. This means the app *MUST NOT* do any +blocking communication with the mempool (ie. broadcast\_tx) during +Commit, or there will be deadlock. Note also that all remaining +transactions in the mempool are replayed on the mempool connection +(CheckTx) following a commit. + +The app should respond to the Commit request with a byte array, which is +the deterministic state root of the application. It is included in the +header of the next block. It can be used to provide easily verified +Merkle-proofs of the state of the application. + +It is expected that the app will persist state to disk on Commit. The +option to have all transactions replayed from some previous block is the +job of the [Handshake](#handshake). + +In go: + + func (app *KVStoreApplication) Commit() types.Result { + hash := app.state.Hash() + return types.NewResultOK(hash, "") + } + +In Java: + + ResponseCommit requestCommit(RequestCommit requestCommit) { + + // update the internal app-state + byte[] newAppState = calculateAppState(); + + // and return it to the node + return ResponseCommit.newBuilder().setCode(CodeType.OK).setData(ByteString.copyFrom(newAppState)).build(); + } + +### BeginBlock + +The BeginBlock request can be used to run some code at the beginning of +every block. It also allows Tendermint to send the current block hash +and header to the application, before it sends any of the transactions. + +The app should remember the latest height and header (ie. from which it +has run a successful Commit) so that it can tell Tendermint where to +pick up from when it restarts. See information on the Handshake, below. + +In go: + + // Track the block hash and header information + func (app *PersistentKVStoreApplication) BeginBlock(params types.RequestBeginBlock) { + // update latest block info + app.blockHeader = params.Header + + // reset valset changes + app.changes = make([]*types.Validator, 0) + } + +In Java: + + /* + * all types come from protobuf definition + */ + ResponseBeginBlock requestBeginBlock(RequestBeginBlock req) { + + Header header = req.getHeader(); + byte[] prevAppHash = header.getAppHash().toByteArray(); + long prevHeight = header.getHeight(); + long numTxs = header.getNumTxs(); + + // run your pre-block logic. Maybe prepare a state snapshot, message components, etc + + return ResponseBeginBlock.newBuilder().build(); + } + +### EndBlock + +The EndBlock request can be used to run some code at the end of every +block. Additionally, the response may contain a list of validators, +which can be used to update the validator set. To add a new validator or +update an existing one, simply include them in the list returned in the +EndBlock response. To remove one, include it in the list with a `power` +equal to `0`. Tendermint core will take care of updating the validator +set. Note the change in voting power must be strictly less than 1/3 per +block if you want a light client to be able to prove the transition +externally. See the [light client +docs](https://godoc.org/github.com/tendermint/tendermint/lite#hdr-How_We_Track_Validators) +for details on how it tracks validators. + +In go: + + // Update the validator set + func (app *PersistentKVStoreApplication) EndBlock(req types.RequestEndBlock) types.ResponseEndBlock { + return types.ResponseEndBlock{ValidatorUpdates: app.ValUpdates} + } + +In Java: + + /* + * Assume that one validator changes. The new validator has a power of 10 + */ + ResponseEndBlock requestEndBlock(RequestEndBlock req) { + final long currentHeight = req.getHeight(); + final byte[] validatorPubKey = getValPubKey(); + + ResponseEndBlock.Builder builder = ResponseEndBlock.newBuilder(); + builder.addDiffs(1, Types.Validator.newBuilder().setPower(10L).setPubKey(ByteString.copyFrom(validatorPubKey)).build()); + + return builder.build(); + } + +### Query Connection + +This connection is used to query the application without engaging +consensus. It's exposed over the tendermint core rpc, so clients can +query the app without exposing a server on the app itself, but they must +serialize each query as a single byte array. Additionally, certain +"standardized" queries may be used to inform local decisions, for +instance about which peers to connect to. + +Tendermint Core currently uses the Query connection to filter peers upon +connecting, according to IP address or public key. For instance, +returning non-OK ABCI response to either of the following queries will +cause Tendermint to not connect to the corresponding peer: + +- `p2p/filter/addr/`, where `` is an IP address. +- `p2p/filter/pubkey/`, where `` is the hex-encoded + ED25519 key of the node (not it's validator key) + +Note: these query formats are subject to change! + +In go: + + func (app *KVStoreApplication) Query(reqQuery types.RequestQuery) (resQuery types.ResponseQuery) { + if reqQuery.Prove { + value, proof, exists := app.state.Proof(reqQuery.Data) + resQuery.Index = -1 // TODO make Proof return index + resQuery.Key = reqQuery.Data + resQuery.Value = value + resQuery.Proof = proof + if exists { + resQuery.Log = "exists" + } else { + resQuery.Log = "does not exist" + } + return + } else { + index, value, exists := app.state.Get(reqQuery.Data) + resQuery.Index = int64(index) + resQuery.Value = value + if exists { + resQuery.Log = "exists" + } else { + resQuery.Log = "does not exist" + } + return + } + } + +In Java: + + ResponseQuery requestQuery(RequestQuery req) { + final boolean isProveQuery = req.getProve(); + final ResponseQuery.Builder responseBuilder = ResponseQuery.newBuilder(); + + if (isProveQuery) { + com.app.example.ProofResult proofResult = generateProof(req.getData().toByteArray()); + final byte[] proofAsByteArray = proofResult.getAsByteArray(); + + responseBuilder.setProof(ByteString.copyFrom(proofAsByteArray)); + responseBuilder.setKey(req.getData()); + responseBuilder.setValue(ByteString.copyFrom(proofResult.getData())); + responseBuilder.setLog(result.getLogValue()); + } else { + byte[] queryData = req.getData().toByteArray(); + + final com.app.example.QueryResult result = generateQueryResult(queryData); + + responseBuilder.setIndex(result.getIndex()); + responseBuilder.setValue(ByteString.copyFrom(result.getValue())); + responseBuilder.setLog(result.getLogValue()); + } + + return responseBuilder.build(); + } + +### Handshake + +When the app or tendermint restarts, they need to sync to a common +height. When an ABCI connection is first established, Tendermint will +call `Info` on the Query connection. The response should contain the +LastBlockHeight and LastBlockAppHash - the former is the last block for +which the app ran Commit successfully, the latter is the response from +that Commit. + +Using this information, Tendermint will determine what needs to be +replayed, if anything, against the app, to ensure both Tendermint and +the app are synced to the latest block height. + +If the app returns a LastBlockHeight of 0, Tendermint will just replay +all blocks. + +In go: + + func (app *KVStoreApplication) Info(req types.RequestInfo) (resInfo types.ResponseInfo) { + return types.ResponseInfo{Data: cmn.Fmt("{\"size\":%v}", app.state.Size())} + } + +In Java: + + ResponseInfo requestInfo(RequestInfo req) { + final byte[] lastAppHash = getLastAppHash(); + final long lastHeight = getLastHeight(); + return ResponseInfo.newBuilder().setLastBlockAppHash(ByteString.copyFrom(lastAppHash)).setLastBlockHeight(lastHeight).build(); + } + +### Genesis + +`InitChain` will be called once upon the genesis. `params` includes the +initial validator set. Later on, it may be extended to take parts of the +consensus params. + +In go: + + // Save the validators in the merkle tree + func (app *PersistentKVStoreApplication) InitChain(params types.RequestInitChain) { + for _, v := range params.Validators { + r := app.updateValidator(v) + if r.IsErr() { + app.logger.Error("Error updating validators", "r", r) + } + } + } + +In Java: + + /* + * all types come from protobuf definition + */ + ResponseInitChain requestInitChain(RequestInitChain req) { + final int validatorsCount = req.getValidatorsCount(); + final List validatorsList = req.getValidatorsList(); + + validatorsList.forEach((validator) -> { + long power = validator.getPower(); + byte[] validatorPubKey = validator.getPubKey().toByteArray(); + + // do somehing for validator setup in app + }); + + return ResponseInitChain.newBuilder().build(); + } diff --git a/docs/architecture/README.md b/docs/architecture/README.md new file mode 100644 index 000000000..9e41d3064 --- /dev/null +++ b/docs/architecture/README.md @@ -0,0 +1,5 @@ +# Architecture Decision Records + +This is a location to record all high-level architecture decisions in the tendermint project. Not the implementation details, but the reasoning that happened. This should be refered to for guidance of the "right way" to extend the application. And if we notice that the original decisions were lacking, we should have another open discussion, record the new decisions here, and then modify the code to match. + +Read up on the concept in this [blog post](https://product.reverb.com/documenting-architecture-decisions-the-reverb-way-a3563bb24bd0#.78xhdix6t). diff --git a/docs/architecture/adr-001-logging.md b/docs/architecture/adr-001-logging.md new file mode 100644 index 000000000..a11a49e14 --- /dev/null +++ b/docs/architecture/adr-001-logging.md @@ -0,0 +1,216 @@ +# ADR 1: Logging + +## Context + +Current logging system in Tendermint is very static and not flexible enough. + +Issues: [358](https://github.com/tendermint/tendermint/issues/358), [375](https://github.com/tendermint/tendermint/issues/375). + +What we want from the new system: + +- per package dynamic log levels +- dynamic logger setting (logger tied to the processing struct) +- conventions +- be more visually appealing + +"dynamic" here means the ability to set smth in runtime. + +## Decision + +### 1) An interface + +First, we will need an interface for all of our libraries (`tmlibs`, Tendermint, etc.). My personal preference is go-kit `Logger` interface (see Appendix A.), but that is too much a bigger change. Plus we will still need levels. + +```go +# log.go +type Logger interface { + Debug(msg string, keyvals ...interface{}) error + Info(msg string, keyvals ...interface{}) error + Error(msg string, keyvals ...interface{}) error + + With(keyvals ...interface{}) Logger +} +``` + +On a side note: difference between `Info` and `Notice` is subtle. We probably +could do without `Notice`. Don't think we need `Panic` or `Fatal` as a part of +the interface. These funcs could be implemented as helpers. In fact, we already +have some in `tmlibs/common`. + +- `Debug` - extended output for devs +- `Info` - all that is useful for a user +- `Error` - errors + +`Notice` should become `Info`, `Warn` either `Error` or `Debug` depending on the message, `Crit` -> `Error`. + +This interface should go into `tmlibs/log`. All libraries which are part of the core (tendermint/tendermint) should obey it. + +### 2) Logger with our current formatting + +On top of this interface, we will need to implement a stdout logger, which will be used when Tendermint is configured to output logs to STDOUT. + +Many people say that they like the current output, so let's stick with it. + +``` +NOTE[04-25|14:45:08] ABCI Replay Blocks module=consensus appHeight=0 storeHeight=0 stateHeight=0 +``` + +Couple of minor changes: + +``` +I[04-25|14:45:08.322] ABCI Replay Blocks module=consensus appHeight=0 storeHeight=0 stateHeight=0 +``` + +Notice the level is encoded using only one char plus milliseconds. + +Note: there are many other formats out there like [logfmt](https://brandur.org/logfmt). + +This logger could be implemented using any logger - [logrus](https://github.com/sirupsen/logrus), [go-kit/log](https://github.com/go-kit/kit/tree/master/log), [zap](https://github.com/uber-go/zap), log15 so far as it + +a) supports coloring output
+b) is moderately fast (buffering)
+c) conforms to the new interface or adapter could be written for it
+d) is somewhat configurable
+ +go-kit is my favorite so far. Check out how easy it is to color errors in red https://github.com/go-kit/kit/blob/master/log/term/example_test.go#L12. Although, coloring could only be applied to the whole string :( + +``` +go-kit +: flexible, modular +go-kit “-”: logfmt format https://brandur.org/logfmt + +logrus +: popular, feature rich (hooks), API and output is more like what we want +logrus -: not so flexible +``` + +```go +# tm_logger.go +// NewTmLogger returns a logger that encodes keyvals to the Writer in +// tm format. +func NewTmLogger(w io.Writer) Logger { + return &tmLogger{kitlog.NewLogfmtLogger(w)} +} + +func (l tmLogger) SetLevel(level string() { + switch (level) { + case "debug": + l.sourceLogger = level.NewFilter(l.sourceLogger, level.AllowDebug()) + } +} + +func (l tmLogger) Info(msg string, keyvals ...interface{}) error { + l.sourceLogger.Log("msg", msg, keyvals...) +} + +# log.go +func With(logger Logger, keyvals ...interface{}) Logger { + kitlog.With(logger.sourceLogger, keyvals...) +} +``` + +Usage: + +```go +logger := log.NewTmLogger(os.Stdout) +logger.SetLevel(config.GetString("log_level")) +node.SetLogger(log.With(logger, "node", Name)) +``` + +**Other log formatters** + +In the future, we may want other formatters like JSONFormatter. + +``` +{ "level": "notice", "time": "2017-04-25 14:45:08.562471297 -0400 EDT", "module": "consensus", "msg": "ABCI Replay Blocks", "appHeight": 0, "storeHeight": 0, "stateHeight": 0 } +``` + +### 3) Dynamic logger setting + +https://dave.cheney.net/2017/01/23/the-package-level-logger-anti-pattern + +This is the hardest part and where the most work will be done. logger should be tied to the processing struct, or the context if it adds some fields to the logger. + +```go +type BaseService struct { + log log15.Logger + name string + started uint32 // atomic + stopped uint32 // atomic +... +} +``` + +BaseService already contains `log` field, so most of the structs embedding it should be fine. We should rename it to `logger`. + +The only thing missing is the ability to set logger: + +``` +func (bs *BaseService) SetLogger(l log.Logger) { + bs.logger = l +} +``` + +### 4) Conventions + +Important keyvals should go first. Example: + +``` +correct +I[04-25|14:45:08.322] ABCI Replay Blocks module=consensus instance=1 appHeight=0 storeHeight=0 stateHeight=0 +``` + +not + +``` +wrong +I[04-25|14:45:08.322] ABCI Replay Blocks module=consensus appHeight=0 storeHeight=0 stateHeight=0 instance=1 +``` + +for that in most cases you'll need to add `instance` field to a logger upon creating, not when u log a particular message: + +```go +colorFn := func(keyvals ...interface{}) term.FgBgColor { + for i := 1; i < len(keyvals); i += 2 { + if keyvals[i] == "instance" && keyvals[i+1] == "1" { + return term.FgBgColor{Fg: term.Blue} + } else if keyvals[i] == "instance" && keyvals[i+1] == "1" { + return term.FgBgColor{Fg: term.Red} + } + } + return term.FgBgColor{} + } +logger := term.NewLogger(os.Stdout, log.NewTmLogger, colorFn) + +c1 := NewConsensusReactor(...) +c1.SetLogger(log.With(logger, "instance", 1)) + +c2 := NewConsensusReactor(...) +c2.SetLogger(log.With(logger, "instance", 2)) +``` + +## Status + +proposed + +## Consequences + +### Positive + +Dynamic logger, which could be turned off for some modules at runtime. Public interface for other projects using Tendermint libraries. + +### Negative + +We may loose the ability to color keys in keyvalue pairs. go-kit allow you to easily change foreground / background colors of the whole string, but not its parts. + +### Neutral + +## Appendix A. + +I really like a minimalistic approach go-kit took with his logger https://github.com/go-kit/kit/tree/master/log: + +``` +type Logger interface { + Log(keyvals ...interface{}) error +} +``` + +See [The Hunt for a Logger Interface](https://go-talks.appspot.com/github.com/ChrisHines/talks/structured-logging/structured-logging.slide). The advantage is greater composability (check out how go-kit defines colored logging or log-leveled logging on top of this interface https://github.com/go-kit/kit/tree/master/log). diff --git a/docs/architecture/adr-002-event-subscription.md b/docs/architecture/adr-002-event-subscription.md new file mode 100644 index 000000000..cc207c4af --- /dev/null +++ b/docs/architecture/adr-002-event-subscription.md @@ -0,0 +1,90 @@ +# ADR 2: Event Subscription + +## Context + +In the light client (or any other client), the user may want to **subscribe to +a subset of transactions** (rather than all of them) using `/subscribe?event=X`. For +example, I want to subscribe for all transactions associated with a particular +account. Same for fetching. The user may want to **fetch transactions based on +some filter** (rather than fetching all the blocks). For example, I want to get +all transactions for a particular account in the last two weeks (`tx's block +time >= '2017-06-05'`). + +Now you can't even subscribe to "all txs" in Tendermint. + +The goal is a simple and easy to use API for doing that. + +![Tx Send Flow Diagram](img/tags1.png) + +## Decision + +ABCI app return tags with a `DeliverTx` response inside the `data` field (_for +now, later we may create a separate field_). Tags is a list of key-value pairs, +protobuf encoded. + +Example data: + +```json +{ + "abci.account.name": "Igor", + "abci.account.address": "0xdeadbeef", + "tx.gas": 7 +} +``` + +### Subscribing for transactions events + +If the user wants to receive only a subset of transactions, ABCI-app must +return a list of tags with a `DeliverTx` response. These tags will be parsed and +matched with the current queries (subscribers). If the query matches the tags, +subscriber will get the transaction event. + +``` +/subscribe?query="tm.event = Tx AND tx.hash = AB0023433CF0334223212243BDD AND abci.account.invoice.number = 22" +``` + +A new package must be developed to replace the current `events` package. It +will allow clients to subscribe to a different types of events in the future: + +``` +/subscribe?query="abci.account.invoice.number = 22" +/subscribe?query="abci.account.invoice.owner CONTAINS Igor" +``` + +### Fetching transactions + +This is a bit tricky because a) we want to support a number of indexers, all of +which have a different API b) we don't know whenever tags will be sufficient +for the most apps (I guess we'll see). + +``` +/txs/search?query="tx.hash = AB0023433CF0334223212243BDD AND abci.account.owner CONTAINS Igor" +/txs/search?query="abci.account.owner = Igor" +``` + +For historic queries we will need a indexing storage (Postgres, SQLite, ...). + +### Issues + +- https://github.com/tendermint/basecoin/issues/91 +- https://github.com/tendermint/tendermint/issues/376 +- https://github.com/tendermint/tendermint/issues/287 +- https://github.com/tendermint/tendermint/issues/525 (related) + +## Status + +proposed + +## Consequences + +### Positive + +- same format for event notifications and search APIs +- powerful enough query + +### Negative + +- performance of the `match` function (where we have too many queries / subscribers) +- there is an issue where there are too many txs in the DB + +### Neutral diff --git a/docs/architecture/adr-003-abci-app-rpc.md b/docs/architecture/adr-003-abci-app-rpc.md new file mode 100644 index 000000000..2775db077 --- /dev/null +++ b/docs/architecture/adr-003-abci-app-rpc.md @@ -0,0 +1,34 @@ +# ADR 3: Must an ABCI-app have an RPC server? + +## Context + +ABCI-server could expose its own RPC-server and act as a proxy to Tendermint. + +The idea was for the Tendermint RPC to just be a transparent proxy to the app. +Clients need to talk to Tendermint for proofs, unless we burden all app devs +with exposing Tendermint proof stuff. Also seems less complex to lock down one +server than two, but granted it makes querying a bit more kludgy since it needs +to be passed as a `Query`. Also, **having a very standard rpc interface means +the light-client can work with all apps and handle proofs**. The only +app-specific logic is decoding the binary data to a more readable form (eg. +json). This is a huge advantage for code-reuse and standardization. + +## Decision + +We dont expose an RPC server on any of our ABCI-apps. + +## Status + +accepted + +## Consequences + +### Positive + +- Unified interface for all apps + +### Negative + +- `Query` interface + +### Neutral diff --git a/docs/architecture/adr-004-historical-validators.md b/docs/architecture/adr-004-historical-validators.md new file mode 100644 index 000000000..be0de22c1 --- /dev/null +++ b/docs/architecture/adr-004-historical-validators.md @@ -0,0 +1,38 @@ +# ADR 004: Historical Validators + +## Context + +Right now, we can query the present validator set, but there is no history. +If you were offline for a long time, there is no way to reconstruct past validators. This is needed for the light client and we agreed needs enhancement of the API. + +## Decision + +For every block, store a new structure that contains either the latest validator set, +or the height of the last block for which the validator set changed. Note this is not +the height of the block which returned the validator set change itself, but the next block, +ie. the first block it comes into effect for. + +Storing the validators will be handled by the `state` package. + +At some point in the future, we may consider more efficient storage in the case where the validators +are updated frequently - for instance by only saving the diffs, rather than the whole set. + +An alternative approach suggested keeping the validator set, or diffs of it, in a merkle IAVL tree. +While it might afford cheaper proofs that a validator set has not changed, it would be more complex, +and likely less efficient. + +## Status + +Accepted. + +## Consequences + +### Positive + +- Can query old validator sets, with proof. + +### Negative + +- Writes an extra structure to disk with every block. + +### Neutral diff --git a/docs/architecture/adr-005-consensus-params.md b/docs/architecture/adr-005-consensus-params.md new file mode 100644 index 000000000..6656d35b2 --- /dev/null +++ b/docs/architecture/adr-005-consensus-params.md @@ -0,0 +1,86 @@ +# ADR 005: Consensus Params + +## Context + +Consensus critical parameters controlling blockchain capacity have until now been hard coded, loaded from a local config, or neglected. +Since they may be need to be different in different networks, and potentially to evolve over time within +networks, we seek to initialize them in a genesis file, and expose them through the ABCI. + +While we have some specific parameters now, like maximum block and transaction size, we expect to have more in the future, +such as a period over which evidence is valid, or the frequency of checkpoints. + +## Decision + +### ConsensusParams + +No consensus critical parameters should ever be found in the `config.toml`. + +A new `ConsensusParams` is optionally included in the `genesis.json` file, +and loaded into the `State`. Any items not included are set to their default value. +A value of 0 is undefined (see ABCI, below). A value of -1 is used to indicate the parameter does not apply. +The parameters are used to determine the validity of a block (and tx) via the union of all relevant parameters. + +``` +type ConsensusParams struct { + BlockSize + TxSize + BlockGossip +} + +type BlockSize struct { + MaxBytes int + MaxTxs int + MaxGas int +} + +type TxSize struct { + MaxBytes int + MaxGas int +} + +type BlockGossip struct { + BlockPartSizeBytes int +} +``` + +The `ConsensusParams` can evolve over time by adding new structs that cover different aspects of the consensus rules. + +The `BlockPartSizeBytes` and the `BlockSize.MaxBytes` are enforced to be greater than 0. +The former because we need a part size, the latter so that we always have at least some sanity check over the size of blocks. + +### ABCI + +#### InitChain + +InitChain currently takes the initial validator set. It should be extended to also take parts of the ConsensusParams. +There is some case to be made for it to take the entire Genesis, except there may be things in the genesis, +like the BlockPartSize, that the app shouldn't really know about. + +#### EndBlock + +The EndBlock response includes a `ConsensusParams`, which includes BlockSize and TxSize, but not BlockGossip. +Other param struct can be added to `ConsensusParams` in the future. +The `0` value is used to denote no change. +Any other value will update that parameter in the `State.ConsensusParams`, to be applied for the next block. +Tendermint should have hard-coded upper limits as sanity checks. + +## Status + +Proposed. + +## Consequences + +### Positive + +- Alternative capacity limits and consensus parameters can be specified without re-compiling the software. +- They can also change over time under the control of the application + +### Negative + +- More exposed parameters is more complexity +- Different rules at different heights in the blockchain complicates fast sync + +### Neutral + +- The TxSize, which checks validity, may be in conflict with the config's `max_block_size_tx`, which determines proposal sizes + diff --git a/docs/architecture/adr-006-trust-metric.md b/docs/architecture/adr-006-trust-metric.md new file mode 100644 index 000000000..ec8a0cce7 --- /dev/null +++ b/docs/architecture/adr-006-trust-metric.md @@ -0,0 +1,238 @@ +# ADR 006: Trust Metric Design + +## Context + +The proposed trust metric will allow Tendermint to maintain local trust rankings for peers it has directly interacted with, which can then be used to implement soft security controls. The calculations were obtained from the [TrustGuard](https://dl.acm.org/citation.cfm?id=1060808) project. + +### Background + +The Tendermint Core project developers would like to improve Tendermint security and reliability by keeping track of the level of trustworthiness peers have demonstrated within the peer-to-peer network. This way, undesirable outcomes from peers will not immediately result in them being dropped from the network (potentially causing drastic changes to take place). Instead, peers behavior can be monitored with appropriate metrics and be removed from the network once Tendermint Core is certain the peer is a threat. For example, when the PEXReactor makes a request for peers network addresses from a already known peer, and the returned network addresses are unreachable, this untrustworthy behavior should be tracked. Returning a few bad network addresses probably shouldn’t cause a peer to be dropped, while excessive amounts of this behavior does qualify the peer being dropped. + +Trust metrics can be circumvented by malicious nodes through the use of strategic oscillation techniques, which adapts the malicious node’s behavior pattern in order to maximize its goals. For instance, if the malicious node learns that the time interval of the Tendermint trust metric is *X* hours, then it could wait *X* hours in-between malicious activities. We could try to combat this issue by increasing the interval length, yet this will make the system less adaptive to recent events. + +Instead, having shorter intervals, but keeping a history of interval values, will give our metric the flexibility needed in order to keep the network stable, while also making it resilient against a strategic malicious node in the Tendermint peer-to-peer network. Also, the metric can access trust data over a rather long period of time while not greatly increasing its history size by aggregating older history values over a larger number of intervals, and at the same time, maintain great precision for the recent intervals. This approach is referred to as fading memories, and closely resembles the way human beings remember their experiences. The trade-off to using history data is that the interval values should be preserved in-between executions of the node. + +### References + +S. Mudhakar, L. Xiong, and L. Liu, “TrustGuard: Countering Vulnerabilities in Reputation Management for Decentralized Overlay Networks,” in *Proceedings of the 14th international conference on World Wide Web, pp. 422-431*, May 2005. + +## Decision + +The proposed trust metric will allow a developer to inform the trust metric store of all good and bad events relevant to a peer's behavior, and at any time, the metric can be queried for a peer's current trust ranking. + +The three subsections below will cover the process being considered for calculating the trust ranking, the concept of the trust metric store, and the interface for the trust metric. + +### Proposed Process + +The proposed trust metric will count good and bad events relevant to the object, and calculate the percent of counters that are good over an interval with a predefined duration. This is the procedure that will continue for the life of the trust metric. When the trust metric is queried for the current **trust value**, a resilient equation will be utilized to perform the calculation. + +The equation being proposed resembles a Proportional-Integral-Derivative (PID) controller used in control systems. The proportional component allows us to be sensitive to the value of the most recent interval, while the integral component allows us to incorporate trust values stored in the history data, and the derivative component allows us to give weight to sudden changes in the behavior of a peer. We compute the trust value of a peer in interval i based on its current trust ranking, its trust rating history prior to interval *i* (over the past *maxH* number of intervals) and its trust ranking fluctuation. We will break up the equation into the three components. + +```math +(1) Proportional Value = a * R[i] +``` + +where *R*[*i*] denotes the raw trust value at time interval *i* (where *i* == 0 being current time) and *a* is the weight applied to the contribution of the current reports. The next component of our equation uses a weighted sum over the last *maxH* intervals to calculate the history value for time *i*: + + +`H[i] = ` ![formula1](img/formula1.png "Weighted Sum Formula") + + +The weights can be chosen either optimistically or pessimistically. An optimistic weight creates larger weights for newer history data values, while the the pessimistic weight creates larger weights for time intervals with lower scores. The default weights used during the calculation of the history value are optimistic and calculated as *Wk* = 0.8^*k*, for time interval *k*. With the history value available, we can now finish calculating the integral value: + +```math +(2) Integral Value = b * H[i] +``` + +Where *H*[*i*] denotes the history value at time interval *i* and *b* is the weight applied to the contribution of past performance for the object being measured. The derivative component will be calculated as follows: + +```math +D[i] = R[i] – H[i] + +(3) Derivative Value = c(D[i]) * D[i] +``` + +Where the value of *c* is selected based on the *D*[*i*] value relative to zero. The default selection process makes *c* equal to 0 unless *D*[*i*] is a negative value, in which case c is equal to 1. The result is that the maximum penalty is applied when current behavior is lower than previously experienced behavior. If the current behavior is better than the previously experienced behavior, then the Derivative Value has no impact on the trust value. With the three components brought together, our trust value equation is calculated as follows: + +```math +TrustValue[i] = a * R[i] + b * H[i] + c(D[i]) * D[i] +``` + +As a performance optimization that will keep the amount of raw interval data being saved to a reasonable size of *m*, while allowing us to represent 2^*m* - 1 history intervals, we can employ the fading memories technique that will trade space and time complexity for the precision of the history data values by summarizing larger quantities of less recent values. While our equation above attempts to access up to *maxH* (which can be 2^*m* - 1), we will map those requests down to *m* values using equation 4 below: + +```math +(4) j = index, where index > 0 +``` + +Where *j* is one of *(0, 1, 2, … , m – 1)* indices used to access history interval data. Now we can access the raw intervals using the following calculations: + +```math +R[0] = raw data for current time interval +``` + +`R[j] = ` ![formula2](img/formula2.png "Fading Memories Formula") + +### Trust Metric Store + +Similar to the P2P subsystem AddrBook, the trust metric store will maintain information relevant to Tendermint peers. Additionally, the trust metric store will ensure that trust metrics will only be active for peers that a node is currently and directly engaged with. + +Reactors will provide a peer key to the trust metric store in order to retrieve the associated trust metric. The trust metric can then record new positive and negative events experienced by the reactor, as well as provided the current trust score calculated by the metric. + +When the node is shutting down, the trust metric store will save history data for trust metrics associated with all known peers. This saved information allows experiences with a peer to be preserved across node executions, which can span a tracking windows of days or weeks. The trust history data is loaded automatically during OnStart. + +### Interface Detailed Design + +Each trust metric allows for the recording of positive/negative events, querying the current trust value/score, and the stopping/pausing of tracking over time intervals. This can be seen below: + + +```go + +// TrustMetric - keeps track of peer reliability +type TrustMetric struct { + // Private elements. +} + +// Pause tells the metric to pause recording data over time intervals. +// All method calls that indicate events will unpause the metric +func (tm *TrustMetric) Pause() {} + +// Stop tells the metric to stop recording data over time intervals +func (tm *TrustMetric) Stop() {} + +// BadEvents indicates that an undesirable event(s) took place +func (tm *TrustMetric) BadEvents(num int) {} + +// GoodEvents indicates that a desirable event(s) took place +func (tm *TrustMetric) GoodEvents(num int) {} + +// TrustValue gets the dependable trust value; always between 0 and 1 +func (tm *TrustMetric) TrustValue() float64 {} + +// TrustScore gets a score based on the trust value always between 0 and 100 +func (tm *TrustMetric) TrustScore() int {} + +// NewMetric returns a trust metric with the default configuration +func NewMetric() *TrustMetric {} + +//------------------------------------------------------------------------------------------------ +// For example + +tm := NewMetric() + +tm.BadEvents(1) +score := tm.TrustScore() + +tm.Stop() + +``` + +Some of the trust metric parameters can be configured. The weight values should probably be left alone in more cases, yet the time durations for the tracking window and individual time interval should be considered. + +```go + +// TrustMetricConfig - Configures the weight functions and time intervals for the metric +type TrustMetricConfig struct { + // Determines the percentage given to current behavior + ProportionalWeight float64 + + // Determines the percentage given to prior behavior + IntegralWeight float64 + + // The window of time that the trust metric will track events across. + // This can be set to cover many days without issue + TrackingWindow time.Duration + + // Each interval should be short for adapability. + // Less than 30 seconds is too sensitive, + // and greater than 5 minutes will make the metric numb + IntervalLength time.Duration +} + +// DefaultConfig returns a config with values that have been tested and produce desirable results +func DefaultConfig() TrustMetricConfig {} + +// NewMetricWithConfig returns a trust metric with a custom configuration +func NewMetricWithConfig(tmc TrustMetricConfig) *TrustMetric {} + +//------------------------------------------------------------------------------------------------ +// For example + +config := TrustMetricConfig{ + TrackingWindow: time.Minute * 60 * 24, // one day + IntervalLength: time.Minute * 2, +} + +tm := NewMetricWithConfig(config) + +tm.BadEvents(10) +tm.Pause() +tm.GoodEvents(1) // becomes active again + +``` + +A trust metric store should be created with a DB that has persistent storage so it can save history data across node executions. All trust metrics instantiated by the store will be created with the provided TrustMetricConfig configuration. + +When you attempt to fetch the trust metric for a peer, and an entry does not exist in the trust metric store, a new metric is automatically created and the entry made within the store. + +In additional to the fetching method, GetPeerTrustMetric, the trust metric store provides a method to call when a peer has disconnected from the node. This is so the metric can be paused (history data will not be saved) for periods of time when the node is not having direct experiences with the peer. + +```go + +// TrustMetricStore - Manages all trust metrics for peers +type TrustMetricStore struct { + cmn.BaseService + + // Private elements +} + +// OnStart implements Service +func (tms *TrustMetricStore) OnStart() error {} + +// OnStop implements Service +func (tms *TrustMetricStore) OnStop() {} + +// NewTrustMetricStore returns a store that saves data to the DB +// and uses the config when creating new trust metrics +func NewTrustMetricStore(db dbm.DB, tmc TrustMetricConfig) *TrustMetricStore {} + +// Size returns the number of entries in the trust metric store +func (tms *TrustMetricStore) Size() int {} + +// GetPeerTrustMetric returns a trust metric by peer key +func (tms *TrustMetricStore) GetPeerTrustMetric(key string) *TrustMetric {} + +// PeerDisconnected pauses the trust metric associated with the peer identified by the key +func (tms *TrustMetricStore) PeerDisconnected(key string) {} + +//------------------------------------------------------------------------------------------------ +// For example + +db := dbm.NewDB("trusthistory", "goleveldb", dirPathStr) +tms := NewTrustMetricStore(db, DefaultConfig()) + +tm := tms.GetPeerTrustMetric(key) +tm.BadEvents(1) + +tms.PeerDisconnected(key) + +``` + +## Status + +Approved. + +## Consequences + +### Positive + +- The trust metric will allow Tendermint to make non-binary security and reliability decisions +- Will help Tendermint implement deterrents that provide soft security controls, yet avoids disruption on the network +- Will provide useful profiling information when analyzing performance over time related to peer interaction + +### Negative + +- Requires saving the trust metric history data across node executions + +### Neutral + +- Keep in mind that, good events need to be recorded just as bad events do using this implementation diff --git a/docs/architecture/adr-007-trust-metric-usage.md b/docs/architecture/adr-007-trust-metric-usage.md new file mode 100644 index 000000000..4d833a69f --- /dev/null +++ b/docs/architecture/adr-007-trust-metric-usage.md @@ -0,0 +1,103 @@ +# ADR 007: Trust Metric Usage Guide + +## Context + +Tendermint is required to monitor peer quality in order to inform its peer dialing and peer exchange strategies. + +When a node first connects to the network, it is important that it can quickly find good peers. +Thus, while a node has fewer connections, it should prioritize connecting to higher quality peers. +As the node becomes well connected to the rest of the network, it can dial lesser known or lesser +quality peers and help assess their quality. Similarly, when queried for peers, a node should make +sure they dont return low quality peers. + +Peer quality can be tracked using a trust metric that flags certain behaviours as good or bad. When enough +bad behaviour accumulates, we can mark the peer as bad and disconnect. +For example, when the PEXReactor makes a request for peers network addresses from an already known peer, and the returned network addresses are unreachable, this undesirable behavior should be tracked. Returning a few bad network addresses probably shouldn’t cause a peer to be dropped, while excessive amounts of this behavior does qualify the peer for removal. The originally proposed approach and design document for the trust metric can be found in the [ADR 006](adr-006-trust-metric.md) document. + +The trust metric implementation allows a developer to obtain a peer's trust metric from a trust metric store, and track good and bad events relevant to a peer's behavior, and at any time, the peer's metric can be queried for a current trust value. The current trust value is calculated with a formula that utilizes current behavior, previous behavior, and change between the two. Current behavior is calculated as the percentage of good behavior within a time interval. The time interval is short; probably set between 30 seconds and 5 minutes. On the other hand, the historic data can estimate a peer's behavior over days worth of tracking. At the end of a time interval, the current behavior becomes part of the historic data, and a new time interval begins with the good and bad counters reset to zero. + +These are some important things to keep in mind regarding how the trust metrics handle time intervals and scoring: +- Each new time interval begins with a perfect score +- Bad events quickly bring the score down and good events cause the score to slowly rise +- When the time interval is over, the percentage of good events becomes historic data. + +Some useful information about the inner workings of the trust metric: +- When a trust metric is first instantiated, a timer (ticker) periodically fires in order to handle transitions between trust metric time intervals +- If a peer is disconnected from a node, the timer should be paused, since the node is no longer connected to that peer +- The ability to pause the metric is supported with the store **PeerDisconnected** method and the metric **Pause** method +- After a pause, if a good or bad event method is called on a metric, it automatically becomes unpaused and begins a new time interval. + +## Decision + +The trust metric capability is now available, yet, it still leaves the question of how should it be applied throughout Tendermint in order to properly track the quality of peers? + +### Proposed Process + +Peers are managed using an address book and a trust metric: + +- The address book keeps a record of peers and provides selection methods +- The trust metric tracks the quality of the peers + +#### Presence in Address Book + +Outbound peers are added to the address book before they are dialed, +and inbound peers are added once the peer connection is set up. +Peers are also added to the address book when they are received in response to +a pexRequestMessage. + +While a node has less than `needAddressThreshold`, it will periodically request more, +via pexRequestMessage, from randomly selected peers and from newly dialed outbound peers. + +When a new address is added to an address book that has more than `0.5*needAddressThreshold` addresses, +then with some low probability, a randomly chosen low quality peer is removed. + +#### Outbound Peers + +Peers attempt to maintain a minimum number of outbound connections by +repeatedly querying the address book for peers to connect to. +While a node has few to no outbound connections, the address book is biased to return +higher quality peers. As the node increases the number of outbound connections, +the address book is biased to return less-vetted or lower-quality peers. + +#### Inbound Peers + +Peers also maintain a maximum number of total connections, MaxNumPeers. +If a peer has MaxNumPeers, new incoming connections will be accepted with low probability. +When such a new connection is accepted, the peer disconnects from a probabilistically chosen low ranking peer +so it does not exceed MaxNumPeers. + +#### Peer Exchange + +When a peer receives a pexRequestMessage, it returns a random sample of high quality peers from the address book. Peers with no score or low score should not be inclided in a response to pexRequestMessage. + +#### Peer Quality + +Peer quality is tracked in the connection and across the reactors by storing the TrustMetric in the peer's +thread safe Data store. + +Peer behaviour is then defined as one of the following: +- Fatal - something outright malicious that causes us to disconnect the peer and ban it from the address book for some amount of time +- Bad - Any kind of timeout, messages that don't unmarshal, fail other validity checks, or messages we didn't ask for or aren't expecting (usually worth one bad event) +- Neutral - Unknown channels/message types/version upgrades (no good or bad events recorded) +- Correct - Normal correct behavior (worth one good event) +- Good - some random majority of peers per reactor sending us useful messages (worth more than one good event). + +Note that Fatal behaviour causes us to remove the peer, and neutral behaviour does not affect the score. + +## Status + +Proposed. + +## Consequences + +### Positive + +- Bringing the address book and trust metric store together will cause the network to be built in a way that encourages greater security and reliability. + +### Negative + +- TBD + +### Neutral + +- Keep in mind that, good events need to be recorded just as bad events do using this implementation. diff --git a/docs/architecture/adr-008-priv-validator.md b/docs/architecture/adr-008-priv-validator.md new file mode 100644 index 000000000..4c1d87bed --- /dev/null +++ b/docs/architecture/adr-008-priv-validator.md @@ -0,0 +1,29 @@ +# ADR 008: SocketPV + +Tendermint node's should support only two in-process PrivValidator +implementations: + +- FilePV uses an unencrypted private key in a "priv_validator.json" file - no + configuration required (just `tendermint init`). +- SocketPV uses a socket to send signing requests to another process - user is + responsible for starting that process themselves. + +The SocketPV address can be provided via flags at the command line - doing so +will cause Tendermint to ignore any "priv_validator.json" file and to listen on +the given address for incoming connections from an external priv_validator +process. It will halt any operation until at least one external process +succesfully connected. + +The external priv_validator process will dial the address to connect to +Tendermint, and then Tendermint will send requests on the ensuing connection to +sign votes and proposals. Thus the external process initiates the connection, +but the Tendermint process makes all requests. In a later stage we're going to +support multiple validators for fault tolerance. To prevent double signing they +need to be synced, which is deferred to an external solution (see #1185). + +In addition, Tendermint will provide implementations that can be run in that +external process. These include: + +- FilePV will encrypt the private key, and the user must enter password to + decrypt key when process is started. +- LedgerPV uses a Ledger Nano S to handle all signing. diff --git a/docs/architecture/adr-011-monitoring.md b/docs/architecture/adr-011-monitoring.md new file mode 100644 index 000000000..ca16a9a1c --- /dev/null +++ b/docs/architecture/adr-011-monitoring.md @@ -0,0 +1,116 @@ +# ADR 011: Monitoring + +## Changelog + +08-06-2018: Initial draft +11-06-2018: Reorg after @xla comments +13-06-2018: Clarification about usage of labels + +## Context + +In order to bring more visibility into Tendermint, we would like it to report +metrics and, maybe later, traces of transactions and RPC queries. See +https://github.com/tendermint/tendermint/issues/986. + +A few solutions were considered: + +1. [Prometheus](https://prometheus.io) + a) Prometheus API + b) [go-kit metrics package](https://github.com/go-kit/kit/tree/master/metrics) as an interface plus Prometheus + c) [telegraf](https://github.com/influxdata/telegraf) + d) new service, which will listen to events emitted by pubsub and report metrics +5. [OpenCensus](https://opencensus.io/go/index.html) + +### 1. Prometheus + +Prometheus seems to be the most popular product out there for monitoring. It has +a Go client library, powerful queries, alerts. + +**a) Prometheus API** + +We can commit to using Prometheus in Tendermint, but I think Tendermint users +should be free to choose whatever monitoring tool they feel will better suit +their needs (if they don't have existing one already). So we should try to +abstract interface enough so people can switch between Prometheus and other +similar tools. + +**b) go-kit metrics package as an interface** + +metrics package provides a set of uniform interfaces for service +instrumentation and offers adapters to popular metrics packages: + +https://godoc.org/github.com/go-kit/kit/metrics#pkg-subdirectories + +Comparing to Prometheus API, we're losing customisability and control, but gaining +freedom in choosing any instrument from the above list given we will extract +metrics creation into a separate function (see "providers" in node/node.go). + +**c) telegraf** + +Unlike already discussed options, telegraf does not require modifying Tendermint +source code. You create something called an input plugin, which polls +Tendermint RPC every second and calculates the metrics itself. + +While it may sound good, but some metrics we want to report are not exposed via +RPC or pubsub, therefore can't be accessed externally. + +**d) service, listening to pubsub** + +Same issue as the above. + +### 2. opencensus + +opencensus provides both metrics and tracing, which may be important in the +future. It's API looks different from go-kit and Prometheus, but looks like it +covers everything we need. + +Unfortunately, OpenCensus go client does not define any +interfaces, so if we want to abstract away metrics we +will need to write interfaces ourselves. + +### List of metrics + +| | Name | Type | Description | +| - | --------------------------------------- | ------- | ----------------------------------------------------------------------------- | +| A | consensus_height | Gauge | | +| A | consensus_validators | Gauge | Number of validators who signed | +| A | consensus_validators_power | Gauge | Total voting power of all validators | +| A | consensus_missing_validators | Gauge | Number of validators who did not sign | +| A | consensus_missing_validators_power | Gauge | Total voting power of the missing validators | +| A | consensus_byzantine_validators | Gauge | Number of validators who tried to double sign | +| A | consensus_byzantine_validators_power | Gauge | Total voting power of the byzantine validators | +| A | consensus_block_interval | Timing | Time between this and last block (Block.Header.Time) | +| | consensus_block_time | Timing | Time to create a block (from creating a proposal to commit) | +| | consensus_time_between_blocks | Timing | Time between committing last block and (receiving proposal creating proposal) | +| A | consensus_rounds | Gauge | Number of rounds | +| | consensus_prevotes | Gauge | | +| | consensus_precommits | Gauge | | +| | consensus_prevotes_total_power | Gauge | | +| | consensus_precommits_total_power | Gauge | | +| A | consensus_num_txs | Gauge | | +| A | mempool_size | Gauge | | +| A | consensus_total_txs | Gauge | | +| A | consensus_block_size | Gauge | In bytes | +| A | p2p_peers | Gauge | Number of peers node's connected to | + +`A` - will be implemented in the fist place. + +**Proposed solution** + +## Status + +Proposed. + +## Consequences + +### Positive + +Better visibility, support of variety of monitoring backends + +### Negative + +One more library to audit, messing metrics reporting code with business domain. + +### Neutral + +- diff --git a/docs/architecture/adr-template.md b/docs/architecture/adr-template.md new file mode 100644 index 000000000..2303490ad --- /dev/null +++ b/docs/architecture/adr-template.md @@ -0,0 +1,16 @@ +# ADR 000: Template for an ADR + +## Context + +## Decision + +## Status + + +## Consequences + +### Positive + +### Negative + +### Neutral diff --git a/docs/architecture/img/formula1.png b/docs/architecture/img/formula1.png new file mode 100644 index 0000000000000000000000000000000000000000..447ee30f5734f1b562a26664f16025cd69265b97 GIT binary patch literal 9833 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 pKwu+9vx2t#M;`x6DG$FvU4vE19d12Dwb)i}B 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 TrGQ6-8x16{CRZh6@!@{}Sksjb literal 0 HcmV?d00001 diff --git a/docs/architecture/img/tags1.png b/docs/architecture/img/tags1.png new file mode 100644 index 0000000000000000000000000000000000000000..a6bc64e81568566d13c87996f2e86a41bcaa055a GIT binary patch literal 10446 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 literal 0 HcmV?d00001 diff --git a/docs/assets/a_plus_t.png b/docs/assets/a_plus_t.png new file mode 100644 index 0000000000000000000000000000000000000000..8f5bc5e950cb4ee31a0983f004f780aeb398c6ea GIT binary patch literal 13830 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�&D^D;U> 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 literal 0 HcmV?d00001 diff --git a/docs/assets/consensus_logic.png b/docs/assets/consensus_logic.png new file mode 100644 index 0000000000000000000000000000000000000000..22b70b265711b04c5555b1a1ce982d32bc8aeaec GIT binary patch literal 105454 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≧1Aed5Ns;#T_5JQzsix- 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 H?9cxINgZ4^ literal 0 HcmV?d00001 diff --git a/docs/assets/tm-transaction-flow.png b/docs/assets/tm-transaction-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..ea49080037774b407a06323bf63a83785bbd5f58 GIT binary patch literal 2488459 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ķ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࿡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
2qNdJx5h1 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 ^6D_G!q7=b4;K;x5 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

Ht{;jhteer&n*hq}VzC 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≻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

d=nB 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 Fd((P-a?9JZ*}U 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 T{O)??GJ|&$%IZ{SUV%S_GS0p_0 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

yKu9S3A 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

R1PbBt-4*=JZ8jWq8Q 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≧15Y=#~#v^jHOsEsaQg-rZ#itg_? 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 =#gd`D)p8& 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

1S52qXNK;bqnbx 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


6)F7ua8RG$An{lkAQ%FxFm=baoNw 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
  • tKuIqi4)|;B8K~e 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

    R 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

  • ?f#hJu#RCtH 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

    YY9h9ZNVec2$jFj?ox)`c9}!9AV_38eaWC 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 yW-#CdV1I%p# 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

  • Kljt) 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⩔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

    `Eu6R=P^1SF0T##=GS{ln?J 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