[osiris-devel] strange race condition in osirisctl.c
dmvasil at ornl.gov
Wed Nov 29 17:04:03 EST 2006
In src/libosirisctl/osirisctl.c:ctl_get_database() at the break; on line
3808, the status should be set to TRUE when the function returns,
however on some systems a FALSE is returned to the calling function
src/cli/osiris.c:process_print_db() at the if statement on line 2867.
This causes the CLI print-db to fail even though the temporary database
was correctly written to the CLI host as shown by trying to diff the
db.temp and the original DB on the management host.
When debugging this issue, I found that putting a sleep(1); right before
the offending break in osirisctl.c on line 3808 fixes the problem. Can
anyone provide insight as to why this workaround works, and maybe
provide a better fix?
This condition exists on some Debian systems as reported by Ruben
Puettmann and I was able to recreate the error on a Fedora Core 5 i386
More information about the osiris-devel