チケット #31051

LogLockExclusive=offでの動作

登録: 2013-03-27 19:34 最終更新: 2013-04-16 19:02

報告者:
担当者:
(未割り当て)
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし
投票
点数: 0
No votes
0.0% (0/0)
0.0% (0/0)

詳細

LogLockExclusive=off の時、マニュアルの内容と異なり読み込み及び書き込みの両方が禁止される。

チケットの履歴 (6 件中 3 件表示)

2013-03-27 19:34 更新者: doda
  • 新しいチケット "LogLockExclusive=offでの動作" が作成されました
2013-03-27 20:31 更新者: (del#1144)
コメント

手元で確認したところ、以下のような動作となっています。同じですか?

LogLockExclusive=off だとログファイルをエディタで開こうとすると「プロセスはファイルにアクセスできません。別のプロセスが使用中です。」となります。

LogLockExclusive=on だとログファイルをエディタで開けますが、変更して保存することは禁止されます。

CreateFile の第3引数 dwShareMode が、onなら0/offならFILE_SHARE_READ という違いですが、使い方が間違っているでしょうか。

2013-03-27 21:35 更新者: (del#1144)
  • チケット完了時刻2013-03-27 21:35 に更新されました
  • マイルストーン(未割り当て) から Tera Term 4.78 (完了済み) に更新されました
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
コメント

r5178 で修正しました。

2013-04-04 12:42 更新者: doda
  • 状況完了 から オープン に更新されました
コメント

LogLockExclusive=on の時は dwShareMode が 0 (共有なし:読み書き共に排他制御) ですが、 これを FILE_SHARE_READ に変更出来ませんでしょうか?

ログファイルのロック関連の経緯を確認すると、

  1. 複数のTera Termが同一のログに書き込もうとしてログが壊れる事があるので、書き込みを排他ロックするように変更 (#24365)
  2. 同一のログに書き込みたいという要望もあるので、排他ロックしない設定を追加 (#27016)

という流れなので、読み込みに関しては常に排他ロックしないようにしても問題ないと思います。

現状のようにデフォルト設定が読み込みだと、「ファイル」-「ログを表示」が動かなくなりますし、 #31050 の動機である「過去の出力に遡って処理(集計)を行う」も出来なくなります。

2013-04-04 13:02 更新者: (del#1144)
コメント

確かにそうですね。修正しました。

2013-04-16 19:02 更新者: doda
  • チケット完了時刻2013-04-16 19:02 に更新されました
  • 状況オープン から 完了 に更新されました
コメント

ありがとうございます。修正を確認しました。

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする