Closed AgustinRamiroDiaz closed 2 months ago
Albert also found a similar behavior while running the prediction market example https://genlayer.slack.com/archives/C071DE6200M/p1723733307983759
I was able to reproduce the problem when extending the DEFAULT_CONSENSUS_SLEEP_TIME
to 20 seconds. :thinking:
More debugging information: seems to be a problem of toctou problem given that _run_consensus
receives pending transactions which have already been handled by other tasks.
In my tests, I've seen that all transactions were on FINALIZED
, but the _run_consensus
was still running with one transaction
@cristiam86 while this issue got fixed, maybe it's a good idea to track somewhere the root of the problem. WDYT?
I'm pretty confident that it was a race condition, but sure, as soon as we detect it again, we will dig deeper into it
I'm getting a problem where a transaction is infinitely looping
PROPOSING -> COMMITTING -> REVEALING -> ACCEPTED -> FINALIZED -> PROPOSING
I've encoutered this behavior while calling twice the same write method on a contract. Particularly, it was Morpheus' contract, calling the "submit_log" function