EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: living without soft links
From: [email protected] (Tim Mooney)
To: [email protected], [email protected]
Date: Wed, 9 Dec 1998 01:32:47 -0600
re...

> some thoughts (as I feel kind of addressed by this):
> [...]

Thanks for replying.  I didn't want to single you out because I don't
know how the decisions on the new build system were made, and also
because I was hoping for a general idea of how people are using share.

I think I see the picture you're working from: The make rules assume
share will supply templates but not db files to applications, and the
underlying assumption is that db files are fully resolved--i.e., they
contain no $() variables.  But I don't know how widespread that
assumption can be, because most (all?) database configuration tools can
produce db files containing $() variables, and dbLoadRecords supports
them.

In fact, there's really no way to tell whether a file is a template or
a db except to look at its name.  None of our db files are fully
resolved; we expand them at boot time--with dbLoadRecords if only a few
instances are needed, or with dbLoadTemplate if enough instances are
needed to justify the hassle of maintaining a substitution file in the
iocxxx directory.  I've never had the pleasure of expanding a template
at build time, but it must be intense. ;-)

> The make rules will use soft links to the share/db directory on unix
> systems and copy the shared templates to the application under WIN32.

It might be nice to have similar treatment for db files.  I'm trying to
decide whether this would be preferable to modifying (or writing an
alternate version of) dbLoad*.  I think I'll give Marty's suggestion
(add an argument without changing the order of arguments) a try.

> I would prefer if one could give dbLoadRecords() and dbLoadTemplate() a set
> of include paths that are searched when opening a file. (Much like the dbExpand
> tool that already is using include paths.) The routines could check for an
> environment variable that may contain a colon separated list of paths. (To
> be set in the startup file.)

I like the fact that a path would leave dbLoad* calls untouched, but
syntactically it's not much different from cd, and cd causes problems
in st.cmd because its effect is not local.  It's very nice to be able
to load a new version of a particular database into a particular crate,
and later roll back to the standard version, with a local modification
in st.cmd--where the next guy who works on the system will see it
immediately, and where you can leave a comment.  If you have to go into
<top>/db, or <top>/xxxApp/Db, to do/undo this, you're kind of setting a
trap for the next guy to fall into.


Tim Mooney ([email protected]) (630)252-5417
Beamline Controls & Data Acquisition Group
Advanced Photon Source, Argonne National Lab

Replies:
Re: living without soft links Ralph Lange

Navigate by Date:
Prev: Re: living without soft links Marty Kraimer
Next: ca_put_callback problem (dbPutNotify bug) Marty Kraimer
Index: 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: living without soft links Marty Kraimer
Next: Re: living without soft links Ralph Lange
Index: 1994  1995  1996  1997  <19981999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·