#panicked at 'polynomial segment size has to be not smaller than that of the circuit!'
18 messages ยท Page 1 of 1 (latest)
from my POV it looks like each @method should run 4x during compile, is this correct?
My compile does this:
- 1x increment
- 1x decrement
- 3x rollup
- stuck with the error above
The error above only occurs if my maxTransactionsWithActions is more than 1.
As long as its 1, my contract compiles, if its more than 2 i get the error
could this be caused by circuit size limits?
i'm leaning towards this being caused by my code exceeding circuit limits, due to the amount of witness/root hash calculations i have to do per each action
๐ค
Based on @upper saffron 's explanation in this thread (https://discord.com/channels/484437221055922177/1085496084912152667) the limit of rows per @method/circuit should be 30k, i'm at 37k and it compiles and proves just fine (local blockchain)
Does reducing your logic until you are within the limit fix it?
yes, setting maxTransactionsWithActions=1 fixes it
Ah sorry I misread that
@upper saffron can you please shine some more light into analyzeMethods and the limits for rows in a circuit?
I think the limit of rows is 2^15 which is about 32k. analyzeMethods builds the constraint systems of each method plus their wrappers that we add in snarkyjs, and outputs their numbers of rows. The actual circuit will also contain a few more constraints added by Pickles, so the actual row counts will be slightly more than what analyzeMethods returns. We have no way to expose that actual constraint count ATM but I think it's not too different.
Anyway, the conclusion that you're hitting the limits sounds right to me
We managed to fit like 37k into a berkley tx
Ah.. maybe it's 2^16 then
Please let me know if this issue is resolved by Gregors suggestion.
yes it is, it was due to my contract being too big
Nice!
panicked at 'polynomial segment size has to be not smaller than that of the circuit!' SOLVED