Skip to content

Commit 16e2a45

Browse files
committed
fix
1 parent b8cc00a commit 16e2a45

File tree

4 files changed

+29
-76
lines changed

4 files changed

+29
-76
lines changed

paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/procedure/MigrateTableProcedure.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,6 @@ public String[] call(
6767
Integer parallelism,
6868
Boolean deleteOrigin)
6969
throws Exception {
70-
if (targetTable == null && !deleteOrigin) {
71-
throw new IllegalArgumentException("delete_origin is false but targetTable is null.");
72-
}
73-
7470
Identifier sourceTableId = Identifier.fromString(sourceTable);
7571
Identifier targetTableId =
7672
Identifier.fromString(

paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/procedure/MigrateFileProcedureITCase.java

Lines changed: 13 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -56,23 +56,17 @@ public void afterEach() throws Exception {
5656
}
5757

5858
private static Stream<Arguments> testArguments() {
59-
return Stream.of(
60-
Arguments.of("orc", true),
61-
Arguments.of("avro", true),
62-
Arguments.of("parquet", true),
63-
Arguments.of("orc", false),
64-
Arguments.of("avro", false),
65-
Arguments.of("parquet", false));
59+
return Stream.of(Arguments.of("orc"), Arguments.of("avro"), Arguments.of("parquet"));
6660
}
6761

6862
@ParameterizedTest
6963
@MethodSource("testArguments")
70-
public void testMigrateFile(String format, boolean isNamedArgument) throws Exception {
71-
test(format, isNamedArgument);
72-
testMigrateFileAction(format, isNamedArgument);
64+
public void testMigrateFile(String format) throws Exception {
65+
test(format);
66+
testMigrateFileAction(format);
7367
}
7468

75-
public void test(String format, boolean isNamedArgument) throws Exception {
69+
public void test(String format) throws Exception {
7670
TableEnvironment tEnv = tableEnvironmentBuilder().batchMode().build();
7771
tEnv.executeSql("CREATE CATALOG HIVE WITH ('type'='hive')");
7872
tEnv.useCatalog("HIVE");
@@ -97,21 +91,16 @@ public void test(String format, boolean isNamedArgument) throws Exception {
9791
tEnv.useCatalog("PAIMON");
9892
tEnv.executeSql(
9993
"CREATE TABLE paimontable (id STRING, id2 INT, id3 INT) PARTITIONED BY (id2, id3) with ('bucket' = '-1');");
100-
if (isNamedArgument) {
101-
tEnv.executeSql(
102-
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', target_table => 'default.paimontable')")
103-
.await();
104-
} else {
105-
tEnv.executeSql(
106-
"CALL sys.migrate_table('hive', 'default.hivetable', 'default.paimontable')")
107-
.await();
108-
}
94+
tEnv.executeSql(
95+
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', target_table => 'default.paimontable')")
96+
.await();
97+
10998
List<Row> r2 = ImmutableList.copyOf(tEnv.executeSql("SELECT * FROM paimontable").collect());
11099

111100
Assertions.assertThatList(r1).containsExactlyInAnyOrderElementsOf(r2);
112101
}
113102

114-
public void testMigrateFileAction(String format, boolean isNamedArgument) throws Exception {
103+
public void testMigrateFileAction(String format) throws Exception {
115104
TableEnvironment tEnv = tableEnvironmentBuilder().batchMode().build();
116105
tEnv.executeSql("CREATE CATALOG HIVE WITH ('type'='hive')");
117106
tEnv.useCatalog("HIVE");
@@ -141,15 +130,9 @@ public void testMigrateFileAction(String format, boolean isNamedArgument) throws
141130
tEnv.executeSql(
142131
"CREATE TABLE paimontable01 (id STRING, id2 INT, id3 INT) PARTITIONED BY (id2, id3) with ('bucket' = '-1');");
143132

144-
if (isNamedArgument) {
145-
tEnv.executeSql(
146-
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable01', target_table => 'default.paimontable01', delete_origin => false)")
147-
.await();
148-
} else {
149-
tEnv.executeSql(
150-
"CALL sys.migrate_table('hive', 'default.hivetable01', 'default.paimontable01', false)")
151-
.await();
152-
}
133+
tEnv.executeSql(
134+
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable01', target_table => 'default.paimontable01', delete_origin => false)")
135+
.await();
153136

154137
tEnv.useCatalog("HIVE");
155138
List<Row> r1 = ImmutableList.copyOf(tEnv.executeSql("SELECT * FROM hivetable01").collect());

paimon-hive/paimon-hive-connector-common/src/test/java/org/apache/paimon/hive/procedure/MigrateTableProcedureITCase.java

Lines changed: 16 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -60,21 +60,15 @@ public void afterEach() throws Exception {
6060
}
6161

6262
private static Stream<Arguments> testArguments() {
63-
return Stream.of(
64-
Arguments.of("orc", true),
65-
Arguments.of("avro", true),
66-
Arguments.of("parquet", true),
67-
Arguments.of("orc", false),
68-
Arguments.of("avro", false),
69-
Arguments.of("parquet", false));
63+
return Stream.of(Arguments.of("orc"), Arguments.of("avro"), Arguments.of("parquet"));
7064
}
7165

7266
@ParameterizedTest
7367
@MethodSource("testArguments")
74-
public void testMigrateProcedure(String format, boolean isNamedArgument) throws Exception {
75-
testUpgradeNonPartitionTable(format, isNamedArgument);
68+
public void testMigrateProcedure(String format) throws Exception {
69+
testUpgradeNonPartitionTable(format);
7670
resetMetastore();
77-
testUpgradePartitionTable(format, isNamedArgument);
71+
testUpgradePartitionTable(format);
7872
}
7973

8074
private void resetMetastore() throws Exception {
@@ -83,7 +77,7 @@ private void resetMetastore() throws Exception {
8377
TEST_HIVE_METASTORE.start(PORT);
8478
}
8579

86-
public void testUpgradePartitionTable(String format, boolean isNamedArgument) throws Exception {
80+
public void testUpgradePartitionTable(String format) throws Exception {
8781
TableEnvironment tEnv = tableEnvironmentBuilder().batchMode().build();
8882
tEnv.executeSql("CREATE CATALOG HIVE WITH ('type'='hive')");
8983
tEnv.useCatalog("HIVE");
@@ -106,26 +100,17 @@ public void testUpgradePartitionTable(String format, boolean isNamedArgument) th
106100
+ System.getProperty(HiveConf.ConfVars.METASTOREWAREHOUSE.varname)
107101
+ "')");
108102
tEnv.useCatalog("PAIMON");
109-
if (isNamedArgument) {
110-
tEnv.executeSql(
111-
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', options => 'file.format="
112-
+ format
113-
+ "')")
114-
.await();
115-
} else {
116-
tEnv.executeSql(
117-
"CALL sys.migrate_table('hive', 'default.hivetable', 'file.format="
118-
+ format
119-
+ "')")
120-
.await();
121-
}
103+
tEnv.executeSql(
104+
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', options => 'file.format="
105+
+ format
106+
+ "')")
107+
.await();
122108
List<Row> r2 = ImmutableList.copyOf(tEnv.executeSql("SELECT * FROM hivetable").collect());
123109

124110
Assertions.assertThatList(r1).containsExactlyInAnyOrderElementsOf(r2);
125111
}
126112

127-
public void testUpgradeNonPartitionTable(String format, boolean isNamedArgument)
128-
throws Exception {
113+
public void testUpgradeNonPartitionTable(String format) throws Exception {
129114
TableEnvironment tEnv = tableEnvironmentBuilder().batchMode().build();
130115
tEnv.executeSql("CREATE CATALOG HIVE WITH ('type'='hive')");
131116
tEnv.useCatalog("HIVE");
@@ -146,19 +131,11 @@ public void testUpgradeNonPartitionTable(String format, boolean isNamedArgument)
146131
+ System.getProperty(HiveConf.ConfVars.METASTOREWAREHOUSE.varname)
147132
+ "')");
148133
tEnv.useCatalog("PAIMON");
149-
if (isNamedArgument) {
150-
tEnv.executeSql(
151-
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', options => 'file.format="
152-
+ format
153-
+ "')")
154-
.await();
155-
} else {
156-
tEnv.executeSql(
157-
"CALL sys.migrate_table('hive', 'default.hivetable', 'file.format="
158-
+ format
159-
+ "')")
160-
.await();
161-
}
134+
tEnv.executeSql(
135+
"CALL sys.migrate_table(connector => 'hive', source_table => 'default.hivetable', options => 'file.format="
136+
+ format
137+
+ "')")
138+
.await();
162139
List<Row> r2 = ImmutableList.copyOf(tEnv.executeSql("SELECT * FROM hivetable").collect());
163140

164141
Assertions.assertThatList(r1).containsExactlyInAnyOrderElementsOf(r2);

paimon-spark/paimon-spark-common/src/main/java/org/apache/paimon/spark/procedure/MigrateTableProcedure.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,6 @@ public InternalRow[] call(InternalRow args) {
9696
int parallelism =
9797
args.isNullAt(6) ? Runtime.getRuntime().availableProcessors() : args.getInt(6);
9898

99-
if (targetTable == null && !deleteNeed) {
100-
throw new IllegalArgumentException("delete_origin is false but targetTable is null.");
101-
}
10299
Identifier sourceTableId = Identifier.fromString(sourceTable);
103100
Identifier tmpTableId =
104101
StringUtils.isEmpty(targetTable)

0 commit comments

Comments
 (0)