mirror of https://github.com/postgres/postgres
Attached is a patch to contrib/dbmirror that fixes a bug that was
causing the postmaster to crash when the trigger was running on a table without a primary key. I've also updated the docs to explicitly say that tables need primary keys. Steven Singer
This commit is contained in:
parent
b2c34e2bd1
commit
603f601269
|
@ -120,6 +120,9 @@ Execute the SQL code in AddTrigger.sql once for each table that should
|
|||
be mirrored. Replace MyTableName with the name of the table that should
|
||||
be mirrored.
|
||||
|
||||
NOTE: DBMirror requires that every table being mirrored have a primary key
|
||||
defined.
|
||||
|
||||
5) Create the slave database.
|
||||
|
||||
The DBMirror system keeps the contents of mirrored tables identical on the
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/****************************************************************************
|
||||
* pending.c
|
||||
* $Id: pending.c,v 1.4 2002/09/05 00:43:06 tgl Exp $
|
||||
* $Id: pending.c,v 1.5 2002/09/26 05:24:30 momjian Exp $
|
||||
*
|
||||
* This file contains a trigger for Postgresql-7.x to record changes to tables
|
||||
* to a pending table for mirroring.
|
||||
|
@ -225,6 +225,11 @@ storeKeyInfo(char *cpTableName, HeapTuple tTupleData,
|
|||
|
||||
/* pplan = SPI_saveplan(pplan); */
|
||||
cpKeyData = packageData(tTupleData, tTupleDesc, tpTrigData, PRIMARY);
|
||||
if (cpKeyData == NULL)
|
||||
{
|
||||
elog(ERROR,"Could not determine primary key data");
|
||||
return -1;
|
||||
}
|
||||
#if defined DEBUG_OUTPUT
|
||||
elog(NOTICE, cpKeyData);
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue