suryaprasanna commented on code in PR #8832:
URL: https://github.com/apache/hudi/pull/8832#discussion_r1225654207
##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/ConflictResolutionStrategy.java:
##########
@@ -40,7 +40,7 @@ public interface ConflictResolutionStrategy {
* Stream of instants to check conflicts against.
* @return
*/
- Stream<HoodieInstant> getCandidateInstants(HoodieActiveTimeline
activeTimeline, HoodieInstant currentInstant, Option<HoodieInstant>
lastSuccessfulInstant);
+ Stream<HoodieInstant> getCandidateInstants(HoodieTableMetaClient metaClient,
HoodieInstant currentInstant, Option<HoodieInstant> lastSuccessfulInstant);
Review Comment:
- Caller does not now which implementation to use, so whether to refresh the
timeline or not something should be up to the implementation classes. Like
IngestionPrimaryWriterBasedConflictResolutionStrategy.java requires reload
other may not require reload.
- Also, if others have custom implementation of the base class and they are
tied to using HoodieTimeline, they can still easily migrate to the new API with
HoodieTableMetaClient whereas vice versa breaks the usability. In this case by
replacing timeline with metaClient object we are providing more functionality
to users.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]