[Java] User's Exception's metadata thrown by method FlightServerMiddleware.onCallStarted() getting override and set to empty value
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Beginne in java/flight/flight-core/src/main/java/org/apache/arrow/flight/grpc/ServerInterceptorAdapter.java im catch-Block von interceptCall und lies anschließend FlightServerMiddleware.onCallStarted und StatusUtils. Überprüfe, dass die Metadaten einer FlightRuntimeException beim Schließen des Aufrufs erhalten bleiben, und bestätige, dass der Client den benutzerdefinierten Trailer-Wert anstelle eines leeren Werts empfängt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the bug, including details regarding any error messages, version, and platform.
In flight producer , User is throwing StatusRuntimeException having metadata with custom error message from the implementation class of FlightServerMiddleware.onCallStarted ,
eg:
Metadata trailers=new Metadata();
trailers.put(Metadata.key.of("custom_msg",Metadata.ASCII_STRING_MARSHALLER),"custom error msg");
throw StatusUtils.fromGrpcRuntimeException(new StatusRuntimeException(Status.UNAUTHENTICATED,trailers) );
But this is getting override in in catch block of ServerInterceptorAdapter.interceptCall ,
Because of this at flight client side user is not able to propagate meaning error message , Only correct status is received at client side .
Expectation :
Metadata from FlightRuntimeException should be used while closing the call .
ServerInterceptorAdapter.interceptCall
call.close(StatusUtils.toGrpcStatus(e.status()), e.status().metadata());
Component(s)
FlightRPC, Java
- Vorherrschende Sprache
- Java
- Sterne
- 95
- Forks
- 154
- Ø Merge
- 2 T. 10 Std.
- Gemergte PRs (30 T.)
- 11
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus apache/arrow-java
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
apache/arrow-java#1261 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
apache/arrow-java#1236 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
apache/arrow-java#1230 ·
-
Type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
apache/arrow-java#1205 ·
-
Type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
apache/arrow-java#1196 · 1 Kommentar ·
Alle Issues in apache/arrow-java
Ähnliche Issues
-
certification
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 80/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
[BUG] ECR GetAuthorizationToken returns a proxyEndpoint for the default region, not the request's Offenbug ecr
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Needs: Triage Type: Feature request
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
AntennaPod/AntennaPod#8794 ·
-
agentic-workflows
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
github/copilot-sdk#2760 ·