On Thu, Oct 31, 2024 at 1:04 PM Bruno Wolff III <bruno@xxxxxxxx> wrote: > I was unable to find any documentation clarifying if using COPY to load a > table with rows referencing others rows in the same table, whether I > had to worry about ordering of the input. > What I found (in 17) is that even if the references constraint wasn't > set as deferrable, I could have rows for children before their parents > in the COPY data and things still worked. AFAIK, DEFERRABLE is for temporary violations crossing statement boundaries, to postpone the enforcement of FKs at COMMIT time of the transaction. While a single COPY is just one statement, so whether a temporary violation for self-referential FKs would occur would be implementation-dependent, and thus "neither logical" nor predictable. Applies to other statement types too. But of course, more authoritative answers will come I'm sure. --DD