[groonga-dev,01089] Re: Windows版rroongaで10000位のレコードを登録すると"syscall error 'CreateFile'" が発生

アーカイブの一覧に戻る

Kouhei Sutou kou****@clear*****
2012年 11月 5日 (月) 19:09:20 JST


須藤です。

In <CA+vpKiq1=Y7Xv1-9=on8ahpDp2me5gSf2061q_S=mjLZs****@mail*****>
  "[groonga-dev,01088] Windows版rroongaで10000位のレコードを登録すると"syscall error 'CreateFile'" が発生" on Sun, 4 Nov 2012 18:26:00 +0900,
  ongaeshi <ongae****@gmail*****> wrote:

> NougakuDo 1.3.4 にて 64bit版Windowsで最適に動作するrroongaが
> 同梱されたため、Milkodeをインストールして動かしてみました。
> 
> 結果としては、過去にRubyInstaller経由で動かした時と同じように
> レコード数が10000を超えた辺りで"syscall error 'CreateFile'"が
> 発生してしました。

レポートありがとうございます!
手元でも再現できたので、問題解決にとても助かりました。

Windows用のコードだけ、
「ファイルがなければ作る、あったら開く」
という処理をしようとするところで、
「ファイルがなければ作る、あったらエラー」
となっていました。

で、これが発生するのはデータサイズが128MBを超えたときでした。
なので、最初はエラーにならないのですが、データを登録するとエ
ラーになる、というようになっていました。
(Windowsでは128MB毎に新しくファイルを作ることになっていて、
そのときに↑の処理をしています。)


修正して、手元では問題が解決したことを確認しました。
次のリリースからはちゃんと動くはずです。

-- 
須藤 功平 <kou****@clear*****>
株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270)

groongaサポート:
  http://groonga.org/ja/support/
パッチ採用はじめました:
  http://www.clear-code.com/recruitment/




groonga-dev メーリングリストの案内
アーカイブの一覧に戻る