VistA Standard Base (VSB) Specification/Guidelines -- Draft 9

19 views
Skip to first unread message

Ignacio Valdes

unread,
Jan 28, 2009, 4:21:57 PM1/28/09
to hardhats
Proposal for VistA Standard Base (VSB) Specification/Guidelines Draft 9:

Purpose: To enable and facilitate the creation of standard VistA
management methods and tools.

Attempted completion date: 01/30/2009, aka pull the bandaid off as
quickly as possible.

Changes: Added ./etc and ./etc/vista.conf, removed
/version_patch_info, suggested more mount points for different
physical devices.

Plan is to Vote on about Friday for the following base directory
candidates (more may be added as a result of discussion) and vote on
this whole spec I guess.

/opt for now for discussion purposes:

To be voted on Base Directory <base-dir> for VistA Community Standard
Base Server:
a) /opt/mumps
b) /opt
c) /var/opt
d) /srv
e) /home/<userid>

/opt/lsb-gtm/<version>_<platform> # default for gtm,
owned by bin, all uppercase routines.
/<base-dir>/<branding>vista/<instance>
/<base-dir>/<branding>vista/<instance>/doc # all documentation resides here.
/<base-dir>/<branding>vista/<instance>/g<lobals> # Can be a mount
point to a different physical device.
/<base-dir>/<branding>vista/<instance>/web # Future web items.
/<base-dir>/<branding>vista/<instance>/backup # Can be mount
point. Backups that are not journals.
/<base-dir>/<branding>vista/<instance>/j<ournals> # Can be a mount
point to a different physical device.
/<base-dir>/<branding>vista/<instance>/r<outines> # Usually mumps
routines, see additional heirarchy 13) below
/<base-dir>/<branding>vista/<instance>/etc # Version, release
and other configuration information.
/<base-dir>/<branding>vista/<instance>/etc/vista.conf # contains
version, release and other config information.
/<base-dir>/<branding>vista/<instance>/etc/patch_listing.txt #
Optional listing of patches for this instance.
/<base-dir>/<branding>vista/<instance>/o<bjects> # Object files.
/<base-dir>/<branding>vista/<instance>/images # Can be mount point
for patient photos, scanned documents.
/<base-dir>/<branding>vista/<instance>/env # for gtm/VistA
environment variables.
/<base-dir>/<branding>vista/<instance>/bin # for server controller
type software.
/<base-dir>/<branding>vista/<instance>/bin/run # Bhaskar'sconvention,
run an instance.
/<base-dir>/<branding>vista/<instance>/bin/vistastart # Bhaskar's convention.
/<base-dir>/<branding>vista/<instance>/bin/vistastop # Bhaskar's convention.
/etc/init.d/vista-<instance> # Automatic start stop startup
handling. Bhaskar's convention.
/etc/xinetd.d/vista-<instance> # setup listening port for
client such as CPRS for <instance>.

Where:

<base-dir> -- Preferred base-dir default to be voted on about Friday.
Can be /opt, /var/opt, /opt/mumps as well as

'single-user' mode /home/<userid>, /opt/mumps (see 1 below)
<branding> -- 'world', 'open', 'vx' etc, MUST be preceeded or followed
by 'vista' as in <branding>vista.
<instance> -- can be multiple instances. Parent and child instances
via symlink okay. See 4) below for default names.
g<lobals>, r<outines>, o<bjects>, j<ournals> are defaulted to g, r, o
with full name available only if the vista release

supports it.

1) <base-dir> scenarios:
1.1) /opt - Pros: simple, brief, understandable. Cons: May be less
robust if not split across physical devices, may not

strictly
adhere to Linux Standard Base.
1.2) /var/opt - Pros: Strict adherence to Linux Standard Base and with
splitting across physical devices, possibly more

robust.
Cons: More complexity, more difficult to create management
tools, more difficult to understand.
1.3) /opt/mumps - Pros: All mumps applications in one place. Cons: All
mumps applications in one place.
1.4) /home/<userid> - 'Single-user mode' Pros: Possible security
advantages and some understandability. Cons: Variable

location, less organized.
1.5) /srv - Pros: The new thing. Cons: Doesn't already exist on some
distributions.

2) Good practice for /backup and j<ournals> is that they should be
symlink or a mount point on a different physical media.

Directories that can be mount points are:
a) /<base-dir>/<branding>vista/<instance>/g<lobals>
b) /<base-dir>/<branding>vista/<instance>/backup # Backups that
are not journals.
c) /<base-dir>/<branding>vista/<instance>/j<ournals> # Can be a mount
point to a different physical device.
d) /<base-dir>/<branding>vista/<instance>/images # Can be mount
point for patient photos, scanned documents.

3) Default port for clients such as CPRS listening: 9260 Production,
9261 Training, 9262 Development

4) Defaults names for <instance>: production, training, development,
<customer name>

5) All documentation explicitly converted from Microsoft format cr/lf
to Unix/Linux format before posting to

6) Standard use of tar.gz format for bundling of files and residing on
Sourceforge.

7) Default user id: vista, default group id: vista

8) /var/log for logs

9) /tmp for temp files

10) Use /etc/skel and /etc/profile.d for global environment settings
where appropriate.

11) Use the suffix .sh on scripts that are shell scripts.

12) GT.M journal files are written to the j<ournals> directory.

13) If supported by VistA release, additional r<outines>
subdirectories first proposed by J. Tai with modifications:

The routines directory contains MUMPS routines (.m files). No
routines are stored in the routines directory itself; the

routines are stored in subdirectories that reflect the origin of the routine.

/<base-dir>/<branding>vista/<instance>/r<outines>/development
/<base-dir>/<branding>vista/<instance>/r<outines>/hotfixes
/<base-dir>/<branding>vista/<instance>/r<outines>/customer
/<base-dir>/<branding>vista/<instance>/r<outines>/vendor
/<base-dir>/<branding>vista/<instance>/r<outines>/foia

Where:
* development – code that is under development; this directory
should always be empty in production environments
* hotfixes – code not yet part of any Kernel Installation and
Distribution System (KIDS) build or other distribution
* customer –code that is part of a customer-specific KIDS build
* vendor – code from third-party vendors, e.g., the Victory
Programming Environment
* foia – unmodified code from the U.S. Department of Veterans Affairs (VA)
* version_patch_info -- Information on versions and patches on the system.

I, Valdes

unread,
Jan 28, 2009, 4:35:20 PM1/28/09
to Hardhats

JohnLeo Zimmer

unread,
Jan 28, 2009, 4:37:41 PM1/28/09
to Hard...@googlegroups.com
This is a great discussion, Ignatio.
I vote for continuing the dialog for a couple more weeks.
Consensus on more of this draft is a great goal and we are making progress.

Regards,
grandpaZ

We need to include input form other VistA vendors. And, I would think, from
folks like Jim Self on where M2Web should fit.
We also need coordination with EWD as we expand options for hitting the VistA
server.

ival...@gmail.com

unread,
Jan 28, 2009, 4:59:06 PM1/28/09
to Hardhats
I do not have a couple of more weeks. This process is costing me
greatly, personally and dearly. After there is consensus on this there
is months of work to be done. The politicians are moving, we must move
also. Now.

-- IV

ival...@gmail.com

unread,
Jan 28, 2009, 5:24:02 PM1/28/09
to Hardhats
We can continue work on the web stuff and other stuff in the coming
weeks and are not mutually exclusive. That is for others to do as I
currently do not have the time or bandwidth to work on those. But for
the purposes of some basic management tools I hope we can achieve
consensus this week. I really need basic consensus this week in order
to move forward. -- IV

On Jan 28, 3:37 pm, JohnLeo Zimmer <johnleo...@gmail.com> wrote:

ival...@gmail.com

unread,
Jan 28, 2009, 5:48:54 PM1/28/09
to Hardhats
I'm thinking the env file should go into /<base-dir>/<branding>vista/
<instance>/etc subdirectory?

-- IV

On Jan 28, 3:21 pm, Ignacio Valdes <ival...@hal-pc.org> wrote:

JohnLeo Zimmer

unread,
Jan 28, 2009, 5:54:53 PM1/28/09
to Hard...@googlegroups.com
I'm sorry, Ignatio,
no disrespect, but I don't know what roadmap we are working toward here.

The work is obviously useful; but Jim Self, just for example, (or Rod
Tweed) may have a different set of criteria for what must be done this
week.

Regards,
jlz

On Wed, Jan 28, 2009 at 5:24 PM, ival...@gmail.com <ival...@gmail.com> wrote:
>... I really need basic consensus this week in order

fred trotter

unread,
Jan 28, 2009, 6:03:49 PM1/28/09
to Hard...@googlegroups.com
His name is Ignacio, (not sure if Ignatio is a term of affection or a typo)

Ignacio is coding important tools that VistA novices like myself have
been clamoring about for years. His work will form the basis of
countless "introductions" to VistA, as a result his decision on the
matter will likely form the basis of a de facto standard.

Ignacio is already asking for a vote on the issues that he needs
decisions on. Asking him to "slow down" while we discuss this is
insulting to him and disrespectful of his very valuable time. We are
looking for "rough" consensus here, and earlier is better than later.

I understand that some of us have valid, differing opinions on this,
and many have already spoken up. Now it is time for some of you
lurkers to actually vote. If you do not, then please recognize that
there will be countless people there who assume that Ignacio's way is
"the way", you will see installations done in the fashion that he is
recommending.

How do you want Ignacio to handle these issues? SNOFHYP

-FT
--
Fred Trotter
http://www.fredtrotter.com

ival...@gmail.com

unread,
Jan 28, 2009, 6:10:10 PM1/28/09
to Hardhats
No disrespect noted nor I hope given. Jim Self has already
participated in the discussion of this 3 times already with valuable
feedback by him given. If he has a proposal for web, please offer it.
There has been over 130 previous comments on this that I've read and
attempted to incorporate to everyone's satisfaction. This is a painful
but very necessary process that I'd rather not prolong as I've noted
earlier, pull the bandaid off as quickly as possible. I'm hoping that
Jim Self will give his okay for the parts that do not affect his
efforts when I call for a vote on this about Friday for RC1. We have
conventions for many things now that didn't exist before with some
issues like gtm re-entrance still outstanding. I'm aiming for good
enough to create tools with by the end of this week, not perfection.
We are nearly there now. Rod Tweed I do not know but please invite him
to the discussion for completion this week. -- IV

On Jan 28, 4:54 pm, JohnLeo Zimmer <johnleo...@gmail.com> wrote:
> I'm sorry, Ignatio,
> no disrespect, but I don't know what roadmap we are working toward here.
>
> The work is obviously useful; but Jim Self, just for example, (or Rod
> Tweed) may have a different set of criteria for what must be done this
> week.
>
> Regards,
> jlz
>

ssw0213

unread,
Jan 28, 2009, 6:18:38 PM1/28/09
to Hardhats
I'm linking to this discussion from vistapedia.net:

http://vistapedia.net/index.php?title=VistA_Standard_Base

Great discussion.

--Steve

Jonathan Tai

unread,
Jan 28, 2009, 6:45:10 PM1/28/09
to Hard...@googlegroups.com
On Wed, 2009-01-28 at 13:21 -0800, Ignacio Valdes wrote:
> Proposal for VistA Standard Base (VSB) Specification/Guidelines Draft 9:

--snip--

> /<base-dir>/<branding>vista/<instance>/env # for gtm/VistA
> environment variables.

Sorry, but I must have missed the e-mail where this was introduced. I
don't believe it was discussed at length.

Is "env" a file or a directory? If it's a file, what's the proposed
format? If it's a directory, what goes in it?

- Jon

signature.asc

K.S. Bhaskar

unread,
Jan 28, 2009, 9:32:38 PM1/28/09
to Hard...@googlegroups.com
It's a file I use when I configure VistA - sourced by run to set
environment variables.

Regards
-- Bhaskar

-------------------------------------------
$ cat env
# env - file to be sourced to create VistA environment
#
# This temporary version of the commands to set up the VistA
# environment assumes that the parent and child use the same
# version of GT.M.

export gtmver=`basename $PWD`
if [[ -d ../parent ]] ; then
pushd ../parent/$gtmver 1>/dev/null
source ./env
popd 1>/dev/null
fi

tmp=`dirname $PWD`
tmp0="$PWD/o($PWD/p $PWD/r $tmp/p $tmp/r)"

# If there is an existing $routines, this environment comes before it
if [[ -n $routines ]] ; then
export routines="$tmp0 $routines"
else
export routines="$tmp0"
fi

# If a mumps.dat exists (vs. mumps.dat.gz) then this a usable environment
if [[ -f $PWD/g/mumps.dat ]] ; then export vista_home=$tmp ; fi

source gtm/gtmprofile
export gtmgbldir=$PWD/g/mumps.gld
export gtmroutines="$routines $gtm_dist"
-------------------------------------------

ival...@gmail.com

unread,
Jan 28, 2009, 10:23:11 PM1/28/09
to Hardhats
Here is an env file which Nancy did:

export vista_home="EHR"
export gtm_vista="/home/vista/EHR"
export gtm_dist="/usr/local/gtm_V53003"
export gtm_log="/usr/local/gtm_V53003/logs"
export gtmgbldir="/home/vista/EHR/g/mumps.gld"
export gtmroutines="/home/vista/EHR/o(/home/vista/EHR/r) /usr/local/
gtm_V53003"
alias GDE="/usr/local/gtm_V53003/mumps -r GDE"
alias rundown='/usr/local/gtm_V53003/mupip rundown -r "*"'
alias GTM="/usr/local/gtm_V53003/mumps -direct"
alias gtm="/usr/local/gtm_V53003/mumps -direct"
alias mupip="/usr/local/gtm_V53003/mupip"
alias gde="/usr/local/gtm_V53003/mumps -r ^GDE"
alias GDE="/usr/local/gtm_V53003/mumps -r ^GDE"
alias lke="/usr/local/gtm_V53003/lke"
alias dse="/usr/local/gtm_V53003/dse"
alias LKE="/usr/local/gtm_V53003/lke"
alias DSE="/usr/local/gtm_V53003/dse"
>  signature.asc
> < 1KViewDownload

JohnLeo Zimmer

unread,
Jan 29, 2009, 8:06:50 AM1/29/09
to Hard...@googlegroups.com
I drafted this last night, but I felt like I should sleep on it.
That done. It's a new day, and I have not changed much.
From here down this was my position as of 21:00 last night
...and today. JohnLeo:
------------------------------------------------------------------------

fred trotter wrote:
> His name is Ignacio, (not sure if Ignatio is a term of affection or a typo)

I suppose I could conjure up either, but it's just a brain fart.

> Ignacio is coding important tools that VistA novices like myself have
> been clamoring about for years. His work will form the basis of
> countless "introductions" to VistA, as a result his decision on the
> matter will likely form the basis of a de facto standard.

Maybe. We can hope.

> Ignacio is already asking for a vote on the issues that he needs
> decisions on. Asking him to "slow down" while we discuss this is
> insulting to him and disrespectful of his very valuable time.

It is no such thing. It is just a different perspective.
Ignacio must budget his time, you and I our own, which has <some> value, too.

> I understand that some of us have valid, differing opinions on this,
> and many have already spoken up. Now it is time for some of you
> lurkers to actually vote.
> If you do not, then please recognize that

> there will be countless people...

World domination hangs in the balance?

> ...who assume that Ignacio's way is


> "the way", you will see installations done in the fashion that he is
> recommending.

Sure 'nuf. My own approach is influenced by the current discussion
here and will
be further altered by Ignacio's work. But we are talking about de facto,
not ANSI or MDC.

> How do you want Ignacio to handle these issues? SNOFHYP

Ok, Fred.
My position is simple. I am not as technically competent as many on
the list. My
suggestions therefore tend to nibble at the edges and have limited
effect that I
do not insist are needed to determine our future. (e.g. I like /routine,
/object, /global better than /routines, /objects, etc. ) big hairy deal.

But this thing needs to meet Bhaskar's standards and Mehling's and Anthracite's
so I'll give my proxy to Bhaskar.

rtweed

unread,
Jan 29, 2009, 8:20:54 AM1/29/09
to Hardhats
As far as EWD and our m_apache gateway are concerned, they are
designed to be entirely flexible and re-configurable. Whatever
configuration you choose for your particular GT.M / VistA
installation, both can be easily configured to cope.

Rob

fred trotter

unread,
Jan 29, 2009, 9:01:02 AM1/29/09
to Hard...@googlegroups.com
> > His work will form the basis of
> > countless "introductions" to VistA, as a result his decision on the
> > matter will likely form the basis of a de facto standard.
>
> Maybe. We can hope.

I think you are under-estimating the value of what Ignacio will be
releasing soon. The culmination of his "Intracare" posts will
essentially be the missing manual to VistA allowing hundreds of mere
Linux people, (like myself) to actually deploy working instances.

He has to configure his recommendation somehow. That configuration,
right or wrong, will become many people initial experience with VistA.

>
> > Ignacio is already asking for a vote on the issues that he needs
> > decisions on. Asking him to "slow down" while we discuss this is
> > insulting to him and disrespectful of his very valuable time.
>
> It is no such thing. It is just a different perspective.
> Ignacio must budget his time, you and I our own, which has <some> value, too.

It is not the same. I am payed to think about these issues. Ignacio is
not merely -not- paid, but donating his time on this. He is an MD, and
because of our crazy reimbursement system, his time is basically his
livelihood. Every hour he spends doing this instead of seeing patients
is a substantial loss of income. I am not trying to imply that your
time is valueless. Just that his time needs to be respected.

>
> > I understand that some of us have valid, differing opinions on this,
> > and many have already spoken up. Now it is time for some of you
> > lurkers to actually vote.
> > If you do not, then please recognize that
> > there will be countless people...
>

ssw0213

unread,
Jan 29, 2009, 9:11:21 AM1/29/09
to Hardhats
Definition:
SNOFHYP Speak Now or Forever Hold Your Peace (chat/email)

FWIW (For What It's Worth) I vote with Ignacio, and I even think I
mostly understand his proposal.

At this point I have VistA and GT.M on my old, donated server:

vista@steveserver:~/EHR$ ls
env2 r
g Routines-WVEHR-VOE1.0-Release6-08-GTM-Linux.zip
mumps.dat WVEHR-gui
mumps.gld WVEHR-gui.log
o WVEHR-VOE1.0-GTM-Routines.tgz
p
vista@steveserver:~/EHR$ ls /opt
gtm gtm_V53003

But I don't have CPRS connected quite yet. I'm good enough to help
myself (very slowly and painfully), but I don't feel good enough to
help others, so I often don't post when perhaps I should.

Historically speaking, I watched a 2001 video of Linus Torvalds in
which he basically ridiculed the LSB because in an open community, he
wanted to see people evolve answers and then document them in
hindsight, not design and plan software first. I like Torvalds; we
both started out writing machine code for the 6502 chip from Apple II+
days, but he was wrong. I suspect the success of Ubuntu and others is
partly due to the work done on the Linux Standard Base. Oldtimers
could just tell newbies to RTFS (Read The Standard!), thus saving
everybody time and frustration.

My take on Bhaskar vs Ignacio is that I deeply admire both. But
Bhaskar is paid by the banking community, which is not a bad thing at
all, but they may not be the best model at this time for VistA. I
speak from real frustration. I'm still a bum, and I'd much rather
work. In the last 19 months I've tried really hard to get a job
working on VistA, and failed painfully and repeatedly. I can't help
but hope that if we could get more new users to take on VistA, I could
find a job. Otherwise I may have to go back to practicing medicine
("Cough, bend over")

You go, Ignacio!

--Steve
Message has been deleted

Jonathan Tai

unread,
Jan 29, 2009, 9:31:30 AM1/29/09
to Hard...@googlegroups.com
On Thu, 2009-01-29 at 06:01 -0800, fred trotter wrote:
> > > His work will form the basis of
> > > countless "introductions" to VistA, as a result his decision on the
> > > matter will likely form the basis of a de facto standard.
> >
> > Maybe. We can hope.
>
> I think you are under-estimating the value of what Ignacio will be
> releasing soon. The culmination of his "Intracare" posts will
> essentially be the missing manual to VistA allowing hundreds of mere
> Linux people, (like myself) to actually deploy working instances.
>
> He has to configure his recommendation somehow. That configuration,
> right or wrong, will become many people initial experience with VistA.

This is where I think people get hung up on this... I perfectly respect
the need to have guidance and consensus from the community on "how
should I set this up if I'm plan to stamp out a bunch of these." I'm
struggling with the same exact problem now with OpenVista on GT.M, and
this tremendous response from people with live implementation experience
on GT.M has been very helpful.

But the idea of a VSB implies that no matter who you are, you must set
things up like the VSB dictates. And that's I think what scares people.
The document could be both useful and yet non-intimidating if we
approached it like "this is what WorldVista recommends" with no "/opt
or /srv or /var or /var/opt" language in it, but instead recommend one
thing and handle the deviations with language like "others commonly
deviate from the recommendation by doing this". We could then revise
the document as problems are found so that our "best practice" will
continue to evolve. But at least this way, no one will be "standards
in-compliant" come Monday morning, and there will be wiggle room for
people to try new things and suggest revisions to the best practice.

- Jon

signature.asc

K.S. Bhaskar

unread,
Jan 29, 2009, 10:17:55 AM1/29/09
to Hard...@googlegroups.com
On 01/29/2009 09:11 AM, ssw0213 wrote:

Definition:
SNOFHYP Speak Now or Forever Hold Your Peace (chat/email)

FWIW (For What It's Worth) I vote with Ignacio, and I even think I
mostly understand his proposal.

[KSB] The wtf program is often helpful at translating acronyms:

$ wtf fwiw
FWIW: for what it's worth
$ wtf snofhyp
Gee...  I don't know what snofhyp means...
$
<...snip...>


My take on Bhaskar vs Ignacio is that I deeply admire both. But
Bhaskar is paid by the banking community, which is not a bad thing at
all, but they may not be the best model at this time for VistA. I

[KSB] My recommendations are based on what is best practice for GT.M.  Our own banking software does not necessarily follow my recommendations.  FWIW, I don't compromise on what I think is right.  I may compromise by going along with what a group I belong to decides to do, but I never compromise on what I think is right.  A compromise is like walking down the middle of the road, in the words of one of my favorite members of Congress.

Regards
-- Bhaskar
_____________

The information contained in this message is proprietary and/or confidential. If you are not the
intended recipient, please: (i) delete the message and all copies; (ii) do not disclose,
distribute or use the message in any manner; and (iii) notify the sender immediately. In addition,
please be aware that any message addressed to our domain is subject to archiving and review by
persons other than the intended recipient. Thank you.
_____________

K.S. Bhaskar

unread,
Jan 29, 2009, 10:32:07 AM1/29/09
to Hardhats
On Jan 29, 9:01 am, fred trotter <fred.trot...@gmail.com> wrote:
> >  > His work will form the basis of
> >  > countless "introductions" to VistA, as a result his decision on the
> >  > matter will likely form the basis of a de facto standard.
>
> > Maybe. We can hope.
>
> I think you are under-estimating the value of what Ignacio will be
> releasing soon. The culmination of his "Intracare" posts will
> essentially be the missing manual to VistA allowing hundreds of mere
> Linux people, (like myself) to actually deploy working instances.
>
> He has to configure his recommendation somehow. That configuration,
> right or wrong, will become many people initial experience with VistA.

[KSB] Considering that I have been configuring and distributing VistA
configurations for years (a few thousand downloads to date), the least
Ignacio could have done is learned from my mistakes instead of re-
inventing the wheel!

But in any case, Ignacio should feel free to create a package any way
he wants. I will take it apart and repackage the way that I think is
right, and I will distribute that. So people will be able to benefit
from his configuration, but it will be packaged in a way that gives
users more advantages. People can make their own choices. Open
source has its benefits! 8-)

Regards
-- Bhaskar

ival...@gmail.com

unread,
Jan 29, 2009, 10:32:54 AM1/29/09
to Hardhats
Bhaskar, Burning question: does your VGFSL proposal have a
significantly (or any) smaller memory footprint for concurrent users
in a 1-3 instance setting such as a single user, clinic or production
hospital? -- IV

r...@rcresearch.us

unread,
Jan 29, 2009, 10:41:26 AM1/29/09
to Hard...@googlegroups.com
Bhaskar;

no one questions your experience, but can you characterize why you make
the decisions you have? You have massive experience in the Linux and
GTM arena, and you have a wealth of experience to draw on, but can you
explain why you made the decisions you have made? We are looking for
the enlightenment of experience, not just an answer dropped as whole
cloth. I know this is a tall order, but it is an important exercise to
gain understanding rather than blind acceptance.

Thank you for your efforts and we do value your experience; Chris

> On 01/29/2009 09:11 AM, ssw0213 wrote: [Hardhats] Re:
> VistA Standard Base (VSB) Specification/Guidelines -- Draft 9
>
> Definition:
> SNOFHYP Speak Now or Forever Hold Your Peace (chat/email)
>
> FWIW (For What It's Worth) I vote with Ignacio, and I even think I
> mostly understand his proposal.
> [KSB] The wtf program is often helpful at translating acronyms:
>
> $ wtf fwiw
> FWIW: for what it's worth
> $ wtf snofhyp
> Gee... I don't know what snofhyp means...
> $
>
>
>

K.S. Bhaskar

unread,
Jan 29, 2009, 10:52:08 AM1/29/09
to Hard...@googlegroups.com
On 01/29/2009 10:32 AM, ival...@gmail.com wrote:
>
> Bhaskar, Burning question: does your VGFSL proposal have a
> significantly (or any) smaller memory footprint for concurrent users
> in a 1-3 instance setting such as a single user, clinic or production
> hospital? -- IV

[KSB] Yes, it would a smaller footprint in the 2-3 instance setting (it
can't have a smaller footprint in the 1 instance setting).
"Significantly" is a subjective term.

It would have a smaller backup footprint as well.

Regards
-- Bhaskar

P.S. The best way to get VistA out to the thousands of non-IT savvy
small practices out there is to deploy VistA as an appliance, with
secondary instances in a data center. I can envision the server in the
data center easily having hundreds, if not thousands of VistA instances.
Significance takes on a whole new meaning when looking at high levels
of scalability.

_____________

K.S. Bhaskar

unread,
Jan 29, 2009, 10:55:36 AM1/29/09
to Hard...@googlegroups.com
Chris --

I have explained my directory layouts many, many times over the years.
I will do so again in a best practices document where I will combine
directory layouts with things like upgrade procedures, but not in a post
here, and certainly not with what is to me an artificial time horizon
that popped up out of nowhere.

Regards
-- Bhaskar

ival...@gmail.com

unread,
Jan 29, 2009, 11:02:21 AM1/29/09
to Hardhats
Approximately how much smaller memory footprint for 2-3 instances? --
IV

On Jan 29, 9:52 am, "K.S. Bhaskar" <ks.bhas...@fnis.com> wrote:

K.S. Bhaskar

unread,
Jan 29, 2009, 11:22:26 AM1/29/09
to Hardhats
Between 400 & 500MB per instance (after the first, of course).

-- Bhaskar

I, Valdes

unread,
Jan 29, 2009, 11:53:35 AM1/29/09
to Hardhats
Yeah but you are getting better press now :-) -- IV

ssw0213

unread,
Jan 29, 2009, 11:58:33 AM1/29/09
to Hardhats
Definition:
Proposed VGFSL = Proposed VistA/GT.M File System Layout
here: http://docs.google.com/Doc?id=dd5f3337_232jhhvdvdj

Skip the following to save time:
--------------------------------------------------------
steve@steve-work:~$ wtf VGFSL
The program 'wtf' is currently not installed. You can install it by
typing:
sudo apt-get install bsdgames
bash: wtf: command not found
steve@steve-work:~$ sudo apt-get install bsdgames
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer
required:
linux-headers-2.6.27-7 linux-headers-2.6.27-7-generic
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
bsdgames
0 upgraded, 1 newly installed, 0 to remove and 43 not upgraded.
Need to get 1057kB of archives.
After this operation, 2748kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com intrepid/universe bsdgames 2.17-15
[1057kB]
Fetched 1057kB in 46s (22.7kB/
s)
Selecting previously deselected package bsdgames.
(Reading database ... 152816 files and directories currently
installed.)
Unpacking bsdgames (from .../bsdgames_2.17-15_amd64.deb) ...
Processing triggers for man-db ...
Setting up bsdgames (2.17-15) ...

steve@steve-work:~$ wtf VGFSL
Gee... I don't know what VGFSL means...
-----------------------------------------------------------------------
I'm guessing here. It's probably not:

(VGFsl) the secreted ligand domain of VGF (Vaccinia virus growth
factor)
http://www.ncbi.nlm.nih.gov/pubmed/12515166?dopt=Abstract

Could it be VistA and GT.M File Structure on Linux?

No, the secret is to be found in the title of Bhaskar's proposal.

I don't want to be too picky/silly here. Still, acronyms can be real
impediments to clear and direct communication.

--Steve

I, Valdes

unread,
Jan 29, 2009, 12:02:22 PM1/29/09
to Hardhats
So a 2GB machine should run rather well with little or no virtual
memory swapping for 3 concurrent non-re-entrant instances and 3
concurrent yes re-entrant instances per your spec would take about 500
Mb and run very comfortably on a 1Gb machine with little to no virtual
memory use? Next up would be how many concurrent logged in users such
machines can handle.

-- IV

K.S. Bhaskar

unread,
Jan 29, 2009, 12:17:04 PM1/29/09
to Hard...@googlegroups.com
Ignacio --

I mean between 400 to 500MB saved (shared) per instance. You still need
a database and journal files for each instance. You are going to have
to benchmark it yourself. I think I should stop answering these posts
because I am dying a death of a thousand cuts from answering all these
posts.

I will try to update my directory layout proposal with notes for shared
libraries and start adding sections on best practices.

Regards
-- Bhaskar

On 01/29/2009 12:02 PM, I, Valdes wrote:
>
> So a 2GB machine should run rather well with little or no virtual
> memory swapping for 3 concurrent non-re-entrant instances and 3
> concurrent yes re-entrant instances per your spec would take about 500
> Mb and run very comfortably on a 1Gb machine with little to no virtual
> memory use? Next up would be how many concurrent logged in users such
> machines can handle.
>
> -- IV

_____________

I, Valdes

unread,
Jan 29, 2009, 12:21:34 PM1/29/09
to Hardhats
I understand and appreciate your help. I hope that we'll have a
resolution for all this tomorrow and we can go about our business. At
the very least you have at least 2 more people that have taken the
time to really understand your proposal friend. -- IV

Jim Self

unread,
Jan 29, 2009, 4:32:53 PM1/29/09
to Hard...@googlegroups.com
I have not been able to follow this discussion closely for lack of time.

A "web" sub-directory under vista might be useful for M2Web or EWD etc. In the earliest days of VistA on GT.M we put M2Web files in "w", but in the interim it has seemed cleaner to ignore that and to install M2Web in a separate location.

M2Web includes two files that must be made accessible to Apache to enable access to VistA with appropriate permissions. It also includes non-MUMPS files (icons, static javascript, css, html, etc) that should be available to Apache.

For simple deployment without consideration for ongoing development such as in a demo appliance, M2Web globals and routines could be loaded into the same place as those for VistA. This would simplify gtm environment variables etc. and remove the need to modify them for M2Web in that kind of context.

It may be that M2Web and EWD could run from a common gateway or otherwise work together.
Jim.
-- 

---------------------------------------
Jim Self
Systems Architect, Lead Developer
VMTH Information Technology Services, UC Davis
(http://www.vmth.ucdavis.edu/us/jaself)
---------------------------------------
M2Web Demonstration with VistA
(http://vista.vmth.ucdavis.edu/)
---------------------------------------

Jim Self

unread,
Jan 29, 2009, 9:12:17 PM1/29/09
to Hard...@googlegroups.com
Bhaskar's recommendations have always been exceptionally solid and forward thinking in my view. The little bits of best practice from the banking industry that I have gleaned from past discussions with him, suggest to me that they are far ahead of the medical community in areas of systems management and in recognition of the critical importance of IT to overall institutional viability.

Without them and Bhaskar's contribution specifically there would most likely be no WorldVistA and no viable open source VistA platform in existence at this time - essentially nothing of VistA outside the VA.


K.S. Bhaskar wrote:
On 01/29/2009 09:11 AM, ssw0213 wrote:

Definition:
SNOFHYP Speak Now or Forever Hold Your Peace (chat/email)

FWIW (For What It's Worth) I vote with Ignacio, and I even think I
mostly understand his proposal.

[KSB] The wtf program is often helpful at translating acronyms:

$ wtf fwiw
FWIW: for what it's worth
$ wtf snofhyp
Gee...  I don't know what snofhyp means...
$
<...snip...>

My take on Bhaskar vs Ignacio is that I deeply admire both. But
Bhaskar is paid by the banking community, which is not a bad thing at
all, but they may not be the best model at this time for VistA. I

[KSB] My recommendations are based on what is best practice for GT.M.  Our own banking software does not necessarily follow my recommendations.  FWIW, I don't compromise on what I think is right.  I may compromise by going along with what a group I belong to decides to do, but I never compromise on what I think is right.  A compromise is like walking down the middle of the road, in the words of one of my favorite members of Congress.

Regards
-- Bhaskar


fred trotter

unread,
Jan 30, 2009, 10:23:03 AM1/30/09
to Hard...@googlegroups.com
I want to be clear that no one is ignoring Bhaskar! Far from it. I
have had at least two conversations with Ignacio where we struggle to
understand Bhaskars points. (Mostly Ignacio does the understanding and
I try and ask intelligent questions and sympathize)

There is no "Bhaskar vs. Ignacio" at all, just "Ignacios timing" and
"Bhaskars timing", I have been trying to ensure that both schedules
can be accommodated.

Before Bhaskar ran out of steam for this, he gave a pretty substantial
amount of material to work with, and that material is still being
integrated by Ignacio.

We have also put forward a plan to allow Bhaskar, and others, to
continue to contribute meaningful modifications moving forward. We
just feel under the gun on this, and I think Bhaskar is right, just
because we are under the gun, does not mean that he should be. So we
are trying to find ways to allow us to meet deadlines, while ensuring
that we do not lose valuable insights permanently.

No disrespect intended at all. We are keenly aware of how critical GTM
and Bhaskar are to this community!

-FT

On Thu, Jan 29, 2009 at 8:12 PM, Jim Self <jas...@dcn.davis.ca.us> wrote:
> Bhaskar's recommendations have always been exceptionally solid and forward
> thinking in my view. The little bits of best practice from the banking
> industry that I have gleaned from past discussions with him, suggest to me
> that they are far ahead of the medical community in areas of systems
> management and in recognition of the critical importance of IT to overall
> institutional viability.
>
> Without them and Bhaskar's contribution specifically there would most likely
> be no WorldVistA and no viable open source VistA platform in existence at
> this time - essentially nothing of VistA outside the VA.
>
> K.S. Bhaskar wrote:
>

Reply all
Reply to author
Forward
0 new messages