I use a sql endpoint to run a query from camel. But when i call a second the CamelSqlRowCount isn't changed:
@Component
public class TestSQLRowCount extends RouteBuilder {
@Override
public void configure() throws Exception {
from("timer://testsql?fixedRate=true&period=5000")
.to("sql:select 1 from dual_seq?dataSource=#dataSource&outputHeader=TEST_ROW_COUNT&outputType=SelectOne")
.log("OLD_AUDIT_DATA ${headers.TEST_ROW_COUNT} - ROW_COUNT ${headers.CamelSqlRowCount}")
.to("sql:select 1 from dual_seq where 0 = 1?dataSource=#dataSource&outputHeader=TEST_ROW_COUNT2&outputType=SelectOne")
.log("OLD_AUDIT_DATA ${headers.TEST_ROW_COUNT2} - ROW_COUNT ${headers.CamelSqlRowCount}")
.end();
}
}
Output:
2021-12-01 14:20:02.880 INFO OLD_AUDIT_DATA 1 - ROW_COUNT 1
2021-12-01 14:20:02.944 INFO OLD_AUDIT_DATA - ROW_COUNT 1
When i switch the statements:
@Component
public class TestSQLRowCount extends RouteBuilder {
@Override
public void configure() throws Exception {
from("timer://testsql?fixedRate=true&period=5000")
.to("sql:select 1 from dual_seq where 0 = 1?dataSource=#dataSource&outputHeader=TEST_ROW_COUNT2&outputType=SelectOne")
.log("OLD_AUDIT_DATA ${headers.TEST_ROW_COUNT2} - ROW_COUNT ${headers.CamelSqlRowCount}")
.to("sql:select 1 from dual_seq?dataSource=#dataSource&outputHeader=TEST_ROW_COUNT&outputType=SelectOne")
.log("OLD_AUDIT_DATA ${headers.TEST_ROW_COUNT} - ROW_COUNT ${headers.CamelSqlRowCount}")
.end();
}
}
Output:
2021-12-01 14:22:25.021 INFO OLD_AUDIT_DATA - ROW_COUNT 0
2021-12-01 14:22:25.076 INFO OLD_AUDIT_DATA 1 - ROW_COUNT 0
How can I reset the header ?
Thanks in advance
Bart