Even worse, if you are trying/have to do share the physical storage
devices, ie. multiinitator SCSI.
We are currently working on a highspeed distributed database engine.
We will have pairs of two hosts accessing two RAID arrays, one of which
the host "owns" and beeing the backup for the other in case of the other
host goes down.
The problem here is that you need to be sure that all relevant data
is beeing written to the disk the moment and the way you want it.
Otherwise you can not do a secure takeover in case of a failure or
recovery.
On the other hand you obviously do not want to open a data file with
O_SYNC for performance reasons. Only certain pieces of data need to be
written synchronously the rest can be more or less savely be cached.
Even if you would do it, you would never know, when you access a drive
if you get the data that you read really from the drive or from that the
buffer/pagecache THINKS is on the disk, but which might be two entirely
different things at that point of time, because the other host has updated
the datastructure.....
Mike
Michael Neuffer i-Connect.Net, a Division of iConnect Corp.
mike@i-Connect.Net 14355 SW Allen Blvd., Suite 140
503.641.8774 Beaverton, OR 97005