ion-elgreco opened a new issue, #14154:
URL: https://github.com/apache/datafusion/issues/14154

   ### Describe the bug
   
   A `LargeList(Struct({"foo": LargeUtf8})`) cannot be coerced to 
`List(Struct({"foo": Utf8}))`. It however it works fine for  
`LargeList(LargeUtf8) -> List(Utf8)` and  `Struct({"foo": LargeUtf8}) -> 
Struct({"foo": Utf8})`.
   
   ### To Reproduce
   
   ```python
   import polars as pl
   from deltalake import DeltaTable
   
   tmp_path = "test_table__"
   df = pl.DataFrame({"foo": [1], "bar": [[{"foo": "!"}]]})
   df.write_delta(tmp_path, mode="overwrite", overwrite_schema=True)
   
   DeltaTable(tmp_path).merge(
       df.to_arrow(compat_level=1),
       predicate="s.foo = t.foo",
       source_alias="s",
       target_alias="t",
       large_dtypes=None,
   ).when_matched_update_all().execute()
   ```
   ```
   DeltaError: Generic DeltaTable error: type_coercion
   caused by
   Error during planning: Failed to coerce then ([LargeList(Field { name: 
"item", data_type: Struct([Field { name: "foo", data_type: Utf8View, nullable: 
true, dict_id: 0, dict_is_ordered: false, metadata: {} }]), nullable: true, 
dict_id: 0, dict_is_ordered: false, metadata: {} }), List(Field { name: 
"element", data_type: Struct([Field { name: "foo", data_type: Utf8, nullable: 
true, dict_id: 0, dict_is_ordered: false, metadata: {} }]), nullable: true, 
dict_id: 0, dict_is_ordered: false, metadata: {} }), List(Field { name: 
"element", data_type: Struct([Field { name: "foo", data_type: Utf8, nullable: 
true, dict_id: 0, dict_is_ordered: false, metadata: {} }]), nullable: true, 
dict_id: 0, dict_is_ordered: false, metadata: {} }), List(Field { name: 
"element", data_type: Struct([Field { name: "foo", data_type: Utf8, nullable: 
true, dict_id: 0, dict_is_ordered: false, metadata: {} }]), nullable: true, 
dict_id: 0, dict_is_ordered: false, metadata: {} })]) and else (None) to common 
types in CA
 SE WHEN expression
   ```
   
   
   ### Expected behavior
   
   Be able to coerce Large/view and normal arrow types in deeply nested types.
   
   ### Additional context
   
   _No response_


-- 
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: github-unsubscr...@datafusion.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to