Skip to content
This repository was archived by the owner on Nov 6, 2020. It is now read-only.
This repository was archived by the owner on Nov 6, 2020. It is now read-only.

Fix concurrent access to signer queue #8799

Closed
@tomusdrw

Description

@tomusdrw

Currently it's possible that two parallel RPC requests to with password to sign a signer queue entry will cause two transactions to be sent to the network.

The issue exists since we are running a multi-threaded RPC, and the signer queue doesn't have explicit lock while accessing an item.

Code: https://github.com/paritytech/parity/blob/7d7d4822a5087b24b49f2a1ddb111f2daa51a017/rpc/src/v1/impls/signer.rs#L95

So we peek some ID, do signing and later removed it from the queue. If nonce is not provided explicitly both threads will get a unique one and cause two same transactions to be sent.

Related #8646

Metadata

Metadata

Assignees

Labels

F2-bug 🐞The client fails to follow expected behavior.M6-rpcapi 📣RPC API.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions