I have a number of Perl programs running on a Linux system, all using MySQL.  
I have to keep track of programs, so I know which ones are working with which 
set of data, so programs check in when they start by creating a table entry 
and log out when they end by removing that table entry, but ALSO by making an 
entry, with their Process ID and the time of exit in a Checkout table, so in 
case there is a delay in a program exiting, I can track it.

I was looking through system logs and noticed one case of a program that 
*should* have logged out by removing it's entry from a table before exiting, 
however the tracking program, one second after the program said it was 
logging out, said it found the program's entry in the tracking table.  In 
other words, after the program should have removed its entry in the tracking 
table and exited, the entry was still in the tracking table for at least a 
second.

This particular program would have performed at least 1,500 queries in, 
according to my logs, what would have been 61 seconds.  There is also a good 
chance that other programs were also performing a number of queries during 
that same period of time.

Is there any chance, that, due to the number of transactions being performed, 
that when I sent this particular query to Perl (it would have been a DELETE 
to remove one line from a table), that it could have been delayed -- even if 
for less than a second, but that it was accepted in some type of queue and 
the program was allowed to continue before the transaction was actually 
completed?

Since all my programs use the same exit routines (before calling Perl's exit() 
function), at the moment this is the only explanation I can think of for the 
program still being listed in the table for possibly a second (or less) after 
it had left and its PID was no longer listed as running.

(And, btw, when I mention times in seconds, my log timings are in seconds, so 
the delay could be less than a second or more.)

Any insight is appreciated.

Thanks!

Hal

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to