Re: C exception code

From: Giles Lean <giles(at)nemeton(dot)com(dot)au>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: C exception code
Date: 2000-06-26 21:36:53
Message-ID: 1278.962055413@nemeton.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


> Are we interested in adding Try/Catch exception code to PostgreSQL.
> This looks interesting:
>
> http://www.cs.berkeley.edu/~amc/cexcept/

IMHO using the C pre-processor to make C look like some other language:

- makes the code harder to read as readers have to learn the dialect
first

- makes the code harder to debug, since debugging tools don't know the
dialect but only the C it is translated into

This exception implementation has the obvious(?) problem of using
setjump()/longjmp() where sigsetjmp()/siglongjmp() would probably be
necessary for postgresql.

There are places too where this implementation would just plain not
work and so couldn't be used: setjmp(), longjmp(), sigsetjump(), and
siglongjmp() are not async safe signal functions and so can't be
called in signal handlers, for a start.

Regards,

Giles

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2000-06-26 22:03:42 Re: Big 7.1 open items
Previous Message Bruce Momjian 2000-06-26 21:34:48 Re: C exception code