From: Jens Thoms Toerring on
In comp.unix.programmer Peter Olcott <NoSpam(a)ocr4screen.com> wrote:
> I was told to use fsync() not sync().

fsync(2) is the C function to use while sync(1) is a "program"
you can invoke from the command line (or from a script) to do
the same (well, fsync() is for a single file descriptor while
sync() takes care of all disks...). Just have a look at the
man pages for both of them - the fsync(2) Linux man page also
mentions some caveats. (And the man page for open(2) has some
bits of information about O_SYNC you have been asking about).

Regards, Jens

PS: The xxxx(y) notation means that the function/program 'xxxx'
is in section 'y' of the man pages. Thus to get the descrip-
tion for the 'xxxx(y)' for sure you may have to use

man y xxxxx

This is important for cases where functions/programs of the
same name exist and allows to find what you're actually loo-
king for. E.g. there is a 'write' utility - which you may get
when you just do

man write

But when you look for the systems write() function you thus
may have to use

man 2 write

and thus this write() is often referred to as write(2).
--
\ Jens Thoms Toerring ___ jt(a)toerring.de
\__________________________ http://toerring.de
From: Ian Collins on
On 04/ 9/10 01:58 PM, Peter Olcott wrote:
>
> Does the MySQL InnoDB storage engine have a journal file
> like SQLite for crash recovery?

I suggest you do some background reading:

http://dev.mysql.com/doc/refman/5.5/en/innodb.html

To quote the first paragraph:

"InnoDB is a transaction-safe (ACID compliant) storage engine for MySQL
that has commit, rollback, and crash-recovery capabilities to protect
user data."

--
Ian Collins
From: Peter Olcott on

"Ian Collins" <ian-news(a)hotmail.com> wrote in message
news:827evjFp8jU20(a)mid.individual.net...
> On 04/ 9/10 01:21 PM, Peter Olcott wrote:
>> "Ian Collins"<ian-news(a)hotmail.com> wrote in message
>> news:827d0gFp8jU18(a)mid.individual.net...
>>> On 04/ 9/10 12:43 PM, Peter Olcott wrote:
>>>> "Ian Collins"<ian-news(a)hotmail.com> wrote:
>> Exactly how fault tolerant is it with the server's power
>> cord yanked from the wall?
>
> As good as any. If you want 5 nines reliability you have
> to go a lot further than synchronous writes. My main
> server has highly redundant raid (thinks to ZFS),
> redundant PSUs and a UPS. I'm not quite at the generator
> stage yet, our power here is very dependable :).

Do you also have disk write caching turned off?


From: Peter Olcott on

"Ian Collins" <ian-news(a)hotmail.com> wrote in message
news:827h6jFp8jU22(a)mid.individual.net...
> On 04/ 9/10 01:58 PM, Peter Olcott wrote:
>>
>> Does the MySQL InnoDB storage engine have a journal file
>> like SQLite for crash recovery?
>
> I suggest you do some background reading:
>
> http://dev.mysql.com/doc/refman/5.5/en/innodb.html
>
> To quote the first paragraph:
>
> "InnoDB is a transaction-safe (ACID compliant) storage
> engine for MySQL that has commit, rollback, and
> crash-recovery capabilities to protect user data."
>
> --
> Ian Collins

OK that sounds good. Do you also have to turn off disk write
caching?


From: Ian Collins on
On 04/ 9/10 02:38 PM, Peter Olcott wrote:
> "Ian Collins"<ian-news(a)hotmail.com> wrote in message
> news:827h6jFp8jU22(a)mid.individual.net...
>> On 04/ 9/10 01:58 PM, Peter Olcott wrote:
>>>
>>> Does the MySQL InnoDB storage engine have a journal file
>>> like SQLite for crash recovery?
>>
>> I suggest you do some background reading:
>>
>> http://dev.mysql.com/doc/refman/5.5/en/innodb.html
>>
>> To quote the first paragraph:
>>
>> "InnoDB is a transaction-safe (ACID compliant) storage
>> engine for MySQL that has commit, rollback, and
>> crash-recovery capabilities to protect user data."
>
> OK that sounds good. Do you also have to turn off disk write
> caching?
>
I never have.

At least on Solaris, disk write caching is always disabled for UFS and
trust ZFS to "do the right thing".

--
Ian Collins