The following bug has been logged on the website:
Bug reference: 13973
Logged by: Harry Townsend
Email address: harry.townsend@eflowglobal.com
PostgreSQL version: 9.1.20
Operating system: Windows Server 2008
Description:
I attempted to create a safety check in a query using a "case when"
statement such that if the condition evaluated to false, it would return (1
/ 0) in order to nullify the entire transaction. With small conditions, this
works fine. With larger ones, it seems that the constants in the "else"
clause (didn't test for "then" clause) are evaluated before the condition,
causing it to fail every time. If the "else" part requires a column value,
it seems to force the condition to evaluate first though.