[Pgpool-general] pgpool: online recovery and serial field

Sergey V. Arlashin s.arlashin at gmail.com
Sat Feb 5 16:42:42 UTC 2011


Hi!
I'm testing online recovery (multimaster replication) and there is an 
issue related to it.
I made a simple script which writes data to my database during the whole 
test. In the middle of the test I switch off one of the PostgreSQL nodes 
and when it's back I start online recovery. Then I check the data on 
both nodes. Everething is ok except fields which have 'serial' data 
type. They are not the same. Here is an example:

node01:

   id  | data
------+-------
...
  1293 | aaaaa
  1294 | aaaaa
  1295 | aaaaa
  1296 | aaaaa
  1297 | aaaaa
  1298 | aaaaa
  1299 | aaaaa
  1300 | aaaaa
  1301 | aaaaa
  1333 | aaaaa
  1334 | aaaaa
  1335 | aaaaa
  1336 | aaaaa
  1337 | aaaaa
  1338 | aaaaa
  1339 | aaaaa
  1340 | aaaaa
  1341 | aaaaa
  1342 | aaaaa
(1249 rows)

node02:

   id  | data
------+-------
...
  1293 | aaaaa
  1294 | aaaaa
  1295 | aaaaa
  1296 | aaaaa
  1297 | aaaaa
  1298 | aaaaa
  1299 | aaaaa
  1300 | aaaaa
  1301 | aaaaa
  1302 | aaaaa
  1303 | aaaaa
  1304 | aaaaa
  1305 | aaaaa
  1306 | aaaaa
  1307 | aaaaa
  1308 | aaaaa
  1309 | aaaaa
  1310 | aaaaa
  1311 | aaaaa
(1249 rows)

As you see the number of rows on both nodes is the same, but values in 
the id field (which has 'serial' data type) differ from each other. I 
looked through pgpool documentation and found that 'insert_lock = true' 
would probably solve my problem. But it didn't.
Could you tell me, is there a way to get fields with 'serial' data type 
to be equal after online recovery on all nodes.

...
WBR, Sergey



More information about the Pgpool-general mailing list