[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 <mhubail@apache.org>
Tested-by: Hussain Towaileb <hussainht@gmail.com>
Integration-Tests: Hussain Towaileb <hussainht@gmail.com>
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 b61d62d..c879ec6 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 @@
 
                 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());