Hi, I'm Tei from Sunnyside Labs(Test in Prod) who is building op-erigon.
One of our users recently reported a non-uniform DB size growth when they were using op-erigon. The size of the DB is multiple of a normal DB of the same chain. We have investigated this case with them and found the following things:
Abnormal DB size growth is only seen on nodes serving debug_traceCall RPCs.
The Used pages are equal to the normal DB. So the abnormal DB growth is because of its reclaimable data, but it seems GC is not working as expected. I read some similar issues and MDBX docs so I understand that this is caused by some long-running DB txs -- maybe due to debug trace RPCs, but not sure the root cause.
As some guides from similar issues, it seems we can reclaim those data by copying MDBX, but it couldn't be the solution for the long-running nodes on production.
So I wonder if there's any solution or ongoing improvement about this issue. Please let me know if I'm missing something. Thank you!
Hi, I'm Tei from Sunnyside Labs(Test in Prod) who is building op-erigon. One of our users recently reported a non-uniform DB size growth when they were using op-erigon. The size of the DB is multiple of a normal DB of the same chain. We have investigated this case with them and found the following things:
debug_traceCall
RPCs.The
Used
pages are equal to the normal DB. So the abnormal DB growth is because of its reclaimable data, but it seems GC is not working as expected. I read some similar issues and MDBX docs so I understand that this is caused by some long-running DB txs -- maybe due to debug trace RPCs, but not sure the root cause.As some guides from similar issues, it seems we can reclaim those data by copying MDBX, but it couldn't be the solution for the long-running nodes on production.
So I wonder if there's any solution or ongoing improvement about this issue. Please let me know if I'm missing something. Thank you!