You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Nov 6, 2020. It is now read-only.
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.
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.
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
The text was updated successfully, but these errors were encountered: