You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by "oscerd (via GitHub)" <gi...@apache.org> on 2026/08/27 16:52:04 UTC
[PR] CAMEL-24478: camel-grpc - add a muteException consumer option [camel]
oscerd opened a new pull request, #25839:
URL: https://github.com/apache/camel/pull/25839
Fixes [CAMEL-24478](https://issues.apache.org/jira/browse/CAMEL-24478).
## The gRPC consumer returns the route exception to the client
`GrpcMethodHandler` builds the error status from the route's exception:
```java
responseObserver.onError(Status.INTERNAL
.withDescription(exchange.getException().getMessage())
// This can be attached to the Status locally, but NOT transmitted to the client!
.withCause(exchange.getException())
.asRuntimeException());
```
The existing comment is the tell: the **cause** stays local, but the **description is transmitted**. So
any remote-triggerable route failure hands the caller the exception's message.
[CAMEL-23651](https://issues.apache.org/jira/browse/CAMEL-23651) aligned the HTTP consumers on a
`muteException` option defaulting to `true`. camel-grpc had none — the last of the four consumers in
that family.
## The change
`muteException` on `GrpcConfiguration`, consumer scope, default `true`. Only the description is replaced,
with `Exchange processing failed`; the `Status.INTERNAL` code and the locally-attached cause are unchanged.
`GrpcRequestPropagationStreamObserver.onError` is **deliberately untouched** — it forwards a `Throwable`
the client itself sent upstream, not route internals.
## Testing
Two tests added to the existing `GrpcConsumerExceptionTest`: the status description no longer carries the
route exception by default, and `muteException=false` restores it. The unmuted case runs against a second
route on its own port.
**Note on an unrelated failure:** `testExchangeExceptionHandling` in that class fails, and it fails on
`main` without this change too — I verified by reverting the main-code change entirely and re-running.
It is pre-existing and not caused by this PR, but worth someone looking at.
`camel-grpc` builds clean and a full `mvn clean install -DskipTests` is green across 693 modules. The
catalog diff is a pure re-index plus the one new option — no option was removed.
## Family
Completes the muteException set: CAMEL-24428 knative (merged), CAMEL-24476 mina (#25741),
CAMEL-24477 cxf (#25742), and this one.
_Claude Code on behalf of oscerd_
--
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: commits-unsubscribe@camel.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] CAMEL-24478: camel-grpc - add a muteException consumer option [camel]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #25839:
URL: https://github.com/apache/camel/pull/25839#issuecomment-5448521507
:star2: Thank you for your contribution to the Apache Camel project! :star2:
:robot: CI automation will test this PR automatically.
:camel: Apache Camel Committers, please review the following items:
* First-time contributors **require MANUAL approval** for the GitHub Actions to run
* You can use the command `/component-test (camel-)component-name1 (camel-)component-name2..` to request a test from the test bot although they are normally detected and executed by CI.
* You can label PRs using `skip-tests` and `test-dependents` to fine-tune the checks executed by this PR.
* Build and test logs are available in the summary page. **Only** [Apache Camel committers](https://camel.apache.org/community/team/#committers) have access to the summary.
:warning: Be careful when sharing logs. Review their contents before sharing them publicly.
--
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: commits-unsubscribe@camel.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] CAMEL-24478: camel-grpc - add a muteException consumer option [camel]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #25839:
URL: https://github.com/apache/camel/pull/25839#issuecomment-5448620551
<!-- ci-tested-modules -->
:test_tube: **CI tested the following changed modules:**
- `catalog/camel-catalog`
- `components/camel-grpc`
- `docs`
- `dsl/camel-endpointdsl`
---
<details><summary>:microscope: Scalpel shadow comparison — Scalpel: 12 tested, 25 compile-only — current: 9 all tested</summary>
[Maveniverse Scalpel](https://github.com/maveniverse/scalpel) detected **37 affected modules** (current approach: 9).
<details><summary>:warning: Modules only in Scalpel (28)</summary>
- `apache-camel`
- `camel-allcomponents`
- `camel-catalog`
- `camel-catalog-console`
- `camel-catalog-maven`
- `camel-catalog-suggest`
- `camel-componentdsl`
- `camel-csimple-maven-plugin`
- `camel-endpointdsl`
- `camel-endpointdsl-support`
- `camel-itest`
- `camel-jbang-core`
- `camel-jbang-it`
- `camel-jbang-main`
- `camel-jbang-plugin-edit`
- `camel-jbang-plugin-generate`
- `camel-jbang-plugin-kubernetes`
- `camel-jbang-plugin-test`
- `camel-kamelet-main`
- `camel-launcher`
- `camel-report-maven-plugin`
- `camel-route-parser`
- `camel-yaml-dsl`
- `camel-yaml-dsl-deserializers`
- `camel-yaml-dsl-maven-plugin`
- `coverage`
- `docs`
- `dummy-component`
</details>
**Skip-tests mode would test 12 modules** (4 direct + 8 downstream), **skip tests for 25** (generated code, meta-modules)
<details><summary>Modules Scalpel would test (12)</summary>
- `camel-catalog`
- `camel-endpointdsl`
- `camel-grpc`
- `camel-jbang-mcp`
- `camel-jbang-plugin-mcp`
- `camel-jbang-plugin-route-parser`
- `camel-jbang-plugin-tui`
- `camel-jbang-plugin-validate`
- `camel-launcher-container`
- `camel-yaml-dsl-validator`
- `camel-yaml-dsl-validator-maven-plugin`
- `docs`
</details>
<details><summary>Modules with tests skipped (25)</summary>
- `apache-camel`
- `camel-allcomponents`
- `camel-catalog-console`
- `camel-catalog-maven`
- `camel-catalog-suggest`
- `camel-componentdsl`
- `camel-csimple-maven-plugin`
- `camel-endpointdsl-support`
- `camel-itest`
- `camel-jbang-core`
- `camel-jbang-it`
- `camel-jbang-main`
- `camel-jbang-plugin-edit`
- `camel-jbang-plugin-generate`
- `camel-jbang-plugin-kubernetes`
- `camel-jbang-plugin-test`
- `camel-kamelet-main`
- `camel-launcher`
- `camel-report-maven-plugin`
- `camel-route-parser`
- `camel-yaml-dsl`
- `camel-yaml-dsl-deserializers`
- `camel-yaml-dsl-maven-plugin`
- `coverage`
- `dummy-component`
</details>
> :information_source: Shadow mode — Scalpel observes but does not affect test execution. [Learn more](https://github.com/maveniverse/scalpel)
</details>
<details><summary>All tested modules (37 modules)</summary>
- Camel :: All Components Sync point
- Camel :: Assembly
- Camel :: Catalog :: CSimple Maven Plugin (deprecated)
- Camel :: Catalog :: Camel Catalog
- Camel :: Catalog :: Camel Report Maven Plugin
- Camel :: Catalog :: Camel Route Parser
- Camel :: Catalog :: Console
- Camel :: Catalog :: Dummy Component
- Camel :: Catalog :: Maven
- Camel :: Catalog :: Suggest
- Camel :: Component DSL
- Camel :: Coverage
- Camel :: Docs
- Camel :: Endpoint DSL
- Camel :: Endpoint DSL :: Support
- Camel :: Integration Tests
- Camel :: JBang :: Core
- Camel :: JBang :: Integration tests
- Camel :: JBang :: MCP
- Camel :: JBang :: Main
- Camel :: JBang :: Plugin :: Edit
- Camel :: JBang :: Plugin :: Generate
- Camel :: JBang :: Plugin :: Kubernetes
- Camel :: JBang :: Plugin :: MCP
- Camel :: JBang :: Plugin :: Route Parser
- Camel :: JBang :: Plugin :: TUI
- Camel :: JBang :: Plugin :: Testing
- Camel :: JBang :: Plugin :: Validate
- Camel :: Kamelet Main
- Camel :: Launcher
- Camel :: Launcher :: Container
- Camel :: YAML DSL
- Camel :: YAML DSL :: Deserializers
- Camel :: YAML DSL :: Maven Plugins
- Camel :: YAML DSL :: Validator
- Camel :: YAML DSL :: Validator Maven Plugin
- Camel :: gRPC
</details>
---
:gear: [View full build and test results](https://github.com/apache/camel/actions/runs/33142494241)
--
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: commits-unsubscribe@camel.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] CAMEL-24478: camel-grpc - add a muteException consumer option [camel]
Posted by "Croway (via GitHub)" <gi...@apache.org>.
Croway merged PR #25839:
URL: https://github.com/apache/camel/pull/25839
--
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: commits-unsubscribe@camel.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org