在文档中解释 tendermint 死锁
explain tendermint deadlock in the docs
我在 tendermint 文档中读到了这个:
Note that it is not possible to send transactions to Tendermint during Commit >- if your app tries to send a /broadcast_tx to Tendermint during Commit, it >will deadlock.
这是否意味着如果我的应用在前一个事务处于提交阶段时发送另一个事务,应用将停止工作?
如果处理 Commit 消息的 ABCI 应用程序逻辑发送 broadcast_tx_sync
或 broadcast_tx_commit
并在继续之前等待响应,它将死锁。
执行那些 broadcast_tx 调用涉及获取在 Commit 调用期间持有的锁,因此这是不可能的。
如果您同时调用 broadcast_tx 个端点,那没问题,它只是不能成为 Commit 消息的顺序逻辑的一部分
我在 tendermint 文档中读到了这个:
Note that it is not possible to send transactions to Tendermint during Commit >- if your app tries to send a /broadcast_tx to Tendermint during Commit, it >will deadlock.
这是否意味着如果我的应用在前一个事务处于提交阶段时发送另一个事务,应用将停止工作?
如果处理 Commit 消息的 ABCI 应用程序逻辑发送 broadcast_tx_sync
或 broadcast_tx_commit
并在继续之前等待响应,它将死锁。
执行那些 broadcast_tx 调用涉及获取在 Commit 调用期间持有的锁,因此这是不可能的。
如果您同时调用 broadcast_tx 个端点,那没问题,它只是不能成为 Commit 消息的顺序逻辑的一部分