This is extremely important, esp. with Softupdates, since fsync() does not guarantee a flush of all buffers to the medium. In order to implement a stable queue, it would be best to use a different filesystem.
On Fri, Jul 22, 2011 at 6:16 AM, Unga <[email protected]> wrote: > --- On Fri, 7/22/11, Pieter de Goeje <[email protected]> wrote: > >> From: Pieter de Goeje <[email protected]> >> Subject: Re: How to sync a file on FreeBSD? >> To: [email protected] >> Cc: "Unga" <[email protected]> >> Date: Friday, July 22, 2011, 7:37 PM >> On Friday, July 22, 2011 08:44:00 AM >> Unga wrote: >> > How to sync a file on FreeBSD (esp. on 8.1) to disk? >> > >> > I used fsync(2), but does not immediately flush to >> disk. >> > >> > I want my writing to a file (a log file) immediately >> available to other >> > users to read. >> >> A file doesn't need to be "synced" to disk for other users >> to read the latest >> data. The application just needs to call write(2) and the >> data is available. >> It will be written to and read from the operating system's >> file cache. If >> you're using stdio you can force a write(2) by calling >> fflush(3). >> >> - Pieter >> > > Hi all > > Thanks for the replies. > > fflush(3) after fputs seems to work. > > Best regards > Unga > > > _______________________________________________ > [email protected] mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to "[email protected]" > _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[email protected]"
