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 <32435329+yuzhaoj...@users.noreply.github.com> AuthorDate: Fri Jun 25 08:54:59 2021 +0800 [HUDI-2062] Catch FileNotFoundException in WriteProfiles #getCommitMetadata Safely (#3138) Co-authored-by: 喻兆靖 <yuzhaoj...@bilibili.com> --- .../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); } }