[HUDI-1284] preCombine all HoodieRecords and update all fields according to orderingVal #2096
Closed
Karl-WangSK wants to merge 0 commit intoapache:masterfrom
Closed
[HUDI-1284] preCombine all HoodieRecords and update all fields according to orderingVal #2096Karl-WangSK wants to merge 0 commit intoapache:masterfrom
Karl-WangSK wants to merge 0 commit intoapache:masterfrom
Conversation
Contributor
Author
|
@vinothchandar hi. Can you look at this pr when you are freeeee? |
Member
|
@Karl-WangSK Will do! |
Contributor
Author
leesf
reviewed
Sep 23, 2020
Comment on lines
+193
to
+205
| HoodieWriteMetadata result = table.upsert(jsc, instantTime, records, null); | ||
| if (result.getIndexLookupDuration().isPresent()) { | ||
| metrics.updateIndexMetrics(LOOKUP_STR, result.getIndexLookupDuration().get().toMillis()); | ||
| } | ||
| return postWrite(result, instantTime, table); | ||
| } | ||
|
|
||
| public JavaRDD<WriteStatus> upsert(JavaRDD<HoodieRecord<T>> records, final String instantTime, String schema) { | ||
| HoodieTable<T> table = getTableAndInitCtx(WriteOperationType.UPSERT, instantTime); | ||
| table.validateUpsertSchema(); | ||
| setOperationType(WriteOperationType.UPSERT); | ||
| this.asyncCleanerService = AsyncCleanerService.startAsyncCleaningIfEnabled(this, instantTime); | ||
| HoodieWriteMetadata result = table.upsert(jsc, instantTime, records, schema); |
Contributor
There was a problem hiding this comment.
this is an unrelated change?
leesf
reviewed
Sep 23, 2020
|
|
||
| /** | ||
| * Upserts the given prepared records into the Hoodie table, at the supplied instantTime. | ||
| * Upserts the given prepared records into the Hoodie table,/TestHoodieClientOnCopyOnWriteStorage at the supplied instantTime. |
Contributor
|
@Karl-WangSK Thanks for your contributing, I see there are lots of unrelated changes, pls rebase to latest master branch, thanks. |
e6efb8c to
d37977b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tips
What is the purpose of the pull request
preCombine all HoodieRecords and update all fields(which is not DefaultValue) according to orderingVal
Brief change log
When more than one HoodieRecord have the same HoodieKey, this function combines all fields(which is not DefaultValue)
before attempting to insert/upsert (if combining turned on in HoodieClientConfig).
eg: 1)
Verify this pull request
Added one test in TestOverwriteWithLatestAvroPayload to verify the change
Committer checklist
Has a corresponding JIRA in PR title & commit
Commit message is descriptive of the change
CI is green
Necessary doc changes done or have another open PR
For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.