This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 8d91377e498 CAMEL-18393 Camel-bigquery: NPE if select * is requested
(#8162)
8d91377e498 is described below
commit 8d91377e49831e4ab883d123d1804b08a77ef374
Author: JiriOndrusek <[email protected]>
AuthorDate: Mon Aug 15 19:21:50 2022 +0200
CAMEL-18393 Camel-bigquery: NPE if select * is requested (#8162)
---
.../google/bigquery/sql/GoogleBigQuerySQLProducer.java | 10 ++++++++--
.../camel-google-bigquery/src/test/resources/sql/delete.sql | 2 +-
.../camel-google-bigquery/src/test/resources/sql/insert.sql | 2 +-
3 files changed, 10 insertions(+), 4 deletions(-)
diff --git
a/components/camel-google/camel-google-bigquery/src/main/java/org/apache/camel/component/google/bigquery/sql/GoogleBigQuerySQLProducer.java
b/components/camel-google/camel-google-bigquery/src/main/java/org/apache/camel/component/google/bigquery/sql/GoogleBigQuerySQLProducer.java
index da98cca893d..82fae9bcedb 100644
---
a/components/camel-google/camel-google-bigquery/src/main/java/org/apache/camel/component/google/bigquery/sql/GoogleBigQuerySQLProducer.java
+++
b/components/camel-google/camel-google-bigquery/src/main/java/org/apache/camel/component/google/bigquery/sql/GoogleBigQuerySQLProducer.java
@@ -108,12 +108,18 @@ public class GoogleBigQuerySQLProducer extends
DefaultProducer {
Job job = bigquery.create(JobInfo.of(queryJobId,
queryJobConfiguration)).waitFor();
JobStatistics.QueryStatistics statistics = job.getStatistics();
TableResult result = job.getQueryResults();
- long numAffectedRows = statistics.getNumDmlAffectedRows();
+ Long numAffectedRows = statistics.getNumDmlAffectedRows();
if (LOG.isTraceEnabled()) {
LOG.trace("Query {} - Affected rows {} - Result {}",
translatedQuery, numAffectedRows, result);
}
- return numAffectedRows;
+
+ //numAffectedRows is present only for DML statements INSERT,
UPDATE or DELETE.
+ if (numAffectedRows != null) {
+ return numAffectedRows;
+ }
+ //in other cases (SELECT), the number of affected rows is returned
+ return result.getTotalRows();
} catch (JobException e) {
throw new Exception("Query " + translatedQuery + " failed: " +
e.getErrors(), e);
} catch (BigQueryException e) {
diff --git
a/components/camel-google/camel-google-bigquery/src/test/resources/sql/delete.sql
b/components/camel-google/camel-google-bigquery/src/test/resources/sql/delete.sql
index 1a05bfd0845..48cb4fe0394 100644
---
a/components/camel-google/camel-google-bigquery/src/test/resources/sql/delete.sql
+++
b/components/camel-google/camel-google-bigquery/src/test/resources/sql/delete.sql
@@ -15,4 +15,4 @@
-- limitations under the License.
--
-delete from test.test_sql_table where id = :id
\ No newline at end of file
+delete from test_dataset.test_sql_table where id = :id
\ No newline at end of file
diff --git
a/components/camel-google/camel-google-bigquery/src/test/resources/sql/insert.sql
b/components/camel-google/camel-google-bigquery/src/test/resources/sql/insert.sql
index 05d19bd1964..5eb41d41b17 100644
---
a/components/camel-google/camel-google-bigquery/src/test/resources/sql/insert.sql
+++
b/components/camel-google/camel-google-bigquery/src/test/resources/sql/insert.sql
@@ -15,5 +15,5 @@
-- limitations under the License.
--
-insert into test.test_sql_table (col1, col2)
+insert into test_dataset.test_sql_table (col1, col2)
values (@col1, @col2)
\ No newline at end of file