Search Postgresql Archives

Re: Issues with patitionning and triggers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Samuel Gilbert <samuel.gilbert@xxxxxxxx> writes:
> All of this was done on PostgreSQL 9.2.0 64-bit compiled from the official 
> source.  Significant changes in postgresql.conf :

Why in the world are you using 9.2.0?  You're missing a year and a half
worth of bug fixes, some of them quite serious.

> INSERT ... RETURNING does not work with partitioned tables, since the trigger 
> function on the parent that dispatches new rows to the children tables, must 
> return NULL.  If the trigger function on the parent ends with "RETURN NEW", 
> INSERT ... RETURNING works, but new rows are duplicated; they are inserted 
> both in the parent and child tables.

> Is there a way to make INSERT ... RETURNING work without duplicating the rows?

Fraid not --- it only shows what got inserted into the parent table, which
is nothing if you're using this technique.

> The modification date must be updated if any row is modified in any way.  I 
> first tried to define the triggers on the parent table.  This worked, but I 
> realized that if a queries targets explicitly a child table, it could modify a 
> row without the date being updated.  I therefore dropped the triggers on the 
> parent table and defined them for every child.  To my great surprise, the 
> insert below failed with a message saying that NULLs are not allowed in the 
> modificationdate column.

You'd have to provide a self-contained example for anyone to help you with
that.  The most obvious explanation is that you forgot to attach the
trigger to the specific child table ...

			regards, tom lane


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux