Skip to content
This repository was archived by the owner on Mar 23, 2026. It is now read-only.

Commit d783c3a

Browse files
author
Praful Makani
authored
fix: bigquery exception get reason and message (#788)
1 parent f36b558 commit d783c3a

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/BigQueryException.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,12 @@ public BigQueryException(int code, String message, BigQueryError error) {
5858
}
5959

6060
public BigQueryException(List<BigQueryError> errors) {
61-
super(0, null, null, false, RETRYABLE_ERRORS, null);
61+
super(
62+
0,
63+
errors != null ? errors.get(0).getMessage() : null,
64+
errors != null ? errors.get(0).getReason() : null,
65+
true,
66+
RETRYABLE_ERRORS);
6267
this.errors = errors;
6368
}
6469

google-cloud-bigquery/src/test/java/com/google/cloud/bigquery/it/ITBigQueryTest.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1475,9 +1475,10 @@ public void testSingleStatementsQueryException() throws InterruptedException {
14751475
try {
14761476
bigquery.create(JobInfo.of(QueryJobConfiguration.of(invalidQuery))).waitFor();
14771477
fail("BigQueryException was expected");
1478-
} catch (BigQueryException e) {
1479-
BigQueryError error = e.getError();
1480-
assertNotNull(error);
1478+
} catch (BigQueryException ex) {
1479+
assertEquals("invalidQuery", ex.getReason());
1480+
assertNotNull(ex.getMessage());
1481+
BigQueryError error = ex.getError();
14811482
assertEquals("invalidQuery", error.getReason());
14821483
assertNotNull(error.getMessage());
14831484
}
@@ -1491,10 +1492,11 @@ public void testMultipleStatementsQueryException() throws InterruptedException {
14911492
DATASET, TABLE_ID.getTable(), DATASET, TABLE_ID.getTable());
14921493
try {
14931494
bigquery.create(JobInfo.of(QueryJobConfiguration.of(invalidQuery))).waitFor();
1494-
fail("JobException was expected");
1495-
} catch (BigQueryException e) {
1496-
BigQueryError error = e.getError();
1497-
assertNotNull(error);
1495+
fail("BigQueryException was expected");
1496+
} catch (BigQueryException ex) {
1497+
assertEquals("invalidQuery", ex.getReason());
1498+
assertNotNull(ex.getMessage());
1499+
BigQueryError error = ex.getError();
14981500
assertEquals("invalidQuery", error.getReason());
14991501
assertNotNull(error.getMessage());
15001502
}

0 commit comments

Comments
 (0)