omni-network / omni

Monorepo for Omni node, contracts and other related tools
https://omni.network
GNU General Public License v3.0
81 stars 46 forks source link

Race condition in xprovider offset tracker #1372

Closed corverroos closed 3 months ago

corverroos commented 3 months ago

The xprovider tracker assumes that fetchBatch is called sequentially. This isn't the case. There are actually multiple concurrent workers calling it concurrently.

This is especially the case for arb_sepolia, which has very fast blocks and uses 4 workers.

This results in "get unexpected old height [BUG]" see example logs.