oscerd opened a new pull request, #25620:
URL: https://github.com/apache/camel/pull/25620
Backport of #25564 (merged on `main`, 4.23.0-only until now).
Two ways the pubsub producer lost or broke a send:
* **A list body mixing aggregated exchanges with plain payloads published
only the exchanges** and
threw the rest away without a word. The producer documents two shapes — a
list of aggregated
exchanges, or a single payload — and a mixed list is neither, so it is now
refused with a message
saying how many of each it found. **Both documented shapes are
unchanged:** a list of only exchanges
still publishes one message per exchange, and a list with no exchange in
it is still published as one
payload.
* **A header that does not convert to a String failed the whole send with a
`NullPointerException`**,
because `putAttributes` rejects null. Such headers are now skipped (a
Pub/Sub attribute cannot be
null anyway) and logged at debug; headers that do convert are unaffected
and the
`HeaderFilterStrategy` still decides which ones travel.
Cherry-picked with no adaptation — the commit carries its own `assertj-core`
test dependency, and
Mockito was already on this module's test classpath. Module tests and the
full reactor build are green
here, with a clean working tree afterwards.
_Claude Code on behalf of oscerd_
🤖 Generated with [Claude Code](https://claude.com/claude-code)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]