Anton Kaliaev
77deb710fb
@p4u from vocdoni.io reported that the mempool might behave incorrectly under a high load. The consequences can range from pauses between blocks to the peers disconnecting from this node. My current theory is that the flowrate lib we're using to control flow (multiplex over a single TCP connection) was not designed w/ large blobs (1MB batch of txs) in mind. I've tried decreasing the Mempool reactor priority, but that did not have any visible effect. What actually worked is adding a time.Sleep into mempool.Reactor#broadcastTxRoutine after an each successful send == manual control flow of sort. As a temporary remedy (until the mempool package is refactored), the max-batch-bytes was disabled. Transactions will be sent one by one without batching Closes #5796 |
4 years ago | |
---|---|---|
.. | ||
config.go | mempool: disable MaxBatchBytes (#5800) | 4 years ago |
config_test.go | blockchain/v1: remove in favor of v2 (#5728) | 4 years ago |
toml.go | mempool: disable MaxBatchBytes (#5800) | 4 years ago |
toml_test.go | docs: use hyphens instead of snake case (#5802) | 4 years ago |