Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tx rejected but stayed in mempool #375

Open
jcramer opened this issue Jun 16, 2020 · 2 comments
Open

Tx rejected but stayed in mempool #375

jcramer opened this issue Jun 16, 2020 · 2 comments

Comments

@jcramer
Copy link
Contributor

jcramer commented Jun 16, 2020

A strange issue happened yesterday with calling getUnspentUtxos (with includeMempool=true) gRPC endpoint at greyh.at mainnet. From what we were able to gather from node's logs:

  1. A transaction was rejected by the mempool due to reason: failed to validate input ... script exceeds maximum signature density (input script bytes...

  2. After the validation failure, the inputs of the failed transaction were considered to be spent in the referenced gRPC call. (i.e., GRPC: Unary method /pb.bchrpc/SubmitTransaction invoked by 124.36.203.225:61776 errored: rpc error: code = InvalidArgument desc = tx rejected: output b21cee8cc87f5e472e004a6ba4a07c1990367a8d86aef89ea6699b5699501c10:2 already spent by transaction 42820bc8fb0280b5150d40ac32f1a63b380f5b97987a76899401ed92f95a321f in the memory pool)

@jcramer
Copy link
Contributor Author

jcramer commented Jul 4, 2020

Noticing that non-final transactions are rejected as non-standard, which marks the inputs as spent. This behavior can have a negative impact on some types of applications.

https://github.com/gcash/bchd/blob/master/mempool/policy.go#L254

@zquestz
Copy link
Contributor

zquestz commented Mar 13, 2021

We should not allow invalid transactions into the mempool. Non-standard should be fine, but obviously won't propagate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants