Re: Rename of triggers for partitioned tables

Arne Roland <a.roland@index.de>

From: Arne Roland <A.Roland@index.de>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Pg Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-07-20T09:25:35Z
Lists: pgsql-hackers
Thank you! I get a compile time error

gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -O2 -I../../../src/include  -D_GNU_SOURCE   -c -o trigger.o trigger.c

In file included from ../../../src/include/postgres.h:46:0,
                 from trigger.c:14:
trigger.c: In function ‘renametrig_partition’:
../../../src/include/c.h:118:31: error: expected ‘,’ or ‘;’ before ‘__attribute__’
 #define pg_attribute_unused() __attribute__((unused))
                               ^
../../../src/include/c.h:155:34: note: in expansion of macro ‘pg_attribute_unused’
 #define PG_USED_FOR_ASSERTS_ONLY pg_attribute_unused()
                                  ^~~~~~~~~~~~~~~~~~~
trigger.c:1588:17: note: in expansion of macro ‘PG_USED_FOR_ASSERTS_ONLY’
  int  found = 0 PG_USED_FOR_ASSERTS_ONLY;
                 ^~~~~~~~~~~~~~~~~~~~~~~~
trigger.c:1588:7: warning: unused variable ‘found’ [-Wunused-variable]
  int  found = 0 PG_USED_FOR_ASSERTS_ONLY;
       ^~~~~
make[3]: *** [<builtin>: trigger.o] Error 1


Any ideas on what I might be doing wrong?


Regards

Arne

Commits

  1. Remove newly added useless assertion check

  2. Make ALTER TRIGGER RENAME consistent for partitioned tables

  3. Fix pg_dump for disabled triggers on partitioned tables

  4. Preserve firing-on state when cloning row triggers to partitions

  5. Fix ALTER TABLE .. ENABLE/DISABLE TRIGGER recursion

  6. Record parents of triggers

  7. Allow FOR EACH ROW triggers on partitioned tables