Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

binder: Inbound.java reassembly logic needlessly handles out-of-order transactions, fails to handle silently dropped ones.

Ouverte
#12,747 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
android, grpc, java
Domaine
api, backend

Piste de recherche

Commencez par binder/src/main/java/io/grpc/binder/internal/Inbound.java et examinez le comportement de IBinder#FLAG_ONEWAY lié dans l’issue. Simplifiez le réassemblage en partant de l’hypothèse que les transactions sont ordonnées, et faites en sorte qu’un index inattendu ferme immédiatement le stream avec un statut approprié au lieu d’attendre indéfiniment. Le travail est terminé lorsque les lacunes ne bloquent plus les appelants et que le statut d’échec choisi permet de réessayer.

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

Description

binder

Inbound has code to handle Binder transactions delivered out-of-order, something that can't happen (see IBinder#FLAG_ONEWAY). At the same time, it fails to handle the rare case where transactions are silently dropped.

We should simplify the message reassembly code and fail fast on gaps instead of waiting forever for a transaction that will never come. If an incoming transaction index doesn't have the next expected value, immediately close the stream (with DATA_LOSS? UNAVAILABLE?). This avoids a hang, allowing callers to retry sooner.

Langage dominant
Java
Étoiles
12.1k
Forks
4k
Merge moyen
2 j 1 h
PR mergées (30 j)
31

Préparer son environnement

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.

Autres issues de grpc/grpc-java

Toutes les issues de grpc/grpc-java

Issues similaires

Plus d'issues Java

Recevez les nouvelles issues par e-mail

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