Claus Ibsen created CAMEL-25740:
-----------------------------------
Summary: Umbrella: bugs found while running the YAML examples of
CAMEL-25736
Key: CAMEL-25740
URL: https://issues.apache.org/jira/browse/CAMEL-25740
Project: Camel
Issue Type: Task
Components: camel-as2, camel-jbang, camel-ignite, camel-milo,
camel-tahu
Reporter: Claus Ibsen
Fix For: 4.24.0
While writing the YAML examples of CAMEL-25736, we ran them with {{camel run}}
and {{camel infra}}. The runs found these problems outside the documentation.
Each one can become its own issue when someone picks it up. "Confirmed" means
confirmed in the code.
h3. Components
* *camel-ignite*: the events and messaging consumers fail with a
NullPointerException when the component starts its own node from
{{igniteConfiguration}} or {{configurationResource}}. {{createConsumer}} calls
{{ignite()}} before {{doStart}} has started the node. _Confirmed._
* *camel-ignite*: two ignite components in one application each start a node.
ignite-idgen and ignite-queue together failed with "Backups mismatch for caches
related to the same group default-ds-group". _Seen in a run._
* *camel-ignite*: {{configurationResource}} as a Spring XML file needs
{{ignite-spring}}, but camel-ignite depends only on {{ignite-core}}. _Confirmed
in the pom._
* *camel-milo*: milo-server with {{enableAnonymousAuthentication=true}}:
clients get {{Bad_IdentityTokenInvalid}}, because the server installs a
username validator that does not accept anonymous tokens. _Confirmed._
* *camel-milo*: the milo-client producer: a read without {{CamelMiloAwait}} or
{{defaultAwaitWrites}} returns before the value arrives, so the next step has
the old body. The docs now say so; reads could always wait. _Confirmed._
* *camel-tahu*: the tahu-host consumer replaces all headers with the metrics
({{setHeaders(payloadMetrics)}}), so the message type, descriptor, timestamp
and sequence headers are lost when a message has metrics. _Confirmed._
* *camel-tahu*: tahu-edge splits {{deviceIds}} without a null check, so an Edge
Node without devices fails with a NullPointerException. _Confirmed._
* *camel-as2*: the server logs ERROR "FATAL: Decrypting Private Key failed to
be read back..." for every message when no decrypting key is set, which is
normal for plain messages. _Confirmed._
* *camel-amqp*: {{camel.component.amqp.host}}, {{.port}} and {{.broker-url}} as
properties have no effect under {{camel run}} ("connectionFactory must be
specified"). _Seen in a run, cause not confirmed._
* *camel-ldif*: after the first message, the next one runs on a reconnected but
unauthenticated connection ("modifications require authentication"). A
connection factory per message would fix it. _Seen in a run._
* *camel-duckdb*: a statement failed once with "Attempting to execute an
unsuccessful or closed pending query result" while another endpoint on the same
file ran DDL. _Seen once, not confirmed._
h3. Core and tooling
* *Bean constructors*: in YAML/XML bean {{constructors}}, {{#name}} resolves to
null without an error; only {{#bean:name}} works. The 4.23 upgrade guide
example with a constructor value of {{#kvStore}} fails with "repository must be
specified". _Seen in a run, cause not confirmed._
* *Bean factory*: YAML beans with {{factoryBean}} and {{factoryMethod}} only
call static methods ("Cannot create bean instance using factory method"). _Seen
in a run._
* *camel-jbang AI validator*: it flags a simple expression such as
$\{header.num1\} in a sql-stored {{to:}} uri and suggests {{toD}}, but
sql-stored reads those expressions itself. _Confirmed in a run._
* *camel-jbang AI validator*: the header check does not know prefix headers:
{{setHeader}} of {{CamelTahuMetric.temperature}} is flagged as "not set by
timer, tahu-edge". _Confirmed in a run._
* *camel run*: beans whose class comes from a component library (redis
{{StringRedisSerializer}}, {{OpaSecurityPolicy}}, tahu classes) fail at
pre-parse unless {{--dep}} is given. _Seen in several runs._
* *camel run*: {{apiContextPath}} does not add camel-openapi-java, so
{{--dep=camel:openapi-java}} is needed. _Seen in a run._
* *camel run*: starting an Ignite node from a Groovy bean fails with
"Implementation for BinariesFactory service not found". _Seen in a run._
* *camel run*: the langchain4j {{AllMiniLmL6V2EmbeddingModel}} fails with
"Embedding model file is not available". _Seen in a run._
* *camel infra*: in {{camel infra run ftps}}, the bundled {{server.jks}} has a
1024-bit DSA key, which TLS 1.3 rejects, so every handshake fails. _Seen in a
run._
* *camel infra*: weaviate, fhir and pulsar all bind host port 8080, so they
cannot run at the same time. _Seen in a run._
h3. Docs
* rest-dsl.adoc writes rest verbs as {{to: direct:x}}, which triggers the
compact-notation warning; the canonical form has {{uri:}} under {{to:}}.
Already fixed in the CAMEL-25736 pull requests: the camel-ldif codec dependency
and the consul {{action}} enum (apache/camel#28024), and the http
{{authMethod}} description (CAMEL-25739, apache/camel#28025).
_Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)