On Tuesday, February 8, 2005, 3:20:25 PM, Bill wrote:

BGdS> I have started seeing this line repeated in the persistent sniffer command
BGdS> window.

BGdS> ERROR_LOGFILE: Bad Lock During Logging
BGdS> c:\imail\declude\sniffer\"mycode".log

BGdS> It looks like the error has been happening once a day for about a week.
BGdS> Other than the message all seems to be working well. Where should I look 
for
BGdS> the cause?

The first clue I can see is that it happens once per day... Chances
are there is a scheduled process interfering with the log file, the
storage system in general (perhaps some backups or other IO intensive
operation).

Locking is a very lightweight mechanism in SNF because most operations
are synchronized and sequential. If you are only seeing one of these
per day then there is no cause to worry - but do keep an eye on it so
that it doesn't get worse without you knowing it.

A bad lock is probably a stale lock file --- The protocol would be to
simply ignore the lock after waiting the appropriate amount of time.

In theory, no lock should be required to write to the log file because
it is opened in "append" mode. Unfortunately on Win32 based systems
this doesn't mean what it should. That is, write operations are not
'atomic' --- so if more than one process tries to append to the log
file at once the result is unpredictable corruption.

The locking mechanism we're using here (creating a lock semaphore
file) is only intended to synchronize access to the file since Win32
doesn't. The fact that one process will wait - even if the lock fails
- usually accomplishes this task. If the process were to fail and two
processes wrote (append) to the log file at once then it is possible,
but not certain, that log corruption would occur -- which is not
strictly vital for the odd record here and there.

Hope this helps,

_M



This E-Mail came from the Message Sniffer mailing list. For information and 
(un)subscription instructions go to 
http://www.sortmonster.com/MessageSniffer/Help/Help.html

Reply via email to