タスク管理にTracを利用しているのだが、ある日突然、特定のチケットだけが開けなくなった。
おそらくは、コメントなどにおかしいものがあるのではないかと思われるが、とりあえずどんなデータ構造なのか調査した。
trac=# SELECT * from ticket_change limit 1; ticket | time | author | field | oldvalue | newvalue --------+------------------+--------+---------+----------+----------------------------------------------------------------------------------- 26 | 1308953773624682 | rebine | comment | 1 | http://support.microsoft.com/kb/317375/ja\r | | | | | \r | | | | | SQLserver2000のトランザクションログ圧縮について。\r | | | | | \r | | | | | http://www.desknets.com/cams/manual/install/windows_sqlsrv_backup.html\r + | | | | | バックアップとリストアをEnterpriseManagerにておこなう。\r | | | | | \r | | | | | http://d.hatena.ne.jp/showten/touch/20060411/p2\r | | | | | MSDEだと、バックアップインタフェースがないためosqlという\r+ | | | | | コマンドにて操作するみたい。\r | | | | | \r | | | | | 次のコメントにシュリンクするコマンド例をのせる。 (1 row) |
ticket_change というテーブルにfield commentで入っているらしい。
DELETE FROM ticket_change WHERE TIME = 1308953773624682 AND ticket = 26 ; |
このように消してみたけれど、開かない。こりゃ、チケットを作り直ししたほうがよさそう。
エラーログも出ずにタイムアウトするのでたちが悪いというか。
で、案の定削除範囲を間違って、バックアップから全部戻すことに…
とほほ。
2012/12/13 追記
開かない!っていう原因判明。
このTrac、自家証明書で構築したSSLサイトだったのだが、証明書の警告は毎回クリックして表示させていた。
使っていたブラウザがChromeで、起動時にすべてのタブを復元する設定だった。
たまたま、前回見たチケットのタブが残っていたのに気が付かず、新しいタブで一覧から該当チケットを表示させようとしていた。
SSLの証明書警告を無視するタブの操作が終わらないうちは、他のタブで表示しないという、セキュリティの高い仕様だと分かった。
(当たり前かも)
・・・僕のようなお馬鹿さんにも扱えるように、「別ウィンドウで同じページを開いていますが、警告が出ていて開けません」とか出てくれたらいいのに。いや、もう、すみません。安いSSL証明書を買います。社内用なので、安くていいよねと、Comodoを買おうかな。
https://www.joes-ssl.com/comodo_index/
こことかで。