[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Packaging VistA - environments



On Wed, Jul 11, 2012 at 12:09:49PM -0400, Bhaskar, K.S wrote:

> >>But unlike PostgreSQL,
> >>VistA environments may be chained and you can have trees of
> >>environments.
> >Can you expand on "chain" and "trees" a little bit ?
> 
> [KSB] Sure.
> 
> Explaining the routine part is pretty simple.  The VistA distributed
> as part of a Debian package will have 25000 or so routines (give or
> take a few thousand depending on the VistA flavor).  Let's call this
> A.  A site decides to implement VistA, but wants to do some
> customization for scheduling and lab.  So, they create a development
> environment B.  There is no need to copy all of the 25000 routines.
> They create an environment B.  Processes running in environment B
> have a gtmroutines environment variable that gives them a routine
> search path of (B,A).

Oh, I see, namespaces with fallback.

GNUmed does it, PostgreSQL does it, ...

> Now, if they hire Karsten and Bhaskar as programmers

They better only hire Bhaskar because all *I* will be able
to do is keep Bhaskar from being productive ;-))

> For databases, it is slightly different.  Each environment defaults
> to a copy of the database from its parent environment (e.g., B will
> start with a copy of A's database, C defaults to a copy of B and so
> on).  But databases can be shared, again with different environment
> variables and GT.M configuration.  So, in the example above, Karsten
> and Bhaskar may choose to share a common database, even while having
> slightly different search paths for routines.  Or, for example, all
> the above environments may map the part of the database pertaining to
> drugs to a common "drug file" to which they all have just read-only
> access.  The drug file may be periodically updated as part of a
> formulary change, and everyone will then refer to the same formulary.

That would be effected by the use of schemata (use of which
can is controlled by the search path) in PostgreSQL. One
difference would be that inside one PostgreSQL database one
cannot use a different search path for routines and tables.

Thanks a lot for the explanation !

Karsten
-- 
GPG key ID E4071346 @ gpg-keyserver.de
E167 67FD A291 2BEA 73BD  4537 78B9 A9F9 E407 1346


Reply to: