@subsquid/pipes raises carries a stable code, and its message ends with a link
back to the page for that code.
Match on the code, or on the instanceof class, rather than on the message text. Messages get
reworded; codes are stable.
Pipe configuration
E0001Pipe requires a unique idE0002Invalid block rangeE0003Unusable instruction discriminator set
Fork handling
E1001Target does not support fork handlingE1002Fork with no canonical blocksE1003resolveFork() returned no cursorE1004Portal contract violationE1005Fork reported on the finalized stream
ClickHouse target
E2001InvalidmaxRowsE2002Unparseable table nameE2003Cannot roll back a Distributed tableE2004Rollback engine collapses on the wrong columnE2005Rollback table has nosigncolumnE2006Invalid rollback index columnE2007Chain fork with no rollback handler
Postgres (Drizzle) target
E2101Drizzle client missingE2102Invalid retentionE2103Advisory lock not acquiredE2104Untracked tableE2105Missing primary keyE2106Circular foreign keysE2107Column name unresolved
BigQuery target
E2201Cannot determine GCP project idE2202Partition column missing from schemaE2203Partition column has the wrong typeE2204Partition column is nullableE2205Table is not range-partitionedE2206Unsupported field shape for auto-createE2207Declared column missing from live tableE2208Column type or mode mismatchE2209Write to an unregistered tableE2210Internal schema-map mismatchE2211Corrupt in-flight sync rowE2212Orphaned tracked dataE2213BigQuery rejected rows in AppendRows
Parquet target
E2301No tables declaredE2302Duplicate table nameE2303Empty schemaE2304Block-number column missingE2305Block-number column has the wrong typeE2306Unsupported compression codecE2307Unsupported column typeE2308Write to an unregistered tableE2309File collisionE2310Corrupt state fileE2311Block-number column is optionalE2312Invalid block-number valueE2313Row value does not match column typeE2314Crash recovery could not delete an over-cursor fileE2315Invalid nested schemaE2316Invalid segment coverage rangeE2317State file disagrees with the data filesE2320Engine output is not a Parquet file
Google PubSub target
E2401Topic does not existE2402Reserved attribute nameE2403Attribute budget exceededE2404Message too largeE2405Canonical codec cannot encode this valueE2406Canonical codec met a cycleE2407Dataset reports no finalized headE2408Fork reported underassumeNoForksE2409Block has no hashE2410State file is lockedE2411State schema version mismatchE2412Ordering key while message ordering is disabledE2413Materialized id movedE2414Delete-free window route without an empty valueE2415Draft without a usable blockE2416publishFrom: 'latest'cannot be resolvedE2417State file unavailableE2418Two drafts with the same id in one batchE2419State file belongs to another producerE2421State wire configuration changedE2422Invalid BigQuery CDC rowE2423Route missing during recoveryE2424Change sequence exhaustedE2425No routes configuredE2426Signal draft without a usable blockE2427Finalized-only signal from an unfinalized block