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

davsclaus pushed a commit to branch camel-4.18.x
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/camel-4.18.x by this push:
     new 26bc9180b9d9 CAMEL-24200: camel-aws2-timestream - createScheduledQuery 
sets the time column correctly
26bc9180b9d9 is described below

commit 26bc9180b9d9de0df88eab472f1cfadf51a0bae7
Author: Andrea Cosentino <[email protected]>
AuthorDate: Mon Jul 20 22:54:48 2026 +0200

    CAMEL-24200: camel-aws2-timestream - createScheduledQuery sets the time 
column correctly
    
    Backport of #24909. Time-column header now sets timeColumn instead of 
overwriting
    tableName; removes a duplicated role-ARN block.
    
    Closes #24948
    
    Co-authored-by: Claude Fable 5 <[email protected]>
---
 .../aws2/timestream/query/Timestream2QueryProducer.java        |  7 +------
 .../aws2/timestream/query/AmazonTimestreamQueryClientMock.java | 10 ++++++++++
 .../aws2/timestream/query/Timestream2QueryProducerTest.java    |  7 +++++++
 3 files changed, 18 insertions(+), 6 deletions(-)

diff --git 
a/components/camel-aws/camel-aws2-timestream/src/main/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducer.java
 
b/components/camel-aws/camel-aws2-timestream/src/main/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducer.java
index b5de72a625e1..6e02f395fc03 100644
--- 
a/components/camel-aws/camel-aws2-timestream/src/main/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducer.java
+++ 
b/components/camel-aws/camel-aws2-timestream/src/main/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducer.java
@@ -199,11 +199,6 @@ public class Timestream2QueryProducer extends 
DefaultProducer {
                         = 
ErrorReportConfiguration.builder().s3Configuration(s3Configuration.build()).build();
                 builder.errorReportConfiguration(errorReportConfiguration);
             }
-            if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Timestream2Constants.SCHEDULED_QUERY_EXECUTION_ROLE_ARN)))
 {
-                String roleArn
-                        = 
exchange.getIn().getHeader(Timestream2Constants.SCHEDULED_QUERY_EXECUTION_ROLE_ARN,
 String.class);
-                builder.scheduledQueryExecutionRoleArn(roleArn);
-            }
 
             TargetConfiguration.Builder targetConfiguration = 
TargetConfiguration.builder();
             TimestreamConfiguration.Builder timestreamConfigBuilder = 
TimestreamConfiguration.builder();
@@ -217,7 +212,7 @@ public class Timestream2QueryProducer extends 
DefaultProducer {
             }
             if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Timestream2Constants.TIME_COLUMN)))
 {
                 String timeColumn = 
exchange.getIn().getHeader(Timestream2Constants.TIME_COLUMN, String.class);
-                timestreamConfigBuilder.tableName(timeColumn);
+                timestreamConfigBuilder.timeColumn(timeColumn);
             }
             if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Timestream2Constants.MEASURE_NAME_COLUMN)))
 {
                 String measureNameColumn = 
exchange.getIn().getHeader(Timestream2Constants.MEASURE_NAME_COLUMN, 
String.class);
diff --git 
a/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/AmazonTimestreamQueryClientMock.java
 
b/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/AmazonTimestreamQueryClientMock.java
index 3cf54c21fae5..f3f39e9ebaa3 100644
--- 
a/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/AmazonTimestreamQueryClientMock.java
+++ 
b/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/AmazonTimestreamQueryClientMock.java
@@ -24,9 +24,18 @@ import 
software.amazon.awssdk.services.timestreamquery.model.*;
 
 public class AmazonTimestreamQueryClientMock implements TimestreamQueryClient {
 
+    private CreateScheduledQueryRequest lastCreateScheduledQueryRequest;
+
     public AmazonTimestreamQueryClientMock() {
     }
 
+    /**
+     * The last request passed to {@link #createScheduledQuery}, so tests can 
assert how it was built.
+     */
+    public CreateScheduledQueryRequest getLastCreateScheduledQueryRequest() {
+        return lastCreateScheduledQueryRequest;
+    }
+
     @Override
     public DescribeEndpointsResponse 
describeEndpoints(DescribeEndpointsRequest describeEndpointsRequest) {
         DescribeEndpointsResponse.Builder result = 
DescribeEndpointsResponse.builder();
@@ -47,6 +56,7 @@ public class AmazonTimestreamQueryClientMock implements 
TimestreamQueryClient {
 
     @Override
     public CreateScheduledQueryResponse 
createScheduledQuery(CreateScheduledQueryRequest createScheduledQueryRequest) {
+        this.lastCreateScheduledQueryRequest = createScheduledQueryRequest;
         CreateScheduledQueryResponse.Builder result = 
CreateScheduledQueryResponse.builder();
         result.arn("aws-timestream:test:scheduled-query:arn");
         return result.build();
diff --git 
a/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducerTest.java
 
b/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducerTest.java
index 846df528395c..31018bfeacbb 100644
--- 
a/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducerTest.java
+++ 
b/components/camel-aws/camel-aws2-timestream/src/test/java/org/apache/camel/component/aws2/timestream/query/Timestream2QueryProducerTest.java
@@ -107,6 +107,13 @@ public class Timestream2QueryProducerTest extends 
CamelTestSupport {
 
         CreateScheduledQueryResponse resultGet = 
(CreateScheduledQueryResponse) exchange.getIn().getBody();
         assertEquals("aws-timestream:test:scheduled-query:arn", 
resultGet.arn());
+
+        // The time-column header must land in timeColumn and must not 
overwrite the table name.
+        TimestreamConfiguration timestreamConfiguration
+                = 
clientMock.getLastCreateScheduledQueryRequest().targetConfiguration().timestreamConfiguration();
+        assertEquals("TESTDB", timestreamConfiguration.databaseName());
+        assertEquals("TESTTABLE", timestreamConfiguration.tableName());
+        assertEquals("time", timestreamConfiguration.timeColumn());
     }
 
     @Test

Reply via email to