Request: How many mempool transactions are evicted by time?

I noticed that we log two lines for each expiring transaction, so just grepping for a reason=expiry will yield two log entries for each transaction that expires.

[validation] Enqueuing TransactionRemovedFromMempool ... reason=expiry
[validation] TransactionRemovedFromMempool ... reason=expiry

While analyzing the data, it took me a while to find something that conveys what I’m seeing: The upper part shows the average number of expiries per day on the nodes that saw at least one expiry on that day. This is usually somewhere between 10 and 10k. There are also days without any expiries. This is shown in the bottom part of the chart: when it reaches 100%, all nodes didn’t see an expiry.

I was surprised to see only very few days between 2025-02-01 and 2025-09-15 with expires. I see the other obvious mempool removal reasons on these dates (block, conflict, …) but no reason=expiry.

1 Like