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);
     }
   }
 

Reply via email to