Improve place-holder record types

Bug #1801145 reported by Andrew Johnson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EPICS Base
Status tracked in 7.0
3.15
Fix Released
Low
Andrew Johnson
3.16
Fix Released
Undecided
Andrew Johnson
7.0
Fix Released
Low
Andrew Johnson

Bug Description

Heinz Junkes reported this:

make[1]: Entering directory '/home/epics/FHI/IOCVACUUM/IOCVACUUMApp/src/O.linux-x86_64'
Creating dbd file IOCVACUUM.dbd
perl -CSD /home/epics/BASE/epics-base/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I/srv/iocs/sys/vacuum/dbd -I/home/epics/SUPPORT/seq-2.2.6/dbd -I/home/epics/SUPPORT/asyn/dbd -I/home/epics/SUPPORT/calc/dbd -I/home/epics/SUPPORT/busy/dbd -I/home/epics/SUPPORT/autosave/dbd -I/home/epics/SUPPORT/iocStats/dbd -I/home/epics/SUPPORT/stream/dbd -I/home/epics/BASE/epics-base/dbd -o IOCVACUUM.dbd base.dbd drvAsynIPPort.dbd asyn.dbd stream.dbd calc.dbd busySupport.dbd devIocStats.dbd asSupport.dbd

Device using undefined record type 'scalcout', place-holder created
dbdExpand.pl: A different record type named 'scalcout' already exists
Context: recordtype(scalcout) in file '/home/epics/SUPPORT/calc/dbd/sCalcoutRecord.dbd' in file '/home/epics/SUPPORT/calc/dbd/calc.dbd'
  while reading 'calc.dbd' to create ‘IOCVACUUM.dbd'

dbdExpand.pl: Exiting due to errors

Mark Rivers diagnosed this:

I believe the problem is with the order of the dbd files. calc.dbd must come before stream.dbd because stream.dbd tries to use scalcout record.

It should be possible for a place-holder record type to be replaced with the full record type definition in this case, so this kind of mistake would still give the first "place-holder created" warning but add a note as to what the problem was and that it has been handled if/when the full record definition comes along later.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.