BUG #14983: ERROR: duplicate key value violates unique constraint"oid_tbl_oid_key" - Mailing list pgsql-bugs

From PG Bug reporting form
Subject BUG #14983: ERROR: duplicate key value violates unique constraint"oid_tbl_oid_key"
Date
Msg-id 20171218153618.25743.45604@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #14983: ERROR: duplicate key value violates uniqueconstraint "oid_tbl_oid_key"  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      14983
Logged by:          Tony Reix
Email address:      tony.reix@atos.net
PostgreSQL version: 10.1
Operating system:   AIX
Description:

This error randomly appears when PostgreSQL is compiled with -O2 .
With -O0, no error out of 100 tries.

This error appears with v9.6.6, v10.0, and v10.1 . With compiler XLC v13 or
v12 (last available versions). On AIX 6.1, 7.1, and 7.2 .

The test is part of the PostgreSQL regression tests: cd src/bin ; su pgstbf
; gmake -C pgbench check.

I'd like to know how to produce more detailed traces.
Since I port PostgreSQL, I do not know how to debug PostgreSQL. So, I'd like
to get help about how to find the root cause of this issue.

Errors appearing in logs:
1) src/bin/pgbench/tmp_check/log/001_pgbench_main.log :
   2017-12-18 16:07:39.268 CET [12976136] t/001_pgbench.pl LOG:  execute
P0_0: INSERT INTO oid_tbl SELECT FROM generate_series(1,1000);
   2017-12-18 16:07:39.268 CET [13041676] t/001_pgbench.pl ERROR:  duplicate
key value violates unique constraint "oid_tbl_oid_key"
   2017-12-18 16:07:39.268 CET [13041676] t/001_pgbench.pl DETAIL:  Key
(oid)=(100291) already exists.
   2017-12-18 16:07:39.268 CET [13041676] t/001_pgbench.pl STATEMENT:
INSERT INTO oid_tbl SELECT FROM generate_series(1,1000);
   2017-12-18 16:07:39.285 CET [12386468] t/001_pgbench.pl LOG:  execute
P0_0: INSERT INTO oid_tbl SELECT FROM generate_series(1,1000);

2) src/bin/pgbench/tmp_check/log/regress_log_001_pgbench :

  Success. You can now start the database server using:
  
      pg_ctl -D
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgdata
-l logfile start
  
  # Running:

/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/../../../src/test/regress/pg_regress
--config-auth
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgdata
  ### Starting node "main"
  # Running: pg_ctl -D
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgdata
-l

/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/log/001_pgbench_main.log
start
  waiting for server to start.... done
  server started
  # Postmaster PID for node "main" is 12845290
  # Running: pgbench --no-vacuum --client=5 --protocol=prepared
--transactions=25 --file

/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgbench_script
  ok 1 - concurrent OID generation: exit code 0
  not ok 2 - concurrent OID generation: no stderr
  
  #   Failed test 'concurrent OID generation: no stderr'
  #   at
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/../../../src/test/perl/TestLib.pm
line 304.
  #          got: 'client 3 aborted in command 0 of script 0; ERROR:
duplicate key value violates unique constraint "oid_tbl_oid_key"
  # DETAIL:  Key (oid)=(100291) already exists.
  # 
  # '
  #     expected: 
  not ok 3 - concurrent OID generation: matches
  
  #   Failed test 'concurrent OID generation: matches'
  #   at
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/../../../src/test/perl/TestLib.pm
line 305.
  #                   'transaction type:

/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgbench_script
  # scaling factor: 1
  # query mode: prepared
  # number of clients: 5
  # number of threads: 1
  # number of transactions per client: 25
  # number of transactions actually processed: 117/125
  # latency average = 37.404 ms
  # tps = 133.674197 (including connections establishing)
  # tps = 134.614762 (excluding connections establishing)
  # '
  #     doesn't match '(?^:processed: 125/125)'
  ### Stopping node "main" using mode immediate
  # Running: pg_ctl -D
/home2/freeware/src/packages/BUILD/postgresql-10.1-xlc13-AvecO2/32bit/src/bin/pgbench/tmp_check/data_main_2SQ6/pgdata
-m immediate stop
  waiting for server to shut down.... done
  server stopped
  # No postmaster PID for node "main"
  # Looks like you failed 2 tests of 3.



pgsql-bugs by date:

Previous
From: Seth Duda
Date:
Subject: Received resultset tuples, but no field structure for them
Next
From: Stephen Frost
Date:
Subject: Change to bug reporting form