"without throwing an error to the client" part would be extremely hard
to implement since other concurrent sessions might connects to the
victim backend in the middle of processing.
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp

> Here is a complement for that suggestion:
> 
> If the statement is INSERT/UPDATE/DELETE, and the number of returned
> affected rows differ, degenerate the backends that differ from master
> db, without throwing an error to the client (conserve transparency).
> 
> Daniel
> 
> > -----Original Message-----
> > From: [email protected] [mailto:pgpool-general-
> > [email protected]] On Behalf Of Ramon de Carvalho Valle
> > Sent: Tuesday, June 08, 2010 7:52 PM
> > To: Tatsuo Ishii
> > Cc: [email protected]; [email protected]
> > Subject: Re: [Pgpool-general] pgpool detected difference of the number
> > of inserted, updated, or deleted ...etc..
> > 
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > 
> > Here is my suggestion:
> > 
> > When set to true, if a SELECT statement returns a result set of
> records
> > different between the backends, the backends that differ from the
> > master
> > are degenerated. This is only valid if the SELECT statement is part of
> > a
> > transaction and replicate_select is set to true. If set to false, the
> > session is terminated and the backends are not degenerated. Default is
> > false.
> > 
> > - -Ramon
> > 
> > 
> > On 06/06/2010 10:25 PM, Tatsuo Ishii wrote:
> > >> BTW : what is 'replication_stop_on_mismatch' and has it got
> anything
> > to do
> > >> with this issue ?
> > >
> > > replication_stop_on_mismatch only affects SELECT. So it does not
> > > anything to do with the issue.
> > >
> > > I have to admit that current document regarding
> > > replication_stop_on_mismatch is quite incorrect and hard to
> > > understand:
> > >
> > > "When set to true, pgpool-II degenerates the backends and keeps the
> > > service only with the Master DB if data mismatch occurs. If false,
> > > pgpool-II just terminates the query. Default is false."
> > >
> > > Probably enhanced description for this would be something like
> > > this. Please correct or raise questions. Grammatical corrections are
> > > welcome as well.
> > >
> > > "When set to true, if a backend returns different number of rows
> from
> > > other backends return in SELECT (or SHOW), pgpool-II degenerates
> > > it. This only take effects when the SELECT is running in an explicit
> > > transaction and replicate_select is set to true.  If false,
> pgpool-II
> > > just terminates the session. Default is false."
> > > --
> > > Tatsuo Ishii
> > > SRA OSS, Inc. Japan
> > > English: http://www.sraoss.co.jp/index_en.php
> > > Japanese: http://www.sraoss.co.jp
> > > _______________________________________________
> > > Pgpool-general mailing list
> > > [email protected]
> > > http://pgfoundry.org/mailman/listinfo/pgpool-general
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.4.10 (GNU/Linux)
> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> > 
> > iEYEARECAAYFAkwO160ACgkQGIS0iEuhp4MFVACdFrC9kvAvN20wz3PK4afu3f15
> > dRoAoMaVA1bwxHlQt3oXAPL6nQ2qpGB8
> > =bEVA
> > -----END PGP SIGNATURE-----
> > _______________________________________________
> > Pgpool-general mailing list
> > [email protected]
> > http://pgfoundry.org/mailman/listinfo/pgpool-general
_______________________________________________
Pgpool-general mailing list
[email protected]
http://pgfoundry.org/mailman/listinfo/pgpool-general

Reply via email to