-
Notifications
You must be signed in to change notification settings - Fork 345
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
[#2543] feat(spark-connector): support row-level operations to iceberg Table #2642
Conversation
…ceberg-row-level-update
…to iceberg-read-write
…into iceberg-row-level-update
…ceberg-row-level-update
…ino into iceberg-row-level-update
Another thought, how about upgrading Iceberg to a newer version since the problem only exists in older versions? @caican00 @qqqttt123 @jerryshao WDYT? |
|
Unless |
My concern is current implementation seems hard to maintain especially for different versions of the Spark and Iceberg. If there is no simple solution, I prefer the original implement which returns a GravitinoIcebergTable extends SparkTable. |
I prefer this solution too. |
@FANNG1 should i fallback to the original implementation? I would like to finish it today. |
@qqqttt123 @jerryshao WDYT? |
Some questions.
|
seems there are no relationship about How |
https://github.com/apache/iceberg/blob/426818bfe7fa93e8c677ebf886638d5c50db597b/spark/v3.4/spark-extensions/src/main/scala/org/apache/spark/sql/catalyst/parser/extensions/IcebergSparkSqlExtensionsParser.scala#L127-L186 |
Yes, it actually doesn't have the same problem with spark. So is flink. |
What's the problem to extend the SparkTable? |
Why not just return |
|
This is not a problem. We can extend the interface. We can extract a common a class as new class field. It's ok. |
we have wrapped |
ok for me, @FANNG1 WDYT? |
if we all think it is ok, i will go ahead, thank you. |
It's ok for me, something to keep consistent before refactor,
WDYT? @caican00 |
@FANNG1 I'm a little confused,is it necessary to keep consistent? |
and in addition, kyuubi's HiveTable is a scala class, and extending it in java requires overriding some of scala's methods |
because keep consistent is easy to maintenance, |
@FANNG1 got it, should I submit a separate pr to refactor the table implementation? This does not include row level operations. |
both are ok for me. |
ok |
close this pr and create a new pr to refactor table implementation and support row-level operations feature. |
What changes were proposed in this pull request?
support row-level operations to iceberg Table
Why are the changes needed?
support row-level operations to iceberg Table
Fix: #2543
Does this PR introduce any user-facing change?
Yes, support
update ...
,merge into ...
,delete from ...
How was this patch tested?
New ITs.
And tested locally.