Skip to content

Promise never resolve or reject when submitting an invalid transaction #346

@mkazlauskas

Description

@mkazlauskas

What Git revision / release tag are you using?

v6.0.0-rc4

Do you use any client SDK? If yes, which one?

TypeScript

Describe what the problem is?

When submitting an invalid transaction, websocket connection closes with { code: 1006 } Connection closed. Client is then indefinitely awaiting for some kind of response here.

What should be the expected behavior?

There are 2 issues:

  1. connection shouldn't get closed
  2. client should attempt to recover or reject with an error when the connection gets closed

If applicable, what are the logs from the server around the occurence of the problem?

{"severity":"Info","timestamp":"2023-10-26T10:29:16.405814196Z","thread":"823","message":{"WebSocket":{"contents":{"agency":"ServerAgency TokConfirm","event":"receive","tag":"AcceptVersion","version":"\"NodeToClientV_16\""},"tag":"WebSocketClient"}},"version":"v6.0.0 (62d21dd280a474b93ea9481c9d2a242ebe22ba63)"}
{"severity":"Info","timestamp":"2023-10-26T10:29:39.813155281Z","thread":"840","message":{"WebSocket":{"contents":{"agency":"ClientAgency TokIdle","event":"send","tag":"SubmitTx","tx":"d8185901aa84a400818258207b5c59e9ceb3cfdbc76abcf273c70fac40cf47a83e81fd4bcec86f5132b32310010182825839006b14497caa498ab472340e4be9551b9106f66173c26df827c82c62a8589d61522e295e37019428ddd3f7f2add39c6796a9b975d55ab605031a000f4240825839006b14497caa498ab472340e4be9551b9106f66173c26df827c82c62a8589d61522e295e37019428ddd3f7f2add39c6796a9b975d55ab605031b0000000253af8526021a0002a8dd048183118200581c04248787f28f9aa990bdbbb80411bb3625de3b0b5fa5562a15bb5b0600a10082825820cab519055ca2a0912560902f01a6e9c13a0807221cbd3ffdc1d239a0c3f678f658405cb096ec024ab5e79011e7bd19706690f331fe84b63c56c45c7899aad7a6772bd4a236061645160a50cb88b90d4a0e8b7a1b2e116df4aa48ee2591e7b6e63d0a8258205d859a83f3fb8de986c78c6ee9725ecf59b2b15137218b6a962615520932419158406291160fadc9682e69c0fb760ce2d7d3eb08c39e23ecea130b5841e66ac51cd74be66f2ce2b72b44e159516588e8fe7f85bcf3b9da92ee91091851fc1737e70af5f6"},"tag":"WebSocketClient"}},"version":"v6.0.0 (62d21dd280a474b93ea9481c9d2a242ebe22ba63)"}
[39a41f38:cardano.node.Mempool:Info:220] [2023-10-26 10:29:39.81 UTC] fromList [("err",Object (fromList [("badInputs",Array [String "7b5c59e9ceb3cfdbc76abcf273c70fac40cf47a83e81fd4bcec86f5132b32310#TxIx 1"]),("consumed",Object (fromList [("lovelace",Number 0.0),("policies",Object (fromList []))])),("error",String "This transaction consumed MaryValue 0 (MultiAsset (fromList [])) but produced MaryValue 9995120707 (MultiAsset (fromList []))"),("failure",Object (fromList [("credential",String "KeyHashObj (KeyHash \"04248787f28f9aa990bdbbb80411bb3625de3b0b5fa5562a15bb5b06\")"),("error",String "DRep is not registered"),("kind",String "ConwayDRepNotRegistered")])),("kind",String "ValueNotConservedUTxO"),("produced",Object (fromList [("lovelace",Number 9.995120707e9),("policies",Object (fromList []))]))])),("kind",String "TraceMempoolRejectedTx"),("mempoolSize",Object (fromList [("bytes",Number 0.0),("numTxs",Number 0.0)])),("tx",Object (fromList [("txid",String "9d0fd506")]))]
{"severity":"Error","timestamp":"2023-10-26T10:29:39.815390386Z","thread":"819","message":{"WebSocket":{"exception":"DecoderFailure (LocalTxSubmission (GenTx (HardForkBlock (': * ByronBlock (': * (ShelleyBlock (TPraos StandardCrypto) (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (AllegraEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (MaryEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (AlonzoEra StandardCrypto)) (': * (ShelleyBlock (Praos StandardCrypto) (BabbageEra StandardCrypto)) (': * (ShelleyBlock (Praos StandardCrypto) (ConwayEra StandardCrypto)) ('[] *)))))))))) (HardForkApplyTxErr (': * ByronBlock (': * (ShelleyBlock (TPraos StandardCrypto) (ShelleyEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (AllegraEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (MaryEra StandardCrypto)) (': * (ShelleyBlock (TPraos StandardCrypto) (AlonzoEra StandardCrypto)) (': * (ShelleyBlock (Praos StandardCrypto) (BabbageEra StandardCrypto)) (': * (ShelleyBlock (Praos StandardCrypto) (ConwayEra StandardCrypto)) ('[] *)))))))))) ServerAgency TokBusy) (DeserialiseFailure 15 \"Coin in Value: Expected a positive Coin. Got 0 (zero).\")","tag":"WebSocketUnknownException"}},"version":"v6.0.0 (62d21dd280a474b93ea9481c9d2a242ebe22ba63)"}
{"severity":"Info","timestamp":"2023-10-26T10:29:39.815523555Z","thread":"819","message":{"WebSocket":{"tag":"WebSocketConnectionEnded","userAgent":"User-Agent unknown"}},"version":"v6.0.0 (62d21dd280a474b93ea9481c9d2a242ebe22ba63)"}
[39a41f38:cardano.node.LocalErrorPolicy:Error:68] [2023-10-26 10:29:40.81 UTC] IP LocalAddress "/ipc/node.socket@10" ErrorPolicyUnhandledApplicationException (MuxError MuxBearerClosed "<socket: 45> closed when reading data, waiting on next header True")
[39a41f38:cardano.node.LocalErrorPolicy:Error:68] [2023-10-26 10:29:40.81 UTC] IP LocalAddress "/ipc/node.socket@11" ErrorPolicyUnhandledApplicationException (MuxError MuxBearerClosed "<socket: 46> closed when reading data, waiting on next header True")

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions