[HUDI-705] Add unit test for RollbacksCommand (#1611)
This commit is contained in:
@@ -23,6 +23,7 @@ package org.apache.hudi.cli;
|
||||
*/
|
||||
public class HoodieTableHeaderFields {
|
||||
public static final String HEADER_PARTITION = "Partition";
|
||||
public static final String HEADER_INSTANT = "Instant";
|
||||
public static final String HEADER_PARTITION_PATH = HEADER_PARTITION + " Path";
|
||||
public static final String HEADER_FILE_ID = "FileId";
|
||||
public static final String HEADER_BASE_INSTANT = "Base-Instant";
|
||||
@@ -81,4 +82,13 @@ public class HoodieTableHeaderFields {
|
||||
public static final String HEADER_HOODIE_PROPERTY = "Property";
|
||||
public static final String HEADER_OLD_VALUE = "Old Value";
|
||||
public static final String HEADER_NEW_VALUE = "New Value";
|
||||
|
||||
/**
|
||||
* Fields of Rollback.
|
||||
*/
|
||||
public static final String HEADER_ROLLBACK_INSTANT = "Rolledback " + HEADER_INSTANT;
|
||||
public static final String HEADER_TIME_TOKEN_MILLIS = "Time taken in millis";
|
||||
public static final String HEADER_TOTAL_PARTITIONS = "Total Partitions";
|
||||
public static final String HEADER_DELETED_FILE = "Deleted File";
|
||||
public static final String HEADER_SUCCEEDED = "Succeeded";
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ package org.apache.hudi.cli.commands;
|
||||
import org.apache.hudi.avro.model.HoodieRollbackMetadata;
|
||||
import org.apache.hudi.cli.HoodieCLI;
|
||||
import org.apache.hudi.cli.HoodiePrintHelper;
|
||||
import org.apache.hudi.cli.HoodieTableHeaderFields;
|
||||
import org.apache.hudi.cli.TableHeader;
|
||||
import org.apache.hudi.common.table.HoodieTableMetaClient;
|
||||
import org.apache.hudi.common.table.timeline.HoodieActiveTimeline;
|
||||
@@ -56,8 +57,7 @@ public class RollbacksCommand implements CommandMarker {
|
||||
@CliOption(key = {"sortBy"}, help = "Sorting Field", unspecifiedDefaultValue = "") final String sortByField,
|
||||
@CliOption(key = {"desc"}, help = "Ordering", unspecifiedDefaultValue = "false") final boolean descending,
|
||||
@CliOption(key = {"headeronly"}, help = "Print Header Only",
|
||||
unspecifiedDefaultValue = "false") final boolean headerOnly)
|
||||
throws IOException {
|
||||
unspecifiedDefaultValue = "false") final boolean headerOnly) {
|
||||
HoodieActiveTimeline activeTimeline = new RollbackTimeline(HoodieCLI.getTableMetaClient());
|
||||
HoodieTimeline rollback = activeTimeline.getRollbackTimeline().filterCompletedInstants();
|
||||
|
||||
@@ -79,9 +79,11 @@ public class RollbacksCommand implements CommandMarker {
|
||||
e.printStackTrace();
|
||||
}
|
||||
});
|
||||
TableHeader header = new TableHeader().addTableHeaderField("Instant").addTableHeaderField("Rolledback Instant")
|
||||
.addTableHeaderField("Total Files Deleted").addTableHeaderField("Time taken in millis")
|
||||
.addTableHeaderField("Total Partitions");
|
||||
TableHeader header = new TableHeader().addTableHeaderField(HoodieTableHeaderFields.HEADER_INSTANT)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_ROLLBACK_INSTANT)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_TOTAL_FILES_DELETED)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_TIME_TOKEN_MILLIS)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_TOTAL_PARTITIONS);
|
||||
return HoodiePrintHelper.print(header, new HashMap<>(), sortByField, descending, limit, headerOnly, rows);
|
||||
}
|
||||
|
||||
@@ -112,8 +114,11 @@ public class RollbacksCommand implements CommandMarker {
|
||||
rows.add(row);
|
||||
}));
|
||||
|
||||
TableHeader header = new TableHeader().addTableHeaderField("Instant").addTableHeaderField("Rolledback Instants")
|
||||
.addTableHeaderField("Partition").addTableHeaderField("Deleted File").addTableHeaderField("Succeeded");
|
||||
TableHeader header = new TableHeader().addTableHeaderField(HoodieTableHeaderFields.HEADER_INSTANT)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_ROLLBACK_INSTANT)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_PARTITION)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_DELETED_FILE)
|
||||
.addTableHeaderField(HoodieTableHeaderFields.HEADER_SUCCEEDED);
|
||||
return HoodiePrintHelper.print(header, new HashMap<>(), sortByField, descending, limit, headerOnly, rows);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user