Oracleのdumpのimportが異常に遅いので原因調査。どれくらい遅いかといえば、ファイルサイズが10MB以下なのにimportに2時間近くかかるとか。しかもその間CPUに負荷かかりまくりで他の作業もできないという。んで、まあ手始めに適当なキーワードをgoogleに食わせてみると無効になってるストアドのコンパイルで時間がかかってる現象を発見。なるほどオブジェクトのコンパイルをしてるからCPU食うのかもということでその路線で調査。あとはその辺の人がindexのせいなんじゃねとか行ってるのでオプションをいろいろいじってみる。いくらなんでも実データ0件でindexは関係ないだろうよとか思いつつ。んで、結果としてはその時間がかかってるテーブルにはNOT NULL制約が3000件くらいあった。もちろんそのテーブルに列はそんなにない。せいぜい10列くらい。
原因はまだ確定じゃないんだけど、どうも調べたところによると名前なし制約はimport時にダブるらしい[要出典]。そんな馬鹿な話があるかと俺も思うので実験してみたいところではあるんだけど、今日のところは時間がないのでまた今度で。とりあえずはconsistent=nのオプションをつければ回避できるかと。んーしかしこれが本当(9i以降で)だとすると俺が手がけた過去システム的に非常にまずいような気がする。原理から考えればTruncate→importするごとに制約が倍に増えることになるからね。でもそんな速いペースで増えてればさすがにテスト中に気がつくと思うんだけどなあ。
16時半くらいに帰って音盤夜行へ。