Failover Cluster die zweite
Jan-Benedict Glaw
jbglaw at lug-owl.de
Fri Jun 1 16:22:25 CEST 2007
On Fri, 2007-06-01 16:03:34 +0200, Ralph Meyer <ralph at schosemail.de> wrote:
> > 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.
>
> Wo finde ich denn weitere Informationen (also was muss ich bei Google
> eingeben ;-) ) zu diesem heiklen Thema und zur Programmierung dazu ?
> Es müsste ja irgendwie lösbar sein denke ich mal.
Das ganze fällt unter das Thema "Transaktionen". Und ist leider keine
triviale Geschichte.
Implementiert wird das in den einfachen Fällen meist dadurch, daß man
sich erst irgendwo hinschreibe, _was_ man ändern will,
fsync()/fdatasync() aufruft (Transaktion vorbereiten. Wenn das
abgeschlossen ist, kann dem Anwender gesagt werden, daß seine Aktion
geklappt hat) und dann die Änderung in den eigentlichen Daten startet.
Wenn dann was passiert, hat man ja die andere Datei und kann nach dem
Applikations-Neustart die Aktion wiederholen.
MfG, JBG
--
Jan-Benedict Glaw jbglaw at lug-owl.de +49-172-7608481
Signature of: They that give up essential liberty to obtain temporary safety,
the second : deserve neither liberty nor safety. (Ben Franklin)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lug-owl.de/pipermail/linux/attachments/20070601/988aaef5/attachment.sig>
More information about the Linux
mailing list