ToDo:
別に面白いバグとかではないはなし。
金曜日朝、なんかとんでもなくダメダメなことになってて、エラーメッセージがこんな感じで、これ昨日のお前の変更があやしいよね、ってバグが priority 0 としてファイルされてた。
うん、これはどう見ても俺です100%犯人です、ごめんなさい…ってバグで、あわててコードを眺める。うんうんあやしいよね…って思いながら結構な時間一文一句追う感じで眺めるも、どう考えても問題のエラーメッセージが出るコードパスに到達できる状況が想定できない。
あと当然、自分の環境では全く再現しない。なにもかもが全く動かない、ってくらいのレベルのバグだったんで、再現するような状況ならそもそもサブミット前のローカルでのテストでわかってるハズだし、仮にうっかりテストしてなかったとしても、 CI が見つけないはずが無いような問題。テストしてた人の環境を忠実に再現してみたぽくしてみても、ダメ。
あれこれ考えても本気でわからないので、とりあえずエラーメッセージの内容を増やすような感じの change を作ってみて、すまん本気でわからん、 P0 バグ放置するのは心ぐるしいけど、とりあえずログ増やしてみたんで新しいバージョンをそっちの環境で試してみて、ログ送ってくれない?と書いてあきらめる。
当然自分の犯人くさいパッチを revert することも考えたんだけど、そのパッチ自体は最終的にその致命的なバグを修正した上で入れたいものだったので、意味不明な状態で revert しちゃうと、もう一度入れるのが大変困難なので、とりあえずやめておくことにした。
で、土曜日。なんか新しいの試したらフツーになおってたっていうか、古いやつでもセットアップしなおしたらなんか動いたから、セットアップミスってただけぽいスマソ、みたいなことが書いてあって、バグが閉じられていた。まあつまり濡れ衣だったわけだ。
普通だと少しは怒るところなんだろうけど、そういう気持ちには全くならず、我ながら得な精神構造ができてるな…とか思う。ふたつくらい、今の精神構造になってる理由をひねりだした。
ひとつめは、ムリゲー解く努力をする、ってのが結構好きで、かつそれなりにちょくちょくやってること。特にゴルフとかって、どう見てもこれが最短なんじゃ…ってところからまだまだ考えるわけで、最終的に数時間考えてからやはりこれ以上は無理だ…って結論になることが結構多い。もちろん考えてた問題が解けるに越したことは無いんだけど、単に考える過程自体も結構好きなことがあり、ムダな努力はそれほど苦にならない。
仕事ではそんなことは普通無いんだけど(無理なことは自明に無理ってわかるケースがほとんど)、まあ割と家では、やってみてダメでしたー的なことをやってる気がする。いや、最近は仕事でもそういうのちょくちょくあるかもわからんな…
ふたつめは、こういうのがレアケースであること。もう少しまわりの人が頼りない環境だと、こういうことはもっと頻繁に起きるんだと思う。自分が悪いと人に言われて、本当は自分は悪くない、ってことが、いやまあそれなりにはあるけど、頻度がそれほど多くないから、おっ珍しいな、くらいで鷹揚にかまえられるというか。
これが毎日起きてりゃ気が狂うと思うんで、当たり前のことが当たり前な環境はありがたいなぁとか思う。
ところで、これ revert してたら、かなりこわい感じである。当然、「revert したらなおったぽい。やぱりあれが悪かったんだね」って話になるだろうし、しかしやはり入れたかったものなので、次に入れる時は「前回起きた大惨事を起こさないように形に変えるにはどうすれば…」って真剣に考えなければならず、ローカルでは絶対再現しないものだけに、もっとムリゲーだったわけで…
(12:30)
前 | 2014年 7月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。