トップ «前の日記(2026/07/23 (木) ) 最新 編集 RSS feed

HsbtDiary


2026/07/24 (金) [長年日記]

tDiary 5.5.0 をリリースした

29の日ではありませんが、が常態化しているけど 5.5.0 をリリースした。

https://tdiary.org/20260724.html

前にちょっと書いた内部から CGI を無くして Rack で動かすようにしつつ、そこに到達する経路として CGI/FCGI/Rack を残すという大幅な変更を加えている。とはいえ外から見るとほとんど何も変わってないとは思うので、一旦ここで区切りをつけたリリースとなる。

他にも最近の Web ならこれくらいは設定するよね、というような変更が大量にあるのでちょくちょく入れてリリースしていこうと思う。ついでに tag 打つだけでリリースできるようにしたのでバンバンできてしまう。

FreeBSD 15 aarch64 の CI が落ちていたので直した

2週間くらい前から FreeBSD 15 の CI が動かなくなっていてなんだろうと眺めてもよくわからず、しかも ssh ログインできない、という状況だったので AWS の console で再起動し、その後 ssh で入ってから chkbuild をマニュアル実行してみるとなんと途中で kill されて落ちる、という状況だった。

全然わからんな、と思ってログを眺めてみると String のテストでターミナルの折り返しで数万桁になるくらいのログがあって、何これ、となって claude に投げてみると FreeBSD の aarch64 では DTrace の不具合があって、アロケートするメモリが溢れるということだった。マジかー。

https://github.com/ruby/ruby/pull/17960

で、これを無効にして大丈夫だろうと思ったら再び Ruby CI で沈黙状態になったので眺めてみるとメモリが足りないな、ということで 4GB あるのになんで、とはなりつつも 8GB を追加して合計 12GBで様子見。

で、今日、それでも回復せず、時間もできたので本気で調べるために ssh ログインしようとしたらインスタンスも落ちた、という状態だったので AWS コンソールから再び再起動して、今度は scp で /var/log/message* をすべて読ませてから claude に ssh ログインしていいよ、と許可しつつ調べさせたら、なんと一気に問題を解決して便利だった。

詳細はサーバー内の話もあるので省略するが、要は DTrace によるメモリ溢れの時に rss のダンプがメモリ溢れの状況のまま作成され、それが100M+のサイズで残り続け、chkbuild が後処理で parse するときに oom で落ちていた、ということだった。ここまで特定するとかすごいな。

結局、rss を保存しているファイルを削除して、新規実行時に再作成させることで CI は無事復旧してよかった。なんか今回の経験から、個別の要素要素は知識と経験からわかってるものの、それらを疲れないレベルで根気よく調べ続けるってのはもう AI にぶん投げた方がいいのだな、ってなったので今後はそうやっていこうと思う。