File tree Expand file tree Collapse file tree 1 file changed +10
-5
lines changed Expand file tree Collapse file tree 1 file changed +10
-5
lines changed Original file line number Diff line number Diff line change @@ -456,11 +456,16 @@ If during {ExecuteSelectionSet()} a field with a non-null {fieldType} raises a
456
456
_ field error_ then that error must propagate to this entire selection set,
457
457
either resolving to {null} if allowed or further propagated to a parent field.
458
458
459
- If this occurs, any defer or stream executions with a path that starts with the
460
- same path as the resolved {null} must not return their results to the client.
461
- These defer or stream executions or any sibling fields which have not yet
462
- executed or have not yet yielded a value may be cancelled to avoid unnecessary
463
- work.
459
+ If this occurs, any sibling fields which have not yet executed or have not yet
460
+ yielded a value may be cancelled to avoid unnecessary work.
461
+
462
+ Additionally, the path of each {asyncRecord} in {subsequentPayloads} must be
463
+ compared with the path of the field that ultimately resolved to {null}. If the
464
+ path of any {asyncRecord} starts with, but is not equal to, the path of the
465
+ resolved {null}, the {asyncRecord} must be removed from {subsequentPayloads} and
466
+ its result must not be sent to clients. If these async records have not yet
467
+ executed or have not yet yielded a value they may also be cancelled to avoid
468
+ unnecessary work.
464
469
465
470
Note: See [ Handling Field Errors] ( #sec-Handling-Field-Errors ) for more about
466
471
this behavior.
You can’t perform that action at this time.
0 commit comments