BUG #2857: Sequence and table partitioning - Mailing list pgsql-bugs

From Tomislav Karastojkovic
Subject BUG #2857: Sequence and table partitioning
Date
Msg-id 200612220916.kBM9GxKX032351@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #2857: Sequence and table partitioning  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
The following bug has been logged online:

Bug reference:      2857
Logged by:          Tomislav Karastojkovic
Email address:      karastojko@gmail.com
PostgreSQL version: 8.1.4, 8.2.0
Operating system:   Linux
Description:        Sequence and table partitioning
Details:

Sequence does not increase by 1 when tables is partitioned!
For example, let define 'parent' and 'child' tables, with column 'id' of
type 'serial':

CREATE TABLE parent(id serial, message text);
CREATE TABLE child() INHERITS(parent);
ALTER TABLE child ALTER id DROP DEFAULT;

Default value is dropped from the child table, so sequence is used only in
the 'parent' table.
If we set a rule

CREATE OR REPLACE RULE r AS ON INSERT TO parent DO INSTEAD INSERT INTO child
VALUES(NEW.id, NEW.message);

then each inserting into table 'parent' increases sequence 'parent_id_seq'
by 1, as it should. But if we add a condition for 'id' when setting the rule
like

CREATE OR REPLACE RULE r AS ON INSERT TO parent WHERE id>=1 AND id <= 100 DO
INSTEAD INSERT INTO child VALUES(NEW.id, NEW.message);

then the sequence is increasing by 5 when inserting into 'parent' table.
This seems to be a bug.

pgsql-bugs by date:

Previous
From: "goodsforyou"
Date:
Subject: BUG #2861: when backup UTF-8 database,pgdump add comments not encoded in UTF-8
Next
From: "Lubomir Brychta"
Date:
Subject: bug: Mac OS X 10.4.8 Intel