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
I have a FireFly namespace setup with a token connector and evmconnect. I submitted a blockchain invoke operation that resulted in a transaction to EVMConnect. In the meantime, I have FireFly and the Token Connector connected each through their own web socket to EVMConnect on a separate Event Stream.
Thus FireFly and the Token Connector both receive a blockchain transaction submitted event, the token connector forwards that event to FireFly and you end up with two events on the transaction.
This did not happen every single time! Sometimes I only got one event, it might be related to the best effort of TX confirmation events in the web socket as per the comment in the code linked.
What did you expect to happen?
I would expect to only see one confirmation but based on this background that one Transaction object could have multiple blockchain transactions it could make sense to see multiple events (but not in the case of one blockchain tx):
Currently in FireFly there are two related objects which represent an attempt to perform a blockchain transaction:
The FireFly Transaction object - one of these is created for each high-level type of action being performed, and there could be zero, one or (in the future) more than one blockchain transaction associated with this.
The Blockchain Operation object - the ID of this is used when calling EthConnect/EVMConnect. This is a re-submittable item, and a new ID is generated if a user chooses to submit it again.
How can we reproduce it (as minimally and precisely as possible)?
Setup a FireFly stack with EVMConnect and a Token Connector. Submit a transaction to any smart contract and look at the transaction object to see the blockchain events associated with it.
The text was updated successfully, but these errors were encountered:
What happened?
I have a FireFly namespace setup with a token connector and evmconnect. I submitted a blockchain invoke operation that resulted in a transaction to EVMConnect. In the meantime, I have FireFly and the Token Connector connected each through their own web socket to EVMConnect on a separate Event Stream.
Once EVMConnect confirms that the transaction has been submitted correctly it will submitted an event on the event stream to all connected sockets see https://github.com/hyperledger/firefly-transaction-manager/blob/b66a96a45b3b66d17d9aa913e5d2584c6da1da42/pkg/fftm/transaction_events_handler.go#L94
Thus FireFly and the Token Connector both receive a blockchain transaction submitted event, the token connector forwards that event to FireFly and you end up with two events on the transaction.
This did not happen every single time! Sometimes I only got one event, it might be related to the best effort of TX confirmation events in the web socket as per the comment in the code linked.
What did you expect to happen?
I would expect to only see one confirmation but based on this background that one Transaction object could have multiple blockchain transactions it could make sense to see multiple events (but not in the case of one blockchain tx):
How can we reproduce it (as minimally and precisely as possible)?
Setup a FireFly stack with EVMConnect and a Token Connector. Submit a transaction to any smart contract and look at the transaction object to see the blockchain events associated with it.
The text was updated successfully, but these errors were encountered: