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
This adds support for aborting execution from the outside or resolvers,
this adds a few tests and tries to make the support as easy as possible.
Do we want to support having abort support on subscriptions, I guess it
makes sense for server-sent events.
I've chosen 2 places to place these interrupts
- `executeFieldsSerially` - every time we start a new mutation we check
whether the runtime has interrupted
- `executeFields` - every time we start executing a new field we check
whether the runtime has interrupted
- inside of the catch block as well so we return a singular error, all
though this doesn't really matter as the consumer would not receive
anything
- this here should also take care of deferred fields
When comparing this to `graphql-tools/execute` I am not sure whether we
want to match this behavior, this throws a DomException which would be a
whole new exception that gets thrown while normally during execution we
wrap everything with GraphQLErrors.
Supersedes #3791Resolves#3764
Co-authored-by: yaacovCR <yaacovCR@gmail.com>
0 commit comments