v.24.1Improvement

Allow Ignoring Schema Evolution in Iceberg Table Engine with Caution

Allow to ignore schema evolution in the Iceberg table engine and read all data using schema specified by the user on table creation or latest schema parsed from metadata on table creation. This is done under a setting iceberg_engine_ignore_schema_evolution that is disabled by default. Note that enabling this setting can lead to incorrect result as in case of evolved schema all data files will be read using the same schema. #59133 (Kruglov Pavel).
Added an option to ignore schema evolution in the Iceberg table engine, allowing all data to be read using a single schema as defined at table creation or the latest parsed metadata schema.

Why it matters

This feature addresses scenarios where users want to read Iceberg table data without applying schema evolution changes, which can simplify data reading by treating all files with the same schema. It is useful when consistent schema interpretation is preferred, but it may lead to incorrect results if schema evolution has occurred.

How to use it

Enable the feature by setting iceberg_engine_ignore_schema_evolution to true. This setting is disabled by default. Once enabled, the Iceberg engine will read all data using the schema provided at table creation or the latest parsed schema from metadata, ignoring any schema evolution.