Tomasz Kliczak wrote:
  CONSTRAINT sy_task_priority FOREIGN KEY (sy_b_id)
      REFERENCES sy_b (id) MATCH SIMPLE

When i try to add something into table  dt_a I get error :

ERROR: permission denied for relation sy_task_priority
CONTEXT: SQL statement "SELECT 1 FROM ONLY "public"."sy_b" x WHERE "id" = $1
FOR UPDATE OF x"

I want to have constraint on table dt_a, and for table sy_b only SELECT
grant.
But when I add UPDATE grant on sy_b it works.

That's because the foreign-key takes a lock to *prevent* updates. To do this it takes an update lock though, which is why you see the error message.

HTH
--
  Richard Huxton
  Archonet Ltd

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to