Client, worker and optimist now support start up on arbitrary ports that can be controlled via environment variables. This is because the loss of super-user prevents startup on protected port 80.
Optimist container no longer crashes when mempool transactions build up over time. This is done by throttling the number of txs fetched from db at any given time, the amount can be controlled using the variable MEMPOOL_TXS_FETCH_LIMIT
Logging change - The repeated “heartbeat” message in the block assembler can now be toggled via a new endpoint - /debug/toggle-heartbeat-loggingbug/toggle-heartbeat-logging
This was primarily to simplify log anaylsis by minimizing log cluttering
Client container no longer syncs from the firstSeenBlock, but uses the lastProcessedBlock. This avoids an unnecessary delay in the bootup time of the client.
nightfall-client/src/services/state-sync.mjs
Client container no longer returns a “Bad Request” while syncing. It returns a “503 - Nf3 client is syncing” message instead. The healthcheck route has also been excluded from this to prevent k8s from considering the container unhealthy.
PR includes multiple changes centred around "unhappy paths" such as mempool buildup, container crashes etc. Also includes configuration changes to attempt deployment on polygon amoy and base sepolia.
What does this implement/fix? Explain your changes.
Does this close any currently open issues?
No
What commands can I run to test the change?
curl for new debugging endpoint:
Any other comments?
PR includes multiple changes centred around "unhappy paths" such as mempool buildup, container crashes etc. Also includes configuration changes to attempt deployment on
polygon amoy
andbase sepolia
.