Skip to content

Commit e160b6f

Browse files
authored
polish(IncrementalPublisher): remove unnecessary check and method call (#4106)
polished IncrementalPublisher: = completeDeferredFragment will always return undefined if the deferredFragmentRecord has already been removed from the graph = removeDeferredFragment need not be called twice
1 parent 75dca3d commit e160b6f

File tree

1 file changed

+2
-9
lines changed

1 file changed

+2
-9
lines changed

src/execution/IncrementalPublisher.ts

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,6 @@ class IncrementalPublisher {
244244
id,
245245
errors: deferredGroupedFieldSetResult.errors,
246246
});
247-
this._incrementalGraph.removeDeferredFragment(deferredFragmentRecord);
248247
}
249248
return;
250249
}
@@ -261,19 +260,13 @@ class IncrementalPublisher {
261260

262261
for (const deferredFragmentRecord of deferredGroupedFieldSetResult
263262
.deferredGroupedFieldSetRecord.deferredFragmentRecords) {
264-
const id = deferredFragmentRecord.id;
265-
// TODO: add test case for this.
266-
// Presumably, this can occur if an error causes a fragment to be completed early,
267-
// while an asynchronous deferred grouped field set result is enqueued.
268-
/* c8 ignore next 3 */
269-
if (id === undefined) {
270-
continue;
271-
}
272263
const reconcilableResults =
273264
this._incrementalGraph.completeDeferredFragment(deferredFragmentRecord);
274265
if (reconcilableResults === undefined) {
275266
continue;
276267
}
268+
const id = deferredFragmentRecord.id;
269+
invariant(id !== undefined);
277270
const incremental = context.incremental;
278271
for (const reconcilableResult of reconcilableResults) {
279272
const { bestId, subPath } = this._getBestIdAndSubPath(

0 commit comments

Comments
 (0)