江渡 浩一郎
2005****@eto*****
2005年 8月 16日 (火) 01:57:56 JST
江渡です。 なんとなくわかってきました。 1. qwikWebが、まず最初に*.txtの中身を読んで、Sennaがそれのindexを作る。 2. qwikWeb経由で書き換えられるファイルは、以前の状態を一旦読み、 そのoldvalueとnewvalueをSennaに渡してindexを更新してやればよい。 3. しかし、qwikWebが停止している状態で、*.txtの中身が手動で変更された 場合、indexとの不整合がおこる。 という事態のときに、qwikWebを再度立ち上げた際には、 Sennaからoldvalueを取得することはできないため、 Sennaに渡されていたoldvalueはなんだったのかはわからない。 そのため、その次にupdateされるときは、oldvalueが不正確な 値となってしまうかもしれない。 というときに、何が起るのかというのが疑問だったわけです。 説明を読んで考えてみると、その場合は「indexの不整合が起る」という解釈で よろしいでしょうか? 1. oldvalueが正確に一致してないと、update時にエラーになり、updateできない 2. oldvalueが正確に一致してないと、updateはできるが、indexが不正確になる のだと、2になるわけですよね? だとすると、手動で書き換えた場合にはindexが不正確になるが、 それを許容するとすれば、完全に正確なoldvalueじゃなくてもいいわけですよね? 実際に実験してみればいいのですが、原理として理解したかったので、 質問させていただきました。