From aacd6a9338796cfa76b4fc865b051cc339a8a7e8 Mon Sep 17 00:00:00 2001 From: Christos michael Date: Wed, 6 May 2026 16:52:30 +0300 Subject: [PATCH 1/2] handle dremio unresponsive exception so caller methods of checkfolderpromoted can retry when dremio is unresponsive --- .../service/impl/DremioHelperServiceImpl.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java b/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java index cda5f2ef50..a1927ddb06 100644 --- a/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java +++ b/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java @@ -85,7 +85,14 @@ public String getAuthToken() { @Override public boolean checkFolderPromoted(S3PathResolver s3PathResolver, String folderName) { - DremioDirectoryItemsResponse directoryItems = getDirectoryItems(s3PathResolver, folderName); + DremioDirectoryItemsResponse directoryItems; + try { + directoryItems = getDirectoryItems(s3PathResolver, folderName); + } catch (Exception e) { + LOG.warn("Could not get directory items for folder {}", folderName, e); + return false; + } + if (directoryItems!=null) { Integer itemPosition; if (S3_IMPORT_FILE_PATH.equals(s3PathResolver.getPath())) { @@ -149,7 +156,14 @@ public DremioDirectoryItemsResponse getDirectoryItems(S3PathResolver s3PathResol @Override public String getFolderId(S3PathResolver s3PathResolver, String folderName) { String folderId = null; - DremioDirectoryItemsResponse directoryItems = getDirectoryItems(s3PathResolver, folderName); + DremioDirectoryItemsResponse directoryItems; + try { + directoryItems = getDirectoryItems(s3PathResolver, folderName); + } catch (Exception e) { + LOG.warn("Could not retrieve directory items for datasetId" + s3PathResolver.getDatasetId(), e); + return null; + } + if (directoryItems!=null) { Integer itemPosition; if (S3_IMPORT_FILE_PATH.equals(s3PathResolver.getPath())) { From c7231bd87f058d6782370fad43b3a52d8238ac22 Mon Sep 17 00:00:00 2001 From: Christos michael Date: Wed, 6 May 2026 17:15:08 +0300 Subject: [PATCH 2/2] throw exception for null because of previous commit --- .../eea/datalake/service/impl/DremioHelperServiceImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java b/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java index a1927ddb06..9765a9f826 100644 --- a/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java +++ b/common-utitlities/src/main/java/org/eea/datalake/service/impl/DremioHelperServiceImpl.java @@ -225,6 +225,11 @@ public void promoteFolderOrFile(S3PathResolver s3PathResolver, String folderName throw new RuntimeException(e); } } + + if (folderId == null) { + throw new DremioApiException("Could not retrieve folder id for datasetId " + + s3PathResolver.getDatasetId() + " and folder " + folderName); + } try { dremioApiController.promote(token, folderId, requestBody);