This is an automated email from the ASF dual-hosted git repository.
vinoyang 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 218f2a6 [HUDI-2062] Catch FileNotFoundException in WriteProfiles
#getCommitMetadata Safely (#3138)
218f2a6 is described below
commit 218f2a6df8a41279d904a76b594d22f4d66d17c2
Author: yuzhaojing <[email protected]>
AuthorDate: Fri Jun 25 08:54:59 2021 +0800
[HUDI-2062] Catch FileNotFoundException in WriteProfiles #getCommitMetadata
Safely (#3138)
Co-authored-by: 喻兆靖 <[email protected]>
---
.../org/apache/hudi/sink/partitioner/profile/WriteProfiles.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git
a/hudi-flink/src/main/java/org/apache/hudi/sink/partitioner/profile/WriteProfiles.java
b/hudi-flink/src/main/java/org/apache/hudi/sink/partitioner/profile/WriteProfiles.java
index 20bc46d..d62b208 100644
---
a/hudi-flink/src/main/java/org/apache/hudi/sink/partitioner/profile/WriteProfiles.java
+++
b/hudi-flink/src/main/java/org/apache/hudi/sink/partitioner/profile/WriteProfiles.java
@@ -150,14 +150,17 @@ public class WriteProfiles {
Path basePath,
HoodieInstant instant,
HoodieTimeline timeline) {
- byte[] data = timeline.getInstantDetails(instant).get();
try {
+ byte[] data = timeline.getInstantDetails(instant).get();
return Option.of(HoodieCommitMetadata.fromBytes(data,
HoodieCommitMetadata.class));
- } catch (IOException e) {
+ } catch (FileNotFoundException fe) {
// make this fail safe.
+ LOG.warn("Instant {} was deleted by the cleaner, ignore",
instant.getTimestamp());
+ return Option.empty();
+ } catch (IOException e) {
LOG.error("Get write metadata for table {} with instant {} and path: {}
error",
tableName, instant.getTimestamp(), basePath);
- return Option.empty();
+ throw new HoodieException(e);
}
}