Adding a rule makes my sequence increment twice
От | Fran Fabrizio |
---|---|
Тема | Adding a rule makes my sequence increment twice |
Дата | |
Msg-id | 3C03E485.83A1664E@mmrd.com обсуждение исходный текст |
Ответы |
Re: Adding a rule makes my sequence increment twice
|
Список | pgsql-general |
Hello, I have a table (table1) with a column called 'id' which has a default value of nextval('id_seq'). I insert into table1, it increments, all is happy. I add a totally unrelated rule (rule1) to this table, one which just changes the value of a field in another table (table2) (and table2 is in no way connected to the id_seq), and now when I insert into table1, the sequence gets incremented twice. I'm wondering if this is a product of the way that rules rewrite the query or something. Any insight? Unfortunately, I cannot duplicate this behavior using simple test tables, but I am quite sure that table2 in no way alters the value of id_seq. If for instance the value of the sequence before the insert was 10000, I see something like this: sequence value = 10000 I insert a row into table 1 At the start of the rule1 execution value of sequence is 10001 At the end of the rule1 execution value of sequence is 10001 insert returns sequence value = 10002 It's got me baffled after exploring it all morning. Thanks, Fran
В списке pgsql-general по дате отправления: