> This 'pre-commit' 'really commit' two-step (get 'yer cowboy hats, right
> here) is what's needed, and is currently missing from pgsql. 

  Hello,

  I'm very interested in this topic since I am involved in a
distributed, several-PostgreSQLs-backed, open-source,
buzzword-compliant database replication middleware (still in the draft
stage though --- this is not an announcement :-).
  I had thought that the pre-commit information could be stored in an
auxiliary table by the middleware program ; we would then have
to re-implement some sort of higher-level WAL (I thought of the list
of the commands performed in the current transaction, with a sequence
number for each of them that would guarantee correct ordering between
concurrent transactions in case of a REDO). But I fear I am missing
a number of important issues there ; so could you please comment on my
idea ? 
  * what should I try not to forget to record in the higher-level WAL
  if I want consistency ?
  * how could one collect consistent ordering information without
  impacting performance too much ? Will ordering suffice to guarantee
  correctness of the REDO ? (I mean, are there sources of
  nondeterminism in PostgreSQL such as resource exhaustion etc. that I
  should be aware of ?)
  * would it be easier or harder to help implement 2-phase commit
  inside PostgreSQL (but I am not quite a PostgreSQL hacker yet !)

  Many thanks in advance !

-- 
<< Tout n'y est pas parfait, mais on y honore certainement les jardiniers >>

                        Dominique Quatravaux <[EMAIL PROTECTED]>

Reply via email to