-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
[HUDI-1517] create marker file for every log file #13007
base: master
Are you sure you want to change the base?
Conversation
… marker-based rollback (apache#11830)
Some of the tests in TestHoodieBackedMetadata which were failing in master have been disabled. Created HUDI-9221 to track these test failures. |
@@ -754,6 +754,11 @@ public HoodieTestTable withLogMarkerFile(String partitionPath, String fileName) | |||
return this; | |||
} | |||
|
|||
// public HoodieTestTable withLogMarkerFile(String partitionPath, String fileId, IOType ioType) throws IOException { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why commented out?
@@ -141,7 +141,7 @@ private Map<String, Long> createLogFilesAndMarkersToRollback(String partition, | |||
} catch (IOException e) { | |||
throw new RuntimeException(e); | |||
} | |||
}).collect(Collectors.toMap(Function.identity(), e -> 1L)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why flipping the size here? should we expect the size to be non 0 somewhere down the line and hence we added 1 as length here.
@@ -258,6 +259,7 @@ public void testMetadataTableBootstrap(HoodieTableType tableType, boolean addRol | |||
validateMetadata(testTable, true); | |||
} | |||
|
|||
@Disabled("HUDI-9221") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we might need to investigate and re-enable these tests.
@@ -100,7 +102,7 @@ protected HoodieWriteConfig getConfigToTestMDTRollbacks(Boolean autoCommit) { | |||
} | |||
|
|||
protected HoodieWriteConfig getConfigToTestMDTRollbacks(Boolean autoCommit, Boolean mdtEnable) { | |||
return HoodieWriteConfig.newBuilder() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if this entire class is meant for table version 6, can we rename the test class accordingly.
} | ||
|
||
/** | ||
* Scenario: data table is updated, no changes to MDT | ||
*/ | ||
protected void testRollbackWithFailurePreMDT(HoodieTableType tableType) throws Exception { | ||
initBasePath(); | ||
HoodieTableMetaClient metaClient = getHoodieMetaClient(tableType); | ||
TypedProperties props = new TypedProperties(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we add a validation at the end of every test to confirm that table config -> table version is 6.
Change Logs
The PR cherry-picks the commit (which tracks marker file for every log file and handles error scenarios like repeated rollbacks, spurious log files etc.) made for 0.15.0 release and adds it to 1.0 for table version 6 compatibility.
https://github.com/apache/hudi/pull/11187/files#diff-9a401e6d5a736a9601567c006c3e66c1b5da1e8f7670addc366ca72a6db73872
Impact
NA
Risk level (write none, low medium or high below)
low
Documentation Update
NA
Contributor's checklist