Subject | Re: [Firebird-Architect] Re: Vulcan services engine info |
---|---|
Author | Dmitry Yemanov |
Post date | 2006-05-10T14:39:39Z |
"Roman Rokytskyy" <rrokytskyy@...> wrote:
name in its parameter. This is the only required info for the dispatcher to
call the subsystem (either locally or remotely). How the database name is
written doesn't matter at all, it will be analyzed when the particular
service will try to attach that database. So I see no need to parse SPB (in
my view of things).
share the code between services and standalong programs. If you integrate
GBAK into the engine, this code sharing will be lost. If you don't and keep
the service'd GBAK a layered code, then its integration into the engine
makes no sense (it will be yet another DSQL).
particular database access but be complex enough to be undesirable within
the dispatcher. Or they may require access to a few databases
simultaneously.
it fits the architecture.
sp_get_active_db_count() call? SQL access can be easily implemented with the
services provider as well.
Dmitry
>Not sure about that. isc_service_attach() call contains (or doesn't) host
> I do not like it either, but somebody in old times decided to specify
> the database name in the SPB. Since all logic in dispatcher rotates
> around the database name, we have to peek into it anyway.
name in its parameter. This is the only required info for the dispatcher to
call the subsystem (either locally or remotely). How the database name is
written doesn't matter at all, it will be analyzed when the particular
service will try to attach that database. So I see no need to parse SPB (in
my view of things).
> - gbak: physical access to the database fileWhy should the physical access matter here? Utilities are implemented to
> - gfix: operations that need physical access to the database file
> - gstat: does physical access to the database file itself
share the code between services and standalong programs. If you integrate
GBAK into the engine, this code sharing will be lost. If you don't and keep
the service'd GBAK a layered code, then its integration into the engine
makes no sense (it will be yet another DSQL).
> So, everything that is missing in the engine now is writing thePlease don't be bound to the current utilities. Future ones can require no
> transportable backup files and move the gstat to the engine too.
particular database access but be complex enough to be undesirable within
the dispatcher. Or they may require access to a few databases
simultaneously.
> Moving gstat into the engine sounds logical anyway - we have noHere I agree.
> mechanism how to handle multiple gstat implementations for different
> ODS versions. Currently, it seems that gstat must be able to handle
> all possible ODS versions, which is what we wanted to avoid - one
> provider for one ODS.
> But in general we get very straightforward structure - each requestI still don't see loops as a problem. It worked since the very beginning and
> goes down the pipe and each response goes up the pipe. No loops, etc.
it fits the architecture.
> Another advantage is that if all utility calls are already availableAgreed about "good thing", but how would you suggest to implement
> in the engine, it is very easy to provide an SQL access to it, another
> "good thing" (tm).
sp_get_active_db_count() call? SQL access can be easily implemented with the
services provider as well.
Dmitry