softIocPVA calls iocInit unrequested and then complains

Bug #1904207 reported by Dirk Zimoch
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EPICS Base
Status tracked in 7.0
7.0
Fix Released
Low
mdavidsaver

Bug Description

Since R7.0.4.2, softIocPVA automatically calls iocInit after reading the startup script, even if iocInit had already been called in that script. In that case it complains:
iocBuild: IOC can only be initialized from uninitialized or stopped state

softIoc does not do this only softIocPVA does.

Please revert to the previous behavior which leaves the choice to the user if iocInit should be called or not.

description: updated
description: updated
Revision history for this message
Timo Korhonen (ttkorhonen) wrote :

+1
This would break a lot of our applications and startup scripts.

Revision history for this message
mdavidsaver (mdavidsaver) wrote :

The softIocPVA executable lives in the pva2pva module. I'm moving this issue to

https://github.com/epics-base/pva2pva/issues/38

Changed in epics-base:
assignee: nobody → mdavidsaver (mdavidsaver)
importance: Undecided → Low
Revision history for this message
mdavidsaver (mdavidsaver) wrote :

It turns out that this issue isn't specific to softIocPVA.

The specific warning which Dirk sees is due to a change in call ordering which changes when the 'loadedDb' flag is set.

> loadedDb = true; /* Give it the benefit of the doubt... */

I take this comment to mean "Assume that the script called iocInit".

While I'm not going to act on this now, it occurs to me that the recent addition of getIocState(), and the existing dbStaticLib api, may remove the need for assumptions about whether an IOC has actually been initialized.

Revision history for this message
mdavidsaver (mdavidsaver) wrote :
Revision history for this message
mdavidsaver (mdavidsaver) wrote :

b890d584bce92d8374ca76d09a68c49f9a8fad05 should avoid calling iocInit() unless '-d' was explicitly passed. This should avoid showing Dirk this a warning.

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.