Skip to content

Commit 9916c22

Browse files
committed
fix ut errors
1 parent 818662a commit 9916c22

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

paimon-common/src/main/java/org/apache/paimon/fs/MetricsFileIO.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,14 @@ public MetricsFileIO withMetrics(InputMetrics inputMetrics, OutputMetrics output
4646
return this;
4747
}
4848

49+
public FileIO getFileIOInternal() {
50+
FileIO currentFileIO = fileIO;
51+
while (currentFileIO instanceof MetricsFileIO) {
52+
currentFileIO = ((MetricsFileIO) currentFileIO).fileIO;
53+
}
54+
return currentFileIO;
55+
}
56+
4957
@VisibleForTesting
5058
public Boolean isMetricsEnabled() {
5159
return inputMetrics != null && outputMetrics != null;

paimon-core/src/test/java/org/apache/paimon/rest/RESTCatalogTest.java

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
import org.apache.paimon.data.BinaryString;
2828
import org.apache.paimon.data.GenericRow;
2929
import org.apache.paimon.data.InternalRow;
30+
import org.apache.paimon.fs.FileIO;
31+
import org.apache.paimon.fs.MetricsFileIO;
3032
import org.apache.paimon.options.Options;
3133
import org.apache.paimon.partition.Partition;
3234
import org.apache.paimon.partition.PartitionStatistics;
@@ -974,7 +976,12 @@ void testRefreshFileIO() throws Exception {
974976
FileStoreTable fileStoreTable = (FileStoreTable) catalog.getTable(identifier);
975977
assertEquals(true, fileStoreTable.fileIO().exists(fileStoreTable.location()));
976978

977-
RESTTokenFileIO fileIO = (RESTTokenFileIO) fileStoreTable.fileIO();
979+
FileIO fileIOOrigin = fileStoreTable.fileIO();
980+
FileIO fileIOInternal =
981+
fileIOOrigin instanceof MetricsFileIO
982+
? ((MetricsFileIO) fileIOOrigin).getFileIOInternal()
983+
: fileIOOrigin;
984+
RESTTokenFileIO fileIO = (RESTTokenFileIO) fileIOInternal;
978985
RESTToken fileDataToken = fileIO.validToken();
979986
RESTToken serverDataToken = getDataTokenFromRestServer(identifier);
980987
assertEquals(serverDataToken, fileDataToken);
@@ -993,7 +1000,12 @@ void testRefreshFileIOWhenExpired() throws Exception {
9931000
setDataTokenToRestServerForMock(identifier, expiredDataToken);
9941001
createTable(identifier, Maps.newHashMap(), Lists.newArrayList("col1"));
9951002
FileStoreTable fileStoreTable = (FileStoreTable) catalog.getTable(identifier);
996-
RESTTokenFileIO fileIO = (RESTTokenFileIO) fileStoreTable.fileIO();
1003+
FileIO fileIOOrigin = fileStoreTable.fileIO();
1004+
FileIO fileIOInternal =
1005+
fileIOOrigin instanceof MetricsFileIO
1006+
? ((MetricsFileIO) fileIOOrigin).getFileIOInternal()
1007+
: fileIOOrigin;
1008+
RESTTokenFileIO fileIO = (RESTTokenFileIO) fileIOInternal;
9971009
RESTToken fileDataToken = fileIO.validToken();
9981010
assertEquals(expiredDataToken, fileDataToken);
9991011
RESTToken newDataToken =
@@ -1121,7 +1133,13 @@ public void testDataTokenUnExistInServer() throws Exception {
11211133
Identifier.create("test_data_token", "table_for_un_exist_date_token");
11221134
createTable(identifier, Maps.newHashMap(), Lists.newArrayList("col1"));
11231135
FileStoreTable tableTestWrite = (FileStoreTable) catalog.getTable(identifier);
1124-
RESTTokenFileIO restTokenFileIO = (RESTTokenFileIO) tableTestWrite.fileIO();
1136+
FileIO fileIOOrigin = tableTestWrite.fileIO();
1137+
FileIO fileIOInternal =
1138+
fileIOOrigin instanceof MetricsFileIO
1139+
? ((MetricsFileIO) fileIOOrigin).getFileIOInternal()
1140+
: fileIOOrigin;
1141+
RESTTokenFileIO fileIO = (RESTTokenFileIO) fileIOInternal;
1142+
RESTTokenFileIO restTokenFileIO = (RESTTokenFileIO) fileIO;
11251143
List<Integer> data = Lists.newArrayList(12);
11261144
// as RESTTokenFileIO is lazy so we need to call isObjectStore() to init fileIO
11271145
restTokenFileIO.isObjectStore();

0 commit comments

Comments
 (0)