Got the problem on Stateful Smart contract size. Since a recent update from Algorand we are able to ask for extra pages during SC creation. I did so by passing
extraPages = 2 param, as a result the error message about 2kb size limit was gone and SC was deployed.
Although calling (with
goal update) the same Smart contract to update the Global state isn’t possible. Algod returns the same error message:
invalid : approval program too long. max len 2048 bytes
Not sure if this is a SandNet issue. Here is my environment:
./sandbox goal node status Last committed block: 651 Time since last block: 0.2s Sync Time: 0.0s Last consensus protocol: https://github.com/algorandfoundation/specs/tree/65b4ab3266c52c56a0fa7d591754887d68faad0a Next consensus protocol: https://github.com/algorandfoundation/specs/tree/65b4ab3266c52c56a0fa7d591754887d68faad0a Round for next consensus protocol: 652 Next consensus protocol supported: true Last Catchpoint: Genesis ID: sandnet-v1 Genesis hash: HvKVJXgNbviJ20lMeng+hIWBADb4ZYjFLDbwY1dSwpc= ./sandbox goal --version 8590393345 2.7.1.stable [rel/stable] (commit #5e00bcd6) go-algorand is licensed with AGPLv3.0 source code available at https://github.com/algorand/go-algorand