composing dataloaders

Offen
#54 22 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
30/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
graphql, java

Rechercherichtung

Es wird keine Quelldatei und kein Test genannt. Beginne damit, den Lebenszyklus von dispatchAll für das Beispiel loader1.load(id1).thenCompose(...) des sequenziellen Loaders nachzuverfolgen, und untersuche anschließend, wie verschachtelte Loads weitergeleitet werden sollen. Als erledigt gilt die Aufgabe, wenn sequenzielle Dataloader ohne Hängenbleiben abgeschlossen werden und das Batching keinen dispatch-Aufruf pro ID erfordert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

keep-open

Hi,

I have a datafetcher where I use 2 dataloaders in sequence: the first to translate from 1 ID to another, the second to fetch data corresponding to the second ID.

loader1.load(id1).thenCompose(id2 -> loader2.load(id2))

This hangs because dispatchAll() is not called again after loader1 completes.
I can work around that by adding that call inside the thenCompose() lambda but then it is called for every id2 which is ugly at the very least.

Is there a better way of doing this?

Vorherrschende Sprache
Java
Sterne
525
Forks
101
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus graphql-java/java-dataloader

Alle Issues in graphql-java/java-dataloader

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.