This is an automated email from the ASF dual-hosted git repository.
danny0405 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git
The following commit(s) were added to refs/heads/master by this push:
new ff95d6c5b2e [HUDI-6597] Fix closeReader in HoodieBackedTableMetadata
(#9299)
ff95d6c5b2e is described below
commit ff95d6c5b2e63859a0d76c030d2663dee99ac95d
Author: Zouxxyy <[email protected]>
AuthorDate: Fri Jul 28 11:44:35 2023 +0800
[HUDI-6597] Fix closeReader in HoodieBackedTableMetadata (#9299)
---
hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java | 2 +-
.../main/java/org/apache/hudi/metadata/HoodieBackedTableMetadata.java | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java
b/hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java
index 7dd400271ad..a6146745b2b 100644
--- a/hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java
+++ b/hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java
@@ -302,7 +302,7 @@ public class FSUtils {
HoodieMetadataConfig metadataConfig,
String
basePathStr,
String[]
partitionPaths) {
- try (HoodieTableMetadata tableMetadata =
HoodieTableMetadata.create(engineContext, metadataConfig, basePathStr, true)) {
+ try (HoodieTableMetadata tableMetadata =
HoodieTableMetadata.create(engineContext, metadataConfig, basePathStr)) {
return
tableMetadata.getAllFilesInPartitions(Arrays.asList(partitionPaths));
} catch (Exception ex) {
throw new HoodieException("Error get files in partitions: " +
String.join(",", partitionPaths), ex);
diff --git
a/hudi-common/src/main/java/org/apache/hudi/metadata/HoodieBackedTableMetadata.java
b/hudi-common/src/main/java/org/apache/hudi/metadata/HoodieBackedTableMetadata.java
index 9a27d2cfbca..48cab6a8953 100644
---
a/hudi-common/src/main/java/org/apache/hudi/metadata/HoodieBackedTableMetadata.java
+++
b/hudi-common/src/main/java/org/apache/hudi/metadata/HoodieBackedTableMetadata.java
@@ -305,6 +305,10 @@ public class HoodieBackedTableMetadata extends
BaseTableMetadata {
return readFromBaseAndMergeWithLogRecords(baseFileReader, sortedKeys,
fullKeys, logRecords, timings, partitionName);
} catch (IOException ioe) {
throw new HoodieIOException("Error merging records from metadata table
for " + keys.size() + " key : ", ioe);
+ } finally {
+ if (!reuse) {
+ closeReader(readers);
+ }
}
}