ASSERT YOUR INVARIANTS
Spent several hours debugging why a consistency check on my liquidity updater failed.
Turns out two Uniswap V4 pools on Ethereum and Base have the same ID (a 32 byte hash of tokens, fee, tick spacing, and hook address). The checker was comparing the Ethereum pool from the DB to the Base pool from the flat file because I wrote the invariant checker when I only had one chain in the DB.
I knew that pool hashes were not unique, but didn't think it would ever come up.
Also write better invariants 🥲
2,97k
16
Innholdet på denne siden er levert av tredjeparter. Med mindre annet er oppgitt, er ikke OKX forfatteren av de siterte artikkelen(e) og krever ingen opphavsrett til materialet. Innholdet er kun gitt for informasjonsformål og representerer ikke synspunktene til OKX. Det er ikke ment å være en anbefaling av noe slag og bør ikke betraktes som investeringsråd eller en oppfordring om å kjøpe eller selge digitale aktiva. I den grad generativ AI brukes til å gi sammendrag eller annen informasjon, kan slikt AI-generert innhold være unøyaktig eller inkonsekvent. Vennligst les den koblede artikkelen for mer detaljer og informasjon. OKX er ikke ansvarlig for innhold som er vert på tredjeparts nettsteder. Beholdning av digitale aktiva, inkludert stablecoins og NFT-er, innebærer en høy grad av risiko og kan svinge mye. Du bør nøye vurdere om handel eller innehav av digitale aktiva passer for deg i lys av din økonomiske tilstand.

