graphql-java / graphql-java/java-dataloader

composing dataloaders

Ouverte
#54 22 commentaires 2 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

keep-open
Langage dominant
Java
Étoiles
525
Forks
101
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

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?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Aucun fichier source ni aucun test n’est indiqué. Commencez par retracer le cycle de vie de dispatchAll pour l’exemple loader1.load(id1).thenCompose(...) du loader séquentiel, puis examinez comment les chargements imbriqués sont censés être dispatchés. C’est terminé lorsque les dataloaders séquentiels s’achèvent sans rester bloqués et que le batching ne nécessite pas d’appel à dispatch pour chaque id.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
graphql, java
Domaine
backend-api-design
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.