Possible Race Condition
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 20/100
Piste de recherche
Start with lib/execjs/external_runtime.rb lines 137-144 and the exec_runtime method shown in the issue. Reproduce or trace the reported error, then compare this implementation with the later gem version mentioned in the report. Done means establishing whether the exit-status check is racy and whether upgrading resolves the errors.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
I'm looking at an error thrown in a Rails application which uses v2.0.2 of execjs. I think it may be due to a potential race condition in this method, but I want to
- validate my understanding of the error thrown
- check, if my understanding is correct and this has been repaired in a later version of the gem, whether a simple upgrade may resolve the errors
For completeness, the method body (which no longer exists in this manner on most recent version) is
def exec_runtime(filename)
output = sh("#{shell_escape(*(binary.split(' ') << filename))} 2>&1")
if $?.success?
output
else
raise RuntimeError, output
end
end
My understanding so far is that, if the most recent exit code is non-zero, the runtime will raise RuntimeError with the shell output even if the shell script executed successfully. The most recent exit code would not have been from the shell script supplying the output -- i.e. a race condition in examining $?
Thank you for your help.
- Langage dominant
- Ruby
- Étoiles
- 578
- Forks
- 285
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de rails/execjs
-
Runtime stderr is missing from ruby error messagePeut-être pris @arpitjain099 l’a pris il y a 145 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 45/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
Toutes les issues de rails/execjs
Issues similaires
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
alphagov/tech-docs-gem#580 ·
Les mainteneurs répondent en général sous 1 jour
-
Onboarding form: instructor radio never pre-selected "Yes" (permission vs permissions typo)Peut-être pris @ThakuraAnki l’a pris aujourd’hui. Ouvertebug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
WikiEducationFoundation/WikiEduDashboard#7235 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
enhancement priority: low
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
davidteren/mutineer#361 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
zerocracy/judges-action#3021 ·
Les mainteneurs répondent en général sous 2 jours