Subject Re: [Firebird-Architect] Re: selecting from multiple databases
Author Jim Starkey
At 12:51 PM 6/12/03 +0000, peter_jacobi.rm wrote:

>Isn't the multiple database issue only about names (and
>namespaces):
>
>You have database A with tables U, V and W and database
>B with tables X, Y and Z.
>
>This Firebird can't handle today.
>
>But if you have a single database with tables A_U, A_V, A_W,
>B_X, B_Y and B_Z (with matching definitions of tables), you
>have the same logical structure and Firebird can handle it.


The interesting case is when the databases are on different servers, which
is clearly more than a namespace problem. But even if the databases
were on the same server, the encapsulation of the two database internal
data structures make cross database operations an impossibilities. Among
many other things, the two databases have separate memory pools, separate
lock tables, separate thread synchronization, etc. Extending the engine
to support cross database access is almost unthinkable.

A multi-level namespace would be a wonderful addition to
Firebird. Netfrastructure
supports a two level programmable namespace:

alter namespace set <schema-name> [, <schema-name>]...
alter namespace push <schema-name>
alter namespace pop

A multi-level namespace allows two or more independent instances of an
application to live in the same database. A programmable namespace supports
application inheritance.


Jim Starkey