[sugj-tech:6915] Re: [samba-jp:20373] Re: ファイル生成時刻の扱いについて

KAWASUMI Junji touchan @ papa-net.bpl.jp
2008年 8月 31日 (日) 15:35:08 JST


かわすみです

> > 怪しい英語で軽く突っ込んでおきました
> > 
> >   http://lists.samba.org/archive/samba-technical/2008-August/061041.html
一応提示した部分については、取り込んでもらえそうですね。
これで NetBSDとFreeBSDは、オフィシャルにファイル生成時刻の表示
が出来ますね。(秒単位ですが。。)
あとは、ファイル生成時刻を setattrしている箇所を実装してあげれ
ば Windowsサ−バと同様になりそうですね。

ここの所、PHPで 慣れないWEBアプリケ−ションを組んでいてソ−スを
追っかけている余裕が無いのがちょっとつらいです。。。。。

On Sun, 31 Aug 2008 14:16:37 +0900
KAWASUMI Junji <touchan @ papa-net.bpl.jp> wrote:

> かわすみです
> 
> > # そういえば、これは sugj-tech 向けな話題のような気がする…。
> > # http://cgi.samba.gr.jp/mailman/listinfo/sugj-tech
> > # たまには思い出して使ってやってください。
> 了解しました。(2007/09以降活動していない様なので、ちょっと躊躇
> してました)
> 
> それでは、以降 sugj-tech上でお願いします。
> 一応本メ−ルは、samba-jp @ samba.gr.jpsugj-tech @ samba.gr.jp> 両方に送付します。
> 
> On Fri, 29 Aug 2008 11:34:00 +0900
> SATOH Fumiyasu <fumiyas @ osstech.jp> wrote:
> 
> > さとうふみやす @ OSS テクノロジです。
> > # そういえば、これは sugj-tech 向けな話題のような気がする…。
> > # http://cgi.samba.gr.jp/mailman/listinfo/sugj-tech
> > # たまには思い出して使ってやってください。
> > 
> > Samba Git リポジトリの Samba 3.2 とそれ以降のヘッドブランチに
> > st_birthtime* への対応コードが入り始めました。
> > 
> >   http://gitweb.samba.org/?p=samba.git;a=commit;h=0cba30073410ba499834ac26dee3f81a75c8de4f
> > 
> > 怪しい英語で軽く突っ込んでおきました
> > 
> >   http://lists.samba.org/archive/samba-technical/2008-August/061041.html
> > 
> > At Wed, 13 Aug 2008 19:26:35 +0900,
> > Takashi SHIRAI wrote:
> > > >   * birthtime と birthtimensec が両方とも 0 
> > > >   * birthtime が (time_t)-1
> > > >   * birthtimensec が -1L
> > > 
> > >  そもそも st_birthtimensec は見る必要あるのかなぁと思ってる
> > > んですがどうでしょう?nsec 値が条件を左右するのは下記のケー
> > > スになりますよね。
> > 
> > ファイルシステムが birthtime 未対応の場合を表わすのに、
> > bithtimensec を -1L にするのが一番妥当だと考えたからです。
> > それと、birthtime をサポートする先進的(?)な OS であれば、
> > 当然 birthtimensec もサポートするだろう、という勝手な妄想です。:-)
> > 
> > ほかの条件も列挙したのは、先のメールで紹介した
> > http://www.nabble.com/birthtime-initialization-td18584558.html
> > にあるように、この辺りの仕様が確定していないようなので、
> > あれだけの条件を挙げないと実際のシステムで使えないかなと
> > 思ったからです。
> > 
> > 今考えると st_birthtime が 0 か -1 の場合に無視するだけで
> > 概ね大丈夫だろうしコードがシンプルなのでいいかと思ってます。
> > 
> > 何はともあれ、それほど深く考えていないので、突っ込みどころ
> > 満載なのはご容赦を。(いいわけ)
> > 
> > > 1.st_birthtimensec = -1 かつ st_birthtime != -1 の場合
> > > 2.st_birthtime = 0 かつ st_birthtimensec != 0 の場合
> > >  これ以外のケースでは st_birthtime のみを判断基準にすれば十
> > > 分ですから。
> > > 
> > >  1. のケースは余り考えにくいのですが、もしあり得るとしたら
> > > この st_birthtime は何を指しているんでしょうか?無視してしま
> > > って本当に構わない?
> > >  例えば分解能の問題で 1sec 未満の値が取得出来ない環境では、
> > > nsec 値のみ無視して欲しいという意味で st_birthtimensec のみ
> > > -1 にしてしまうという状況は無いんでしょうかね。
> > 
> > そういう場合は st_birtimenesec は 0 にするだろうと
> > 思い込んでいましたが、-1 を設定する(ことで nsec 未対応を
> > 明示するんですよね?) という仕様も考えられなくはないですねぇ。
> > 私はその仕様は嫌だけど。
> > 
> > >  2. のケースは epoch に極めて近い time stamp で、このレアケ
> > > ースを救済するのが目的だと思いますが、現実的にはそこまで拘る
> > > 必要もないかと感じます。
> > >  そもそもこの辺りの time stamp 値は UNIX 的には valid でも
> > > Windows 的には invalid (MS-DOS epoch: 1980/1/1) なので、救済
> > > しても仕方ないんじゃないでしょうかね?
> > 
> > それは知らなかったです。確かに意味がないかも。
> > 
> > > > >  nsec 値そのものは不要であるという点に関しては誰も異論ない
> > > > > と思いますよ。
> > > > 
> > > > Windows (SMB?) のファイルの時刻精度は 100ns みたいですから、
> > > > 不要ってことはないですね。
> > > 
> > >  んー、でも件の patch を当てた箇所の関数は time_t を返すの
> > > で、nsec 値を使おうとしたらもっと抜本的な改造が必要になりま
> > > すよ。
> > 
> > もちろん、ほかの修正が必要なことはわかってますよ。:-)
> > 
> > -- 
> > -- Name: SATOH Fumiyasu (fumiyas @ osstech co jp)
> > -- Business Home: http://www.OSSTech.co.jp/
> > -- Personal Home: http://www.SFO.jp/blog/
> > 
> 
> 
> -- 
> --  川澄 淳治
> --  KAWASUMI Junji <touchan@papa-net.bpl.jp>
> --  愛知県知多郡在住 (JR武豊線使用)
> --   〜 みんなで幸せになろうよ。。。〜
> --
> 


-- 
--  川澄 淳治
--  KAWASUMI Junji <touchan@papa-net.bpl.jp>
--  愛知県知多郡在住 (JR武豊線使用)
--   〜 みんなで幸せになろうよ。。。〜
--



sugj-tech メーリングリストの案内