Hello!
We are trying to deploy our contract on the testnet, however we get some errors. We have tried deploying with: concordium-client --grpc-port 10000 module deploy our_contract --sender our_account
Resulting in the following error: concordium-client: user error (gRPC error: Deserialization error)
And we have deployed with concordium-client --grpc-port 10001 module deploy our_contract --sender our_account
Resulting in concordium-client: user error (Cannot establish connection to GRPC endpoint.)
As far as I can tell from the documentation the port 10001 is used for the testnet, so should that be the one we should use? When inspecting our account I can only retreive something using:
concordium-client account show our_account --grpc-ip 127.0.0.1 --grpc-port 10000
But when using 10001 is gives the same error as when deploying. What can we do?
You should try back up the keys on on your wallet (mobile or desktop wallet depends which one you prefer) again and then try to reimport them to Concordium client. Each account can have multiple credentials and each credential can have multiple signing keys. In this case, you missing credentials nor signing keys for that account.
You can also take a look at this thread on Github.
I have tried backing the keys up once again from the mobile wallet, and importing the file in my concordium client. I have also tried with a new account, however it still gives me the same error when deploying. Any other tips?
Edit: I am able to do a transaction between my two accounts, like in the example you linked, without any errors.
Can I ask how big is the module size? Could it be that the module is too big? The max size for v0 is 64kb and for v1 it is 512kb. The v1 is coming to the Testnet around next week.
You should make sure that you actually building the smart contract with cargo-concordium. The tool will and can reduce the size of the contract quite a bit. There are multiple ways to reduce the module size, but we need to know more about the contract. If you are using a lot of generics, then that could be an issue.
We are using cargo-concordium to build the contract. Our contract size is around 120 kb and it is a v1 contract. We understood it like v1 is already up on the testnet:
We use generics from the concordium std. Additonally we use a library for elliptic curves which uses generics for some functions. How can this be an issue and what can we do?
You wrote previously that you are using concordium-node 4.0.11. That should be the newest one.
As of now the V1 in online on the Testnet. Please try to submit the smart contract, and see if it is working or still having some issue!?