EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: streamdevice + asyn stuck
From: "Mark Rivers" <[email protected]>
To: "Zhang, Dehong" <[email protected]>, <[email protected]>, <[email protected]>
Date: Fri, 8 Jul 2011 22:28:11 -0500
Hi Dehong,
 
We need more information:
 
- What is the .SCAN field of the record: it is periodic, I/O Intr, Passive, etc?
 
- What type of device are you talking to: serial, TCP, etc?
 
canBlock=Yes is normal.  It means that this is a "slow" device, and so it uses asynchronous device support.
 
numberConnects is the number of times the device has been connected to.  It would normally be 1.  If it is 2, that suggests the device has disconnected, and then reconnects.
 
When it happens please send the complete output of "dbpr <record> 10"
 
Also send the complete output of "asynReport 10 <portName>"
 
Mark
 

________________________________

From: Zhang, Dehong [mailto:[email protected]]
Sent: Fri 7/8/2011 7:19 PM
To: Mark Rivers; [email protected]; [email protected]
Subject: streamdevice + asyn stuck



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




Replies:
RE: streamdevice + asyn stuck Zhang, Dehong
References:
streamdevice + asyn stuck Zhang, Dehong

Navigate by Date:
Prev: streamdevice + asyn stuck Zhang, Dehong
Next: RE: streamdevice + asyn stuck Zhang, Dehong
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: streamdevice + asyn stuck Zhang, Dehong
Next: RE: streamdevice + asyn stuck Zhang, Dehong
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·