Subject Re: [Firebird-Architect] External procedures: implementation proposal.
Author Aleksey Karyakin
""Roman Rokytskyy"" <rrokytskyy@...> wrote in message
>> If this AV comes into the engine, it aborts. There's no other
>> option.
> Cannot you wrap all calls into try/catch? AV in external module is
> something that server should really care about.

Sorry, couldn't resist.

As long as all modules in server are loaded in single process, the
virtual address space is shared for them all. So any hidden AV in one
place can cause absolutely strange and unpredictable results in

Good memory dump, taken immediately at failure point, is much better
than corrupted data.

If you want the server to survive bugs (instead of fixing them) in
external modules, run them as outside process(es) connected to the
server with some communication facility and perform data validation
on calls.

Aleksey Karyakin