Subject | Re: [Firebird-Architect] RFC: External Engine API |
---|---|
Author | Vlad Khorsun |
Post date | 2007-12-10T15:32:16Z |
> Roman Rokytskyy escreveu:I don't know
>>> So I'm proposing a C++ friendly interface, accessible by C and others
>>> languages and future compatible with a C++ client API.
>>>
>>
>> What exactly means "future compatible with C++ client API"?
>>
> Aren't we going to somewhere in the future have a C++, JDBC-like (!=
> identical) API?
> Attachment and Transaction will be equivalent to Connection.Why ? Are you going to disable multiply active transaction at one
attachment ?
...
>> There's one issue with such model - it requires TLS in plugin.It is implemented in B2_1_ExecStmt branch and not requires TLS.
> Where you see TLS required? All handles are accessible via structures
> passed by the engine to the plugin.
> Way to obtain connection and transaction handle is encapsulated inside
> ExternalContext.
>
>> I like Vlad's idea of having special DPB/TPB parameters for a current
>> attachment/transaction more attractive. Do you have any objections to it?
> AFAIU, this requires TLS.
> But I have no problem to have this, also it's in my plans to have it.It is not allowed as transaction must be finished where it was started.
> It makes connection to database automatically usable in Delphi, for example.
>
> For the transaction obtained via special TPB, what should be the
> behavior of COMMIT and ROLLBACK? Should it act in a savepoint?
I.e. if client application started transaction - client application must finish it.
Another DBMS's may have own behavior, but in FB\IB it always worked
this way.
Regards,
Vlad