Failover Cluster die zweite

Lars Marowsky-Bree lars at marowsky-bree.de
Fri Jun 1 15:33:44 CEST 2007


On 2007-06-01T15:20:34, Ralph Meyer <ralph at schosemail.de> wrote:

> Die Anwendung auf dem Slave versucht beim starten eine Datei
> zu öffnen, die anscheinend korrupt ist. Kann das auch daran
> liegen, das die Daten des Plattencaches vom ersten Node nicht
> auf die Platte geschrieben wurden ? Könnte man sowas eventuell
> umgehen / lösen ?

Nein, das kann man nicht umgehen.

Diese Anwendung würde auch keinen Reboot in einem ungünstigen Moment
überleben - sie muss an den entsprechenden Stellen fsync/fdatasync und
Konsorten aufrufen, um sicherzustellen, daß der stable storage
konsistent ist.

Wenn's _nur_ im Betriebssystemcache hängt, die Applikation also schon
dem write() Syscall übergeben hat, kannst Du das entsprechende FS
vermutlich auch mal mit der "sync" Option mounten, um den Datenverlust
zu minimieren - die Performance leidet darunter aber ebenfalls
_extrem_. Zusätzlich würde ich vermuten, daß die Daten dann zwar
schneller, aber nachwievor nicht konsistent geschrieben werden - das
reduziert das Zeitfenster, aber eliminiert nicht das Problem.

Transaktionen dem Nutzer zu bestätigen und dabei noch im Speicher zu
halten ist grob fahrlässige Programmierung. Bei einem kommerziellen
Produkt würde ich es mal mit der Produkthaftung probieren.


Mit freundlichen Grüßen,
    Lars

-- 
Teamlead Kernel, SuSE Labs, Research and Development
SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg)
"Experience is the name everyone gives to their mistakes." -- Oscar Wilde




More information about the Linux mailing list