Possible patch to cure CGI's not finding data for objects in status.dat
Andreas Ericsson
ae at op5.se
Fri Aug 7 10:30:40 CEST 2009
Cary Petterborg wrote:
> In response to your request for details of our system: We are running
> SuSE 9 writing to a Rieser FS (with a separate web server reading the
> status.dat, etc. from an NFS mount off the main Nagios server). Our
> status.dat file is 37MB, and objects.cache is 32MB. If you need more
> details than this, please let me know what you need.
>
I blame NFS. Don't use it for sync()-sensitive data, as caching happens
on multiple levels. The patch hurts the normal case (webserver on same
system as Nagios) though, so I'd prefer if it wasn't applied.
>
> I may be wrong in this next information, but I did homework on it
> before proceeding to try to implment the fix on our system, and I'm
> taking the information from what I found. The fsync() call is the
> more important function call in the fix. fclose() almost always
> guarantees fflush(), but it doesn't guarantee that it will be written
> to the disk immediately, especially if the program doesn't exit.
It doesn't have to be written to disk. After the fclose() the kernel
will cache the data so the next reader will still see the full file
contents no matter if it's actually committed to disk or not.
fsync() and fflush() are primarily meant to make sure data stays
intact across power outages.
NFS breaks this sometimes. CIFS is a better option, I think.
What happens if you use a webserver on the same host?
What happens if you use CIFS instead of NFS?
--
Andreas Ericsson andreas.ericsson at op5.se
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
More information about the Developers
mailing list