2013/9/23 Marko Tiikkaja <ma...@joh.to> > On 9/23/13 11:12 AM, I wrote: > >> On 9/23/13 11:01 AM, Amit Khandekar wrote: >> >>> The assert levels sound a bit like a user might be confused by these >>> levels >>> being present at both places: In the RAISE syntax itself, and the assert >>> GUC level. But I like the syntax. How about keeping the ASSERT keyword >>> optional ? When we have WHEN, we anyway mean that we ware asserting that >>> this condition must be true. So something like this : >>> >>> RAISE [ level ] 'format' [, expression [, ... ]] [ USING option = >>> expression [, ... ] ]; >>> RAISE [ level ] condition_name [ USING option = expression [, ... ] ]; >>> RAISE [ level ] SQLSTATE 'sqlstate' [ USING option = expression [, ... ] >>> ]; >>> RAISE [ level ] USING option = expression [, ... ]; >>> *RAISE [ ASSERT ] WHEN bool_expression;* >>> RAISE ; >>> >> >> I'd expect RAISE .. WHEN ..; to be the same as: >> >> IF .. THEN >> RAISE; >> END IF; >> > > Should've probably proofread that one. I meant: > > RAISE WHEN true; > > would be equivalent to > > IF true THEN > RAISE; > END IF; >
we use a RAISE only keyword statement for resignaling, so it can be really confusing Pavel > > > > Regards, > Marko Tiikkaja >