Hi Dirk, Mark and fellow EPICSers,
Sorry to bother you with this. I tried to chase the source code and search the tech-talk,
but could not find much hints.
We use base 3.14.9, streamdevice 2.4 and asyn 4.10, have been experiencing this stuck
problem for some time. The symptom is that randomly, a mbbi/ai/bi... (input) record would
stop updating and no longer does FLNK, with no error/warning messages printed in the log
file. And dbpr *** 3 would show that:
LCNT=11
SEVR=INVALID
STAT=SCAN
And manually writing to the PROC field also does nothing.
It seems like the record is stuck waiting for a callback from streamdevice (and asyn), and
the EPICS framework just ignores any "PROC" requests.
In the protocol file we do have the timeouts etc:
locktimeout = 5000;
terminator = CR;
replytimeout = 1000;
readtimeout = 1000;
extrainput = Ignore;
While chasing the problem, I noticed that "asynReport 10 ***" would show:
multiDevice:No canBlock:Yes autoConnect:Yes
enabled:Yes connected:Yes numberConnects 1
For some the numberConnects can be 2.
Is this "canBlock:Yes" related to my problem? Should the numberConnects be <=1?
We use one port to talk to one device.
Rebooting the IOC does fix the problems, but then they would come back, randomly.
Please advise. Thank you very much.
Best regards,
Dehong