Subject | Re: [Firebird-Architect] Re: External procedures: implementation proposal. |
---|---|
Author | Jim Starkey |
Post date | 2005-07-26T15:19:40Z |
Roman Rokytskyy wrote:
since all are internal interfaces subject to change without notice.
This is why I created InternalConnection, Attachment::getUserConnection,
and Database::getSystemConnection().
facility and the engine. The external procedure facility is loadable,
so it can't access and engine entrypoints (a provider exports a single
symbol) or engine data structures. On the other hand, it must operate
as part of the host request's transaction and honor savepoints, etc.
The big questions are what services must be exported to external
procedures and what sort of hook registration mechanism might be required.
But seriously, we can't possibly discuss parameter passing and APIs
without know what semantics must attach to them.
TLV? What's TLV? Looks like another TLA to me. I can handle POV, though.
--
Jim Starkey
Netfrastructure, Inc.
978 526-1376
>>The issues can't be separated -- what is passed to an externalExactly!
>>procedure facility must be sufficient for a procedure to do it's work,
>>
>>
>
>Now I think I understand our problem here - the key phrase is "what is
>passed".
>
>
>It is correct, that you, Jim, expect the engine to pass the callbacksI don't think it is feasible to export any engine entrypoints, per se,
>(whatever they are - isc_XXX, jrd8_XXX or InternalConnection instance)
>into the open(...) method of the external procedure?
>
>
since all are internal interfaces subject to change without notice.
This is why I created InternalConnection, Attachment::getUserConnection,
and Database::getSystemConnection().
>If that is your expectation, then it is different to what we wereMy main concern is the relationship between and external procedure
>thinking about - we were thinking about getting the callbacks from the
>environment when and if needed (think of TLV, for example). In this
>case we can concentrate on the parameter passing first without
>discussing the callbacks. If that is wrong from your POV, please
>explain why.
>
>
>
>
>
facility and the engine. The external procedure facility is loadable,
so it can't access and engine entrypoints (a provider exports a single
symbol) or engine data structures. On the other hand, it must operate
as part of the host request's transaction and honor savepoints, etc.
The big questions are what services must be exported to external
procedures and what sort of hook registration mechanism might be required.
But seriously, we can't possibly discuss parameter passing and APIs
without know what semantics must attach to them.
TLV? What's TLV? Looks like another TLA to me. I can handle POV, though.
--
Jim Starkey
Netfrastructure, Inc.
978 526-1376