Tins · Cross-implementation oracle

iceberg-rs

Apache Iceberg over a thin Rust cdylib wrapping iceberg-rust behind a C ABI. Superseded — no longer required for any operation — and kept only as a third independent implementation to check the native one against.

Install
pixi shelf add iceberg-rs-mojo
Version

0.1.3 on mojoshelf

Source

What it does

Works today

  • 56 extern "C" functions over one shared tokio runtime
  • SQL/JDBC catalog against real object storage
  • Kept as a cross-implementation oracle, not a dependency

Correctness

Checked against PyIceberg reading through the same sqlite catalog file the binding wrote

Building it found bugs upstream

Holding three implementations against each other surfaces disagreements, and not all of them turned out to be my fault. I cut each one below down to a standalone script or unit test with no magmalake code in it, then either reported it upstream or — where someone had got there first — matched it to the report that already existed.

  • iceberg-rust apache/iceberg-rust#3118 reported An In predicate whose literals straddle a file's bounds is never pruned: the lower and upper bounds are each tested against the whole literal set instead of narrowing it, as Java and PyIceberg do.

Also in Cross-implementation oracle