[Musashi-devel 106] Re: PHPのMUSASHIモジュールの実装について

Back to archive index

Satoshi MACHINO machi****@yendo*****
2004年 10月 25日 (月) 12:06:53 JST


まちの です。
# 今は仕事でAS/400(の使いかた)と格闘しております...

On Mon, 25 Oct 2004 10:37:06 +0900
Yukinobu Hamuro <hamur****@adm*****> wrote:

> >現在のPHPストリームは32bit整数であるため大きなファイルの取扱い
> >に制限があります。int64_tを利用する方向性ですがしばらくは最大フ
> >ァイルサイズが2GBに制限される可能性があります。
> これは大きな問題ですね。

当面は仕様として明記しておく方向で良いのではないでしょうか。
どうしてもover2GBが必要ならばshellを使うという事で。

> ># 現在、int64_tに対応するためのパッチ等はない状態ですが、
> ># 実装する頃には2^63-1までのファイルが利用できるようになっている
> ># 可能性もあります。

PHPの対応を待つので良いと思います。
そこまでMUSASHI側で対応させに行くには絶対的にリソースがないでしょう。
# 大垣さんが頑張る!? とは行かないでしょうから。

> ある利用者からMUSASHIのスクリプトを動かしていて、超2GBファイルの問題に関する報告がありました。
> 全く同じデータとスクリプトを利用して、Turbo10の環境では問題なく動作するのですが、
> 他の環境(すみません詳しく覚えておりません)では、あるMUSASHIコマンドの実行時にエラーとなっていました。

どの環境(というかkernelのバージョン)とかが重要かと思います。
少なくともこの1年でリリースされているdistributionでは
システムレベル(kernelその他)ではover2GBには対応しているはずです。

> 一つわかったことは、例えばtrコマンドなどは超2GBは扱えないということです。

それ(trコマンドでover2GB)はTurbo10Dとかでも扱えませんか?
# 調べりゃわかるけど聞く方が早そうなので。
でもこの手のコマンドは設計上の制限(古いままなので)がかかるかもしれないので
今でも2GBの制限を受けてるかもしれません...

> ただtrを外しても、同様のエラーでこけるなどしていました。
> ファイルシステムはext3を利用していたので問題ないと思われます。

ext3を使っていてもglibcだのkenrelなどが64bit対応されていないと
扱える1ファイルの上限は2GBだっtあはずです。
# kernel2.2.x系だかでmpegファイルとかの扱いでよくはまったという話を聞きました。

> 今後超2GBファイルの扱いに関する詳しい調査が必要と思われます。

コマンドレベルで対応しているかどうかは見る必要がありそうですが
その条件としてkenrel-2.2.x系のモノは除外しておけば
後は個別で使用する良く使うコマンド系のみでもよいのではないでしょうか?

しかし出来ればover2GBのようなファイルをtextutilsのようなコマンド群で
まるまる処理する設計の見直しを行う方がスジは良さそうですが
対応にはリソースがかかり過ぎるでしょうかねぇ?
# sortの件もありますが、この手の処理は例えば商用のツールでは
# 独自のアルコリズムとかを使用しているのでしょうか。
# RDBとかの処理系でもありそうなのですが、何か参考に出来そうなモノはないのかな?

P.S.
おうちのデスクトップPCが死亡しました。
HDDが死にかけていたので土曜日に増設メモリと買って買えったのですが
完全に電源も入らなくなってしまいました...
どうやらマザーか電源(こちらも容量不足だったし)も買わないと復帰は無理そうです。
あーぁかなり出費がイタい。


-- 
まちの
machi****@vinel*****
machi****@yendo*****
GnuPG Fingerprint = 815A FA0C 973D AF3C C9EA 7B9B 8D84 8CD3 6B4F BF32




Musashi-devel メーリングリストの案内
Back to archive index