Skip to content

RFC: deduplicated incremental delivery #1052

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 46 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
d12884e
Extract common logic from ExecuteQuery, ExecuteMutation and ExecuteSu…
benjie Apr 28, 2023
72d5447
Change ExecuteSelectionSet to ExecuteGroupedFieldSet
benjie Apr 28, 2023
4d62b8b
Correct reference to MergeSelectionSets
benjie Aug 21, 2023
8fd0df3
move Field Collection section earlier
yaacovCR Dec 6, 2023
f5e26e3
enhance(ResolveFieldValue): add async collection language
yaacovCR Dec 7, 2023
648bf34
Introduce @stream.
robrichard Aug 18, 2022
3677a09
Introduce @defer.
robrichard Dec 6, 2023
0b25562
Add GetPending algorithm
yaacovCR Jan 9, 2024
dc443e8
fix nomenclature for GetParentAndParentDeferState
yaacovCR Jan 9, 2024
8cc2507
doc: add more prose for ProcessIncrementalDigests
yaacovCR Jan 9, 2024
8c138b0
fix: add missing incremental digest processing for streams
yaacovCR Jan 9, 2024
ea03b3c
nit: add caps for Deferred Fragment
yaacovCR Jan 9, 2024
1be7a58
fix: remove unnecessary variable
yaacovCR Jan 9, 2024
d998aca
fix: change variable name to be consistent
yaacovCR Jan 9, 2024
b97a920
fix typos in GetUpdatesForDeferredResult
yaacovCR Jan 9, 2024
a694666
only save defer parent rather than all ancestors
yaacovCR Jan 10, 2024
6941ddd
remove Incremental Digests concept
yaacovCR Jan 10, 2024
aa6e3df
if nested defers are completed, keep processing them
yaacovCR Jan 10, 2024
21ef532
fix how new defer usages are collected
yaacovCR Jan 15, 2024
74f2f57
rewrite
yaacovCR Jan 18, 2024
ae882e8
change to have an incremental update stream mapped to an incremental …
yaacovCR Jan 19, 2024
19a4757
small fix with regard to update packaging
yaacovCR Jan 19, 2024
a9e2d87
editorial change
yaacovCR Jan 19, 2024
f43b57f
Fix typo
yaacovCR Jan 19, 2024
986853f
use some initialization magic
yaacovCR Jan 26, 2024
77c7846
Remove GetNonEmptyParent
yaacovCR Jan 26, 2024
69c9f5f
this should never be previously defined, as each future is returned e…
yaacovCR Jan 26, 2024
0cf445e
fix mistake when setting count
yaacovCR Jan 26, 2024
fa67030
rename {defers} to {deferredFragments}
yaacovCR Jan 26, 2024
7c0fccf
a child defer state is always defined unless removed here
yaacovCR Jan 26, 2024
19fbef6
get rid of count and sent
yaacovCR Jan 26, 2024
3a14539
Rename GetSinglyDeferredFutures to FilterNestedFutures
yaacovCR Jan 26, 2024
0d91637
add some more magic
yaacovCR Jan 26, 2024
d7906cf
typo
yaacovCR Jan 27, 2024
4511190
refine ReleaseFragment
yaacovCR Jan 28, 2024
a289616
complete renaming
yaacovCR Jan 28, 2024
63cf6c2
fix typo, changing ancestors to parent
yaacovCR Jan 29, 2024
5e62f59
move ExecuteInitialResult to later
yaacovCR Jan 29, 2024
c00963d
simplify
yaacovCR Jan 30, 2024
19216eb
minor fixes to the major rewrite
yaacovCR Jan 30, 2024
3ffa48a
switch line order
yaacovCR Jan 30, 2024
6c289c4
add return line when finished
yaacovCR Jan 30, 2024
894b994
finish renaming update
yaacovCR Jan 30, 2024
3768025
initialize only after yielding
yaacovCR Jan 30, 2024
4fc4dc1
fix reset of variable
yaacovCR Jan 30, 2024
a966583
fix variable name typo
yaacovCR Jan 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
typo
  • Loading branch information
yaacovCR committed Jan 27, 2024
commit d7906cfcf9b7e0c216de18046135449702068edc
6 changes: 3 additions & 3 deletions spec/Section 6 -- Execution.md
Original file line number Diff line number Diff line change
Expand Up @@ -975,7 +975,7 @@ completedFuture):
{completedFutures} on {newDeferState}, appended by {completedFuture}.
- Set the {completedFutures} entry on {newDeferState} to
{newCompletedFutures}.
- Let {futures} be the corresponding entries on {newDeferState}.
- Let {pendingFutures} be the corresponding entries on {newDeferState}.
- If the size of {newCompletedFutures} is equal to the size of
{pendingFutures}:
- Let {deferStates}, {fragmentPending}, {fragmentIncremental},
Expand All @@ -996,8 +996,8 @@ originalDeferStates):
- Let {futureStates} and {deferStates} be a new unordered map containing all the
entries in {originalFutureStates} and {originalDeferStates}, respectively.
- Remove the entry for {deferredFragment} on {deferStates}.
- Let {futures} and {children} be the corresponding entry on {deferState}.
- For each {future} of {futures}:
- Let {pendingFutures} and {children} be the corresponding entry on {deferState}.
- For each {future} of {pendingFutures}:
- Let {futureState} be the entry for {future} on {futureStates}.
- Let {newFutureState} be a new unordered map containing all entries in
{futureState}.
Expand Down