<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rust on Dustin Smith's Online Resume</title><link>https://dustinsmith.info/tags/rust/</link><description>Recent content in Rust on Dustin Smith's Online Resume</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 17 Aug 2026 07:00:00 +0700</lastBuildDate><atom:link href="https://dustinsmith.info/tags/rust/index.xml" rel="self" type="application/rss+xml"/><item><title>Comet Falls Back to Spark on Every Delta Table. I Wrote the PR That Fixes It</title><link>https://dustinsmith.info/blog/comet-delta-native-scan/</link><pubDate>Mon, 17 Aug 2026 07:00:00 +0700</pubDate><guid>https://dustinsmith.info/blog/comet-delta-native-scan/</guid><description>&lt;p&gt;My &lt;a href="https://dustinsmith.info/blog/aws-parquet-column-index/"&gt;last post&lt;/a&gt; ended with a scoreboard: EMR and Glue page-blind, stock Iceberg page-blind, and two working exits, stock Spark 4.2 for parquet and Delta, Comet 1.0.0 for parquet and Iceberg. There&amp;rsquo;s a hole in that scoreboard. Comet, the fastest reader in the entire investigation, covers parquet and Iceberg. The format I actually run, Delta, isn&amp;rsquo;t on its list.&lt;/p&gt;
&lt;p&gt;The reason is one line of code. Comet&amp;rsquo;s &lt;code&gt;isFileFormatSupported&lt;/code&gt; check requires exactly &lt;code&gt;ParquetFileFormat&lt;/code&gt;, and Delta&amp;rsquo;s &lt;code&gt;DeltaParquetFileFormat&lt;/code&gt; is a subclass. So Comet declines every Delta table and hands the query back to Spark. No native execution, no row-group pruning, no page skipping, on what is probably the most widely deployed table format in the Spark ecosystem. And a Delta table is just parquet files with a transaction log on top. The 3.4x reader was sitting right there.&lt;/p&gt;</description></item></channel></rss>