Why do I get this error only on mainnet while on testnet and local it runs fine. I don’t know how to solve it
I just followed the example code on ICP documentation creating NFT using ICRC-7 standard
Error: Failed update call.
Caused by: The replica returned a rejection error: reject code SysTransient, reject message Ingress message
public shared (msg) func icrcX_mint(tokens : ICRC7.SetNFTRequest) : async [ICRC7.SetNFTResult] {
//for now we require an owner to mint.
switch (icrc7().set_nfts<system>(msg.caller, tokens, true)) {
case (#ok(val)) val;
case (#err(err)) D.trap(err);
};
};
There is a significant demand for the subnet on which your canisters are currently deployed.
Are you only testing this example?
In this case, it might be easiest to redeploy the canister on a subnet with less demand. You can see the subnets here and find one with a lower number for millions of instructions executed per second.
You could also explore setting the compute allocation if you do not want to switch to a different subnet. However, I think since you are testing and just checking out the tutorial, deploying to a new subnet is your best option.