From efdc9201370f9d100e4b0df34671f6fc056c2bc5 Mon Sep 17 00:00:00 2001 From: Bruno Machado <72039033+brunomachado37@users.noreply.github.com> Date: Fri, 31 Jul 2026 13:22:15 +0200 Subject: [PATCH] Fix metadata when parquet files columns have different orders (#3964) --- src/lerobot/datasets/dataset_metadata.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/lerobot/datasets/dataset_metadata.py b/src/lerobot/datasets/dataset_metadata.py index 87ddeeebc..5b823a9ed 100644 --- a/src/lerobot/datasets/dataset_metadata.py +++ b/src/lerobot/datasets/dataset_metadata.py @@ -174,6 +174,12 @@ class LeRobotDatasetMetadata: self._pq_writer = pq.ParquetWriter( path, schema=table.schema, compression="snappy", use_dictionary=True ) + else: + # Column order in `combined_dict` follows the source episode dict's insertion + # order, which can differ between batches (e.g. episodes originally stored in + # different parquet shards with different column orders). Realign to the + # writer's established schema so `write_table` doesn't reject a reordered match. + table = table.select(self._pq_writer.schema.names) self._pq_writer.write_table(table)