Subject Re: [Firebird-Architect] Re: External procedures: implementation proposal.
Author Dmitry Yemanov
"Roman Rokytskyy" <rrokytskyy@...> wrote:
> So, the question is whether we define a new module for "C" language
> that would resolve the external name "ib_util:some_procedure" on
> Windows into "ib_util.dll" and "some_procedure" entry point?

Yes, I think so.

> > Perhaps you're right. I just don't want to see server crashes when
> > it could be avoided.
> Then don't let it crash. I do not think that C++ is not capable of
> handling something like "NullPointerException" (in that case it would
> be access violation) generated in the SP/UDF.

If this AV comes into the engine, it aborts. There's no other option.

> I had a short discussion with Paul Ruizendaal and he asked why didn't
> we specify external procedures that return simultaneously OUT params
> and result set(s). I suspect this is a feature of the procedural
> languages from Oracle, DB2 and SQL Server. Is it necessary?

I'd like to hear Paul's explanation of this feature. In Oracle, a cursor
reference (may be treated as a result set) could be an OUT param. But the
engine doesn't support anything like this yet.