Subject Re: [Firebird-Architect] Database Capabilities
Author Dmitry Sibiryakov
On 22 Jul 2005 at 10:58, Jim Starkey wrote:

>> As far as I can read sources, standard database attach procedure is
>>two-phased. First, client connects to server (op_connect) and then
>>attach to database (op_attach).
>Sorry, but you read wrong. There is only one call,

One call in API - yes. One round-trip in network protocol - no.

> In fact, there isn't a concept of server in the
>API architecture. A server is nothing more than an ordinary database
>client that is invoked by the remote interface over a network
>connection. It isn't addressable.

And what can stop us from changing this situation? Backward
compatibility issue? No. You are going to implement functionality
that didn't exist before anyway.
I think we can easily introduce two (four) new calls:
fb_connect(...) to obtain "server" handle and
fb_attach(...,server_handle,...) to obtain "usual" database handle.
There is a lot of interesting things that can be done with server
(Y-valve) handle: server-wide user management, configuration
management and other stuff which can be done currently via services
API. Besides, this may be step towards cross-database queries because
you can attach to more than one database inside one connection.

SY, Dimitry Sibiryakov.