Thanks for your reply,
> FATAL is probably a bad choice of words here; it basically means any
> error condition reported by the server that caused execution of your
> query to be abandoned. NONFATAL_ERROR actually means "notice or
> warning message", and isn't a possible return code from PQexec anyway.
Just for anyone else wondering about this in the future, I found that
PGRES_FATAL_ERROR can be a simple situation such as your query having a
syntax error, or as serious as an outright database shutdown (i.e.
connection lost).