EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  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  2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: order of DTYP and INP/OUT fields in db-Files and vdct
From: Thomas Birke <[email protected]>
To: [email protected]
Date: Fri, 09 Dec 2005 13:34:31 +0100
Hi,

we just found the "feature" again, that in record-sections of db-files, the DTYP field has to be set before the INP or OUT field (at least for INST_IO), it took us an hour or two to track this down.
I didn't search for that in the AppDevGuide and other docs, since I'm afraid (and definitely hope), I'll find that documented, since I found tha last reference to that "feature" on tech-talk back in '99. It was undocumented back then...


So for about 10 years, we didn't have a problem with that here at BESSY, but the following is, what just happened:

  1. A colleague created a db-file for his application with vdct
         * he set the INP field of his whatever-in-record properly, but
           forgot to set the DTYP at all
  2. He recognizes his mistake and opens his db-file in vdct again and
     sets DTYP as well


So far, everything looks good, BUT:


   * When vdct writes the db-file, it puts the fields in the order in
     that they were set!
     Fields added in another vdct-session or after another "Open" are
     appended to the list of already defined fields!
   * Hence, vdct creates a db-file, that won't work at all (INP is set
     before DTYP is) while looking absolutely correct (to the untrained
     eye).


My first suggestion would be to change dbLoadRecords() (dbPutString(), and/or setLinkType() in dbStaticLib.c) and remove the dependency, but I also see, that it's a lot easier to modify vdct in a way to always write the fields in the order they were defined in the dbd-file (or at least write DTYP before INP or OUT).
The latter would be a workaround, that would keep us safe for the next 10 years...


Regards,
Thomas

--
______________________________________________________________________
/homas.Birke @ bessy.de

BESSY                                           Tel: +49 30 6392 4934
Albert Einstein StraÃe 15                       Fax: +49 30 6392 4859
12489 Berlin
Germany



Replies:
Re: order of DTYP and INP/OUT fields in db-Files and vdct Marty Kraimer
Re: order of DTYP and INP/OUT fields in db-Files and vdct Michael Abbott

Navigate by Date:
Prev: Mantis 232 Jeff Hill
Next: Re: order of DTYP and INP/OUT fields in db-Files and vdct Marty Kraimer
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: ca_host_name function in CA Jeff Hill
Next: Re: order of DTYP and INP/OUT fields in db-Files and vdct Marty Kraimer
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  <20052006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·