The command linera benchmark was hanging because multiple ChainWorkerActors were created to handle the same chain. This led to them attempting to acquire the chain guard, and blocking forever when it failed. The duplicate actors were created because the same process created more than one WorkerState instance.
Proposal
Use the local node in the client instead of creating temporary WorkerState instances.
Test Plan
After this PR, linera benchmark now executes correctly.
Release Plan
Fixes a user visible bug, so at least a new patch version should be released.
Motivation
The command
linera benchmark
was hanging because multipleChainWorkerActor
s were created to handle the same chain. This led to them attempting to acquire the chain guard, and blocking forever when it failed. The duplicate actors were created because the same process created more than oneWorkerState
instance.Proposal
Use the local node in the client instead of creating temporary
WorkerState
instances.Test Plan
After this PR,
linera benchmark
now executes correctly.Release Plan
Fixes a user visible bug, so at least a new patch version should be released.
Links