Open chlenc opened 3 weeks ago
The problem is that for the MultiContractCallHandler
you have to specify the output type of the call. It is a tuple of types of the added calls. Let's say you added 3 calls and each returns an u8
the output type of the multi-call would be (u8, u8, u8)
Please have a look at the docs: https://rust.fuel.network/v0.63.1/calling-contracts/multicalls.html#output-values
As you are dynamically processing orders
, I think you will not be able to use MultiCallHandler
in this way as you can not dynamically set the output type.
Issue: Error When Calling Contract Functions Using MultiContractCallHandler
Description
When invoking contract functions using
MultiContractCallHandler
, an error occurs:However, the transaction actually succeeds.
Steps to Reproduce
Error Details
While executing the script, the following error is encountered:
Despite this error, the transaction is successfully processed.
References
Function being called
https://github.com/compolabs/orderbook-contract/blob/testnet/src/orderbook_utils.rs#L308
Script used to call the function
https://github.com/compolabs/orderbook-contract/blob/testnet/scripts/match_in_pairs_multicall.rs
Expected Behavior
The
MultiContractCallHandler
should not throw an error if the transaction is successful. The handler should correctly interpret the result type without encountering theUnit
vsTuple([Unit])
mismatch.