Subject Re: [Firebird-Architect] Major and Minor ODS Versions
Author Jim Starkey
Martijn Tonies wrote:
>>>> The client needs to know the ODS version when it comes to what
>>>> particular features the database in question supports. For example,
>>>> Firebird 2.1 can open ODS 11.0 databases, but features like monitoring
>>>> tables, database triggers, ... are available in ODS 11.1 or higher
>>>> database only.
>>> The correct approach would be to have an info call, where driver would
>>> be able to query database capabilities and not contain hardcoded
>>> if/then/elses based on ODS and engine version.
>> Right, but I guess the info call isn't available, correct?
> It isn't ;-)
> And I would rather have a simple SQL statement that would return
> these things than an API call.

That strikes me as a reasonable request. There are system tables to
describe metadata, why not a pseudo table to expose engine capabilities.

That said, the info calls also give information on the transport layers
-- client API, remote interface, remote server, Y-valves, and the
engine. Most of the time you don't care, but if you're talking to an
engine with a capability that can't be reached through the remote
protocol present of your local machine, you certainly do care.