[Pgpool-general] Elusive replication issue

Tatsuo Ishii t-ishii at sra.co.jp
Sat May 21 00:21:03 GMT 2005


> Folks,
> 
> Running with:
> replicated = true
> load_balance_mode = true
> replication_strict = false
> replication_timeout = 5000
> replication_stop_on_mismatch = false
> 
> All servers are RHAS3u4.  The two database servers are exact identical (via 
> disk imaging).   All servers are 64-bit Opteron.
> 
> We were doing a test, where 2 processes were loading a combined 2 million 
> records into 3 tables (in batch transactions using COPY through JDBC), and 
> another 2 processes were running a series of aggregations (through ODBC), 
> which included many CREATE TEMPORARY TABLE statements.  After about 25 min of 
> this, we got the following fatal error on one of the data-loading processes:
> 
> WARNING: Could not commit, when returning connection, cursors and locks
> might not be released
>  writeToDB Exception, Insert Batch:2073000:ERROR: kind mismatch between
> backends
> 
> And I have to say, "huh?"
> 
> Since replication_stop_on_mistmatch = false, why is it even checking this?

You are misunderstanding. Checking is always
enabled. replication_stop_on_mistmatch controls the behavoir after an
error is found. i.e. if it's true, failover/degenration
happens. Otherwise the child process just exits.

> Unfortunately, we only seem to be able to produce this issue through intense 
> activity, which makes collecting debug output rather difficult.

An idea is set replication_strict to true.
--
Tatsuo Ishii


More information about the Pgpool-general mailing list