Electrum version: 4.0.3 (exact commit)
In our APIs we provide a get_transaction RPC call, which works a bit different than usual gettransaction command
|
raw = await self.session.send_request('blockchain.transaction.get', [tx_hash], timeout=timeout) |
We do the same, but with
verbose parameter turned on.
Here is how it is implemented in our API
It works perfectly in most cases and returns an additional field: confirmations in addition to usual transaction JSON output.
But in some cases, more frequently on testnet, and especially often in our CI runs, we get the following error:
aiorpcx.jsonrpc.ProtocolError: (-32600, 'ill-formed response error object: verbose transactions are currently unsupported')
CI Run logs
The failing test
Note: the SDK being tested is just calling that get_transaction method on daemon directly, it's still electrum
Are those servers with unsupported verbose transactions just running some old version of ElectrumX? Is there a way to filter them out from the list of servers to connect to, or is there a better way to get confirmations for an arbitrary transaction (not always wallet-related)?
Electrum version: 4.0.3 (exact commit)
In our APIs we provide a
get_transactionRPC call, which works a bit different than usualgettransactioncommandelectrum/electrum/interface.py
Line 933 in 53d6eeb
We do the same, but with
verboseparameter turned on.Here is how it is implemented in our API
It works perfectly in most cases and returns an additional field:
confirmationsin addition to usual transaction JSON output.But in some cases, more frequently on testnet, and especially often in our CI runs, we get the following error:
aiorpcx.jsonrpc.ProtocolError: (-32600, 'ill-formed response error object: verbose transactions are currently unsupported')CI Run logs
The failing test
Note: the SDK being tested is just calling that
get_transactionmethod on daemon directly, it's still electrumAre those servers with unsupported verbose transactions just running some old version of ElectrumX? Is there a way to filter them out from the list of servers to connect to, or is there a better way to get confirmations for an arbitrary transaction (not always wallet-related)?