johanl-db opened a new pull request, #54488:
URL: https://github.com/apache/spark/pull/54488

   ### What changes were proposed in this pull request?
   Adds support for schema evolution during INSERT operations (AppendData, 
OverwriteByExpression, OverwritePartitionsDynamic)
   
   When the table reports capability `AUTOMATIC_SCHEMA_EVOLUTION`, a new 
analyzer rule `ResolveInsertSchemaEvolution` collects new columns and nested 
fields present in the source query but not in the table schema, and adds them 
to the target table by calling `catalog.alterTable()`
   
   Identifying new columns/fields respects the resolution semantics of INSERT 
operations: matching fields by-name vs by-position.
   
   This builds on previous from @szehon-ho , in particular 
https://github.com/apache/spark/pull/51698.
   The first two commits move this previous code around to reuse it, the core 
of the implementation is in the [third 
commit](https://github.com/apache/spark/commit/7be9d2abe1b12636b16b3ca75877d851f2111950).
   
   ### Why are the changes needed?
   The `WITH SCHEMA EVOLUTION` syntax for SQL inserts was added recently: 
https://github.com/apache/spark/pull/53732. This actually implements schema 
evolution behind this syntax.
   
   
   
   ### Does this PR introduce _any_ user-facing change?
   Yes, description TODO
   
   ### How was this patch tested?
   
   
   
   ### Was this patch authored or co-authored using generative AI tooling?
   <!--
   If generative AI tooling has been used in the process of authoring this 
patch, please include the
   phrase: 'Generated-by: ' followed by the name of the tool and its version.
   If no, write 'No'.
   Please refer to the [ASF Generative Tooling 
Guidance](https://www.apache.org/legal/generative-tooling.html) for details.
   -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to