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  2011  2012  2013  2014  2015  <20162017  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  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Problem with procServ on RHEL6
From: Mark Rivers <[email protected]>
To: "'Ralph Lange'" <[email protected]>, "[email protected]" <[email protected]>
Date: Thu, 14 Jul 2016 17:48:48 +0000

Hi Ralph,

 

I have run into what seems to me a bug in procServ 2.6.0 when running on RHEL6/Centos6.  The problem occurs when trying to start another procServ process using the same telnet port as an existing procServ process.

 

This is what I observe when running on Fedora 15 (Linux version 2.6.43.8-1) or on Centos7 (Linux version 3.10.0-229)

 

[det@ppu071 linux-x86_64]$ /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

/usr/local/bin/procServ: spawning daemon process: 41899

 

[det@ppu071 linux-x86_64]$ /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

Caught an exception creating the initial control telnet port: Address already in use

/usr/local/bin/procServ: Exiting with error code: 98

 

I think this is the correct behavior. procServ should exit with an error if the telnet port is already in use.  This is a protection against accidentally starting the same procServ process twice.

 

However, on Centos6/RHEL6 (Linux version 2.6.32-431) I observe the following:

 

det@dec1248:~> /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

/usr/local/bin/procServ: spawning daemon process: 60423

 

det@dec1248:~> /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

/usr/local/bin/procServ: spawning daemon process: 60555

 

det@dec1248:~> /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

/usr/local/bin/procServ: spawning daemon process: 60610

 

So procServ happily creates multiple procServ processes listening on the same telnet port.  These are all running:

 

det@dec1248:~> ps ax | grep procServ

60423 ?        Ss     0:00 /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

60555 ?        Ss     0:00 /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

60610 ?        Ss     0:00 /usr/local/bin/procServ -L /home/det/test.log 30000 /bin/bash

 

This seems like a bug to me?  It is definitely inconvenient because if someone accidentally types the command to start a particular procServ without realizing that it is already running it can cause problems.

 

Is there something I can do to work around this issue?

 

Thanks,

Mark

 


Replies:
RE: Problem with procServ on RHEL6 Mark Rivers

Navigate by Date:
Prev: EpicsQT and Archiver Appliance rory.clarke
Next: RE: Problem with procServ on RHEL6 Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: EpicsQT and Archiver Appliance Michael Davidsaver
Next: RE: Problem with procServ on RHEL6 Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 28 Jul 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·