EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  <20022003  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  1998  1999  2000  2001  <20022003  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: Making Records Invisible
From: Andrew Johnson <[email protected]>
To: Andreas Luedeke <[email protected]>
Cc: [email protected], Susanna Jacobson <[email protected]>, EPICS Tech-Talk <[email protected]>
Date: Fri, 06 Sep 2002 12:04:34 -0500
Andreas Luedeke wrote:

You can corrupt the record name in the process database. To "disconnect" the PV "myPV" just generate the script

a=dbNameToAddr("myPV")
**a='@'

and run it on your IOC.

The channel will be invisible for channel access.
If you provide the same channel name now by
another IOC, all applications will use this new channel.

While this might appear to work, I would *strongly* discourage it, as it will at the least cause confusion and could potentially cause damage to your facility. The main problem is that it won't make CA clients or database links that are already connected to the record switch to the new IOC. For long-running CA clients like the Alarm handler that could be disasterous (what are the consequences of an alarm from the new record not being seen for several hours or even days if someone forgets to restart ALH?).


If you change the record's name field like this, you'll almost never be able to connect to it with the new name unless the hash value of the new name is the same as that of the old one (ie you can't use the above to rename records at runtime. It should be possible to at least fix that problem like this:

  ent=dbAllocEntry(pdbbase)
  dbFindRecord(ent, "myPV")
  dbRenameRecord(ent, "deadPV")
  dbFreeEntry(ent)

However even this approach won't reconnect any live CA clients or links that point to the record, and it might wake up some other nasty gremlins that I haven't forseen.

- Andrew
--
"Life is what happens while you're busy making other plans."
-- John Lennon


References:
Making Records Invisible Susanna Jacobson
Re: Making Records Invisible Ralph . Lange
Re: Making Records Invisible Andreas Luedeke

Navigate by Date:
Prev: Re: Making Records Invisible Andreas Luedeke
Next: RE: JCA thread safety Jeff Hill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  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: Making Records Invisible Andreas Luedeke
Next: Re: Making Records Invisible Ned Arnold
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  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 ·