This is an automated email from the ASF dual-hosted git repository.

mhubail pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git

commit 3a5a1936dcfba058978050b20eead6f052bbfa57
Author: Hussain Towaileb <[email protected]>
AuthorDate: Fri Nov 15 16:54:54 2024 +0300

    [NO ISSUE][EXT]: Handle errors during processing GCS credentials
    
    Ext-ref: MB-64269
    Change-Id: If72aa31f5f4650495264b1ca763e61d365cc951c
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19074
    Reviewed-by: Murtadha Hubail <[email protected]>
    Tested-by: Hussain Towaileb <[email protected]>
    Integration-Tests: Hussain Towaileb <[email protected]>
---
 .../java/org/apache/asterix/external/util/ExternalDataUtils.java   | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
index b61d62dd61..c879ec6428 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
@@ -1881,14 +1881,17 @@ public class ExternalDataUtils {
 
                 try {
                     
builder.setCredentials(GoogleCredentials.getApplicationDefault());
-                } catch (IOException ex) {
+                } catch (Exception ex) {
                     throw CompilationException.create(EXTERNAL_SOURCE_ERROR, 
getMessageOrToString(ex));
                 }
             } else if (jsonCredentials != null) {
                 try (InputStream credentialsStream = new 
ByteArrayInputStream(jsonCredentials.getBytes())) {
                     
builder.setCredentials(GoogleCredentials.fromStream(credentialsStream));
                 } catch (IOException ex) {
-                    throw new CompilationException(EXTERNAL_SOURCE_ERROR, 
getMessageOrToString(ex));
+                    throw CompilationException.create(EXTERNAL_SOURCE_ERROR, 
getMessageOrToString(ex));
+                } catch (Exception ex) {
+                    throw new CompilationException(EXTERNAL_SOURCE_ERROR,
+                            "Encountered an issue while processing the JSON 
credentials. Please ensure the provided credentials are valid.");
                 }
             } else {
                 builder.setCredentials(NoCredentials.getInstance());

Reply via email to