@thinkharderdev implemented schema merging functionality for Parquet files in #1622. However, this logic only applies to Parquet, and @tustvold noted that it would likely also be useful to apply to CSV, Avro and Json files so that DataFusion could read from files in those formats that had compatible but not identical schemas
Specifically, the logic in read_partition might be extracted into some of SchemaAdapter, akin to PartitionColumnProjector. This would allow the logic to be reused with other file formats, e.g. JSON or CSV, whilst also allowing testing it in isolation.
Originally posted by @tustvold in #1622 (comment)