Search Postgresql Archives

Re: Constraint ordering

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

 



On Sat, Apr 9, 2022 at 7:43 AM Perry Smith <pedz@xxxxxxxxxxxxxxxx> wrote:
I think (hope) I’ve made a bad assumption.  I have my DB with one table with two constraint on new entries.  The “first” is for the parent and basename be unique.  The “second” is that the devno and inode are unique if it is a directory.

When I was doing my early testing, the parent+basename constraint would fire first if it needed to.  Now that I’m doing a longer test run, the second constraint is firing at a time that I wasn’t expecting.  I’m debugging but it takes time to hit this again.

My assumption was if the error reported back that the “second" constraint failed that the “first” constraint passed.  But I bet that isn’t a valid assumption at all.

All that to ask: is there a predictable ordering of constraints?


If you cannot find documentation describing constraint ordering rules then there are none.  It isn't something a production application should rely upon.  And for testing you should just ensure that any given test case only violates one of those constraints at a time when you are testing to see that they fire.

I'm not aware of any documentation describing constraint evaluation order.

David J.

[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 Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux