Skip to content
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

[BugFix] cache delta lake snapshot instead of table object #54473

Merged
merged 5 commits into from
Dec 31, 2024

Conversation

Youngwb
Copy link
Contributor

@Youngwb Youngwb commented Dec 29, 2024

Why I'm doing:

For query table join self, like select * from delta_table a join delta_table b on a.id = b.id;, the query result would be unstable, because delta lake delivery partition values and add partition according to the table id
image
but join selft query has same table, so has same table id, the partiton values would be error-prone and chaotic

What I'm doing:

  1. generate different table object for same table in different scan node
  2. cache delta lake snapshot instead of table object

Fixes #issue

What type of PR is this:

  • BugFix
  • Feature
  • Enhancement
  • Refactor
  • UT
  • Doc
  • Tool

Does this PR entail a change in behavior?

  • Yes, this PR will result in a change in behavior.
  • No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

  • Interface/UI changes: syntax, type conversion, expression evaluation, display information
  • Parameter changes: default values, similar parameters but with different default values
  • Policy changes: use new policy to replace old one, functionality automatically enabled
  • Feature removed
  • Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

  • I have added test cases for my bug fix or my new feature
  • This pr needs user documentation (for new or modified features or behaviors)
    • I have added documentation for my new feature or new function
  • This is a backport pr

Bugfix cherry-pick branch check:

  • I have checked the version labels which the pr will be auto-backported to the target branch
    • 3.4
    • 3.3
    • 3.2
    • 3.1
    • 3.0

@Youngwb Youngwb requested a review from a team as a code owner December 29, 2024 10:51
@Youngwb Youngwb force-pushed the fix-delta-join-self branch from d879c3e to e9dbdf0 Compare December 29, 2024 11:36
Copy link

[Java-Extensions Incremental Coverage Report]

pass : 0 / 0 (0%)

Copy link

[FE Incremental Coverage Report]

pass : 39 / 48 (81.25%)

file detail

path covered_line new_line coverage not_covered_line_detail
🔵 com/starrocks/connector/delta/CachingDeltaLakeMetastore.java 5 10 50.00% [62, 121, 126, 127, 129]
🔵 com/starrocks/connector/delta/DeltaLakeMetastore.java 12 15 80.00% [141, 148, 149]
🔵 com/starrocks/connector/delta/DeltaUtils.java 8 9 88.89% [112]
🔵 com/starrocks/connector/delta/DeltaLakeSnapshot.java 14 14 100.00% []

Copy link

[BE Incremental Coverage Report]

pass : 0 / 0 (0%)

@dirtysalt dirtysalt enabled auto-merge (squash) December 31, 2024 02:06
@dirtysalt dirtysalt merged commit bf3b273 into StarRocks:main Dec 31, 2024
47 of 48 checks passed
Copy link

@Mergifyio backport branch-3.4

Copy link

@Mergifyio backport branch-3.3

Copy link
Contributor

mergify bot commented Dec 31, 2024

backport branch-3.4

✅ Backports have been created

Copy link
Contributor

mergify bot commented Dec 31, 2024

backport branch-3.3

✅ Backports have been created

mergify bot pushed a commit that referenced this pull request Dec 31, 2024
mergify bot pushed a commit that referenced this pull request Dec 31, 2024
(cherry picked from commit bf3b273)

# Conflicts:
#	fe/fe-core/src/test/java/com/starrocks/connector/delta/DeltaLakeMetadataTest.java
@Youngwb Youngwb deleted the fix-delta-join-self branch December 31, 2024 02:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants