google / google/codeworld

Possible race conditions when compiling and running

オープン
#964 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
bug
主要言語
Haskell
スター
1.3k
フォーク
201
PR マージ指標
30日以内にマージされた PR はありません

説明

I'm seeing this in logs for `/compile` requests:

A web handler threw an exception. Details:
data/haskell/build/Pxx/Pxxxxxxxxxxxxxxxxxxxxxx.basever: openFile: does not exist (No such file or directory)

This indicates that some part of the system thinks the build is done, but there's no basever file. I'm not sure how that could happen. Maybe a race condition of some kind?

I also see this for `/runMsg`:

A web handler threw an exception. Details:
data/haskell/build/Pxx/Pxxxxxxxxxxxxxxxxxxxxxx.err.txt: getFileStatus: does not exist (No such file or directory)

Similar situation: the system thinks that the build is complete, but there's no build output file, which should always be created as part of a build.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、Web ハンドラー `/compile` と `/runMsg` を追跡し、どのようにビルドが完了したと判断しているかを確認します。`data/haskell/build/` にある `basever` と `.err.txt` の欠落ファイルの処理を調べます。Race condition を理解し、これらのリクエストがビルド成果物の欠落を報告しなくなれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
haskell
領域
backend, build-system
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。