You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
We encountered a bug that prevented submitting subscription data when the data could not be correctly serialized. This error was logged when we increased logging in another package. Upon stepping through the code, we found that the CompletionStageMappingPublisher only captures RuntimeExceptions, but more types of exceptions should be caught and handled.
To Reproduce
This package is a test application that contains a demo subscriber that generates exceptions to websockets.
Here's the TestFetcher from that package. It creates exceptions by submitting an unsupported date format. This demonstrates the issue, which is linked to an older version of graphql-java but is present in the last version as well.
Here's what we think the problematic code in CompletionStageMappingPublisher is
public void onNext(U u) {
if (!this.onCompleteOrErrorRunCalled.get()) {
try {
CompletionStage<D> completionStage = (CompletionStage)CompletionStageMappingPublisher.this.mapper.apply(u);
this.offerToInFlightQ(completionStage);
completionStage.whenComplete(this.whenNextFinished(completionStage));
//Jackson Exceptions can be IOException or RuntimeException and these do not overlap
} catch (RuntimeException var3) {
this.handleThrowable(var3);
}
}
}
Hello, this issue has been inactive for 60 days, so we're marking it as stale. If you would like to continue this discussion, please comment within the next 30 days or we'll close the issue.
Describe the bug
We encountered a bug that prevented submitting subscription data when the data could not be correctly serialized. This error was logged when we increased logging in another package. Upon stepping through the code, we found that the CompletionStageMappingPublisher only captures RuntimeExceptions, but more types of exceptions should be caught and handled.
To Reproduce
This package is a test application that contains a demo subscriber that generates exceptions to websockets.
subscription-test (1).zip
Here's the TestFetcher from that package. It creates exceptions by submitting an unsupported date format. This demonstrates the issue, which is linked to an older version of graphql-java but is present in the last version as well.
Here's what we think the problematic code in CompletionStageMappingPublisher is
Here is the exception we encountered, which is of parent type IOException. InvalidDefinitionException
Here's is the stacktrack example to show how graphql-java and dgs-graphql-websockets interact.
The text was updated successfully, but these errors were encountered: