-
Notifications
You must be signed in to change notification settings - Fork 421
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MERGE logical plan vs execution plan schema mismatch #2104
Comments
Does the error in this case happen consistently? Would be nice to have the exact stack trace / error. |
@Blajda yeah happens consistently, I'll try to see if I find some time to reproduce it with an MRE I can try giving you the full stack trace but I have to rename a bunch of stuff since it's confidential, I'll get back to on that tomorrow:) |
I am seeing the exact same behavior. My table is partitioned on two columns. When I change it to be partitioned by a single column, the error no longer occurs. |
@sylvanayelda which version do you see the issue? Could you try it on 0.14.0 as well |
@ion-elgreco I was using version 0.15.1. But with 0.14.0, I see the same issue (although the __delta_rs_path is no longer listed in either the LogicalPlan or ExecutionPlan schemas). |
@sylvanayelda Are you merging using the polars interface? |
@Blajda I'm not using polars. Here is a sample of my code:
The table has the following schema:
I should point out that we are also storing the data in ADLS2. Could that be causing any issues here? |
# Description When using logical plans with DF, the order & location of partitioned columns did not match with physical schema. This would cause errors when logical relations were converted to physical relations. # Related Issue(s) - closes #2104
# Description When using logical plans with DF, the order & location of partitioned columns did not match with physical schema. This would cause errors when logical relations were converted to physical relations. # Related Issue(s) - closes delta-io#2104
Environment
Delta-rs version: 0.15.1
Binding: python
Bug
What happened:
We do a merge on a predicate id==id and only do when_not_matched_insert_all. This works with local tests. So just this, nothing special since it just dispatches to TableMerger and then to merge execute in rust:
For context the table is partitioned on
year_month
andcode
.However, we get this weird schema mismatch even though it works in the tests:
Maybe the main culprit here is, the the delta_rs_path in the logical plan is Utf8 while in the execution plan is a dictionary. @Blajda
Otherwise the LargeUtf8 vs Utf8 is still an issue? But seems less likely since it worked before
The text was updated successfully, but these errors were encountered: