Re: foundations of relational theory? - some references for the truly starving

From: Jonathan Leffler <jleffler_at_earthlink.net>
Date: Sun, 26 Oct 2003 05:55:01 GMT
Message-ID: <VkJmb.2837$RQ1.2080_at_newsread3.news.pas.earthlink.net>


Bob Badour wrote:

> "Marshall Spight" <mspight_at_dnai.com> wrote:

>>So, what happens if you have a power failure or an OS or application
>>crash when you've written the first page of a two-page update?
>>Does Pick have transactions?
> 
> Does any primitive file processor? (It's a serious question. I would be
> interested to know which do.)

Define 'primitive file processor'?

IBM Informix C-ISAM supports transactions, up to a point (recovery after a crash is not automatic).

Berkeley DB supports transactions, including XA distributed transactions. I don't know how it handles crash recovery.

Any system where the database access is done directly by the application is somewhat vulnerable to the application suddenly dying at the most inconvenient possible moment (Murphy's Law at work). When the database access is separated from the application (a database server process access the database and communicates with the client), there is a reduced vulnerability to application flaws. However, unless there is also a program that monitors the database server processes, you are still vulnerable to the database server crashing at the most inconvenient moment. Informix SE is in this category. It has a separate server process (colloquially known as sqlexec after the program that is executed), but if the sqlexec dies (error -408 detected by the application - usually), there is no monitoring process to rollback any in-flight transaction that the sqlexec did not complete. By contrast, Informix OnLine and Informix IDS (and XPS) all have the separate database server, but there is also a monitor process which, in some shape or other, deal with rolling back the transaction of a database server process or thread that dies unexpectedly.

-- 
Jonathan Leffler                   #include <disclaimer.h>
Email: jleffler_at_earthlink.net, jleffler_at_us.ibm.com
Guardian of DBD::Informix v2003.04 -- http://dbi.perl.org/
Received on Sun Oct 26 2003 - 06:55:01 CET

Original text of this message