diff --git a/lib/pg_audit_log/entry.rb b/lib/pg_audit_log/entry.rb index b36436e..f7c2b47 100644 --- a/lib/pg_audit_log/entry.rb +++ b/lib/pg_audit_log/entry.rb @@ -59,7 +59,11 @@ def install EXECUTE 'SELECT ($1 + INTERVAL ''1 MONTH'')' INTO month_end USING month_start; create_table_sql := 'CREATE TABLE ' || tablename || ' ( CHECK ( date(occurred_at) >= DATE ''' || month_start || ''' AND date(occurred_at) < DATE ''' || month_end || ''' ) ) INHERITS (#{self.table_name})'; - EXECUTE create_table_sql; + BEGIN + EXECUTE create_table_sql; + EXCEPTION WHEN duplicate_table THEN + -- do nothing + END; EXECUTE 'CREATE INDEX ' || tablename || '_occurred_at ON ' || tablename || ' (date(occurred_at))'; EXECUTE insert_sql USING NEW; RETURN NULL;