pserv continually failing: address already in use
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | MAAS |
Critical
|
Unassigned | ||
Bug Description
On a system that I've been upgrading between development systems, pserv.log fills up with these errors, about one round per second:
«
2014-09-26 08:55:40+0700 [-] Unhandled Error
Traceback (most recent call last):
File "/usr/lib/
File "/usr/lib/
File "/usr/lib/
self()
File "/usr/lib/
d = defer.maybeDefe
--- <exception caught here> ---
File "/usr/lib/
result = f(*args, **kw)
File "/usr/lib/
File "/usr/lib/
File "/usr/lib/
File "/usr/lib/
File "/usr/lib/
return self._listenUDP
File "/usr/lib/
File "/usr/lib/
File "/usr/lib/
raise error.CannotLis
2014-09-26 08:55:40+0700 [-] Warning: No permission to delete pid file
2014-09-26 08:55:40+0700 [-] Warning: No permission to delete pid file
2014-09-26 08:55:40+0700 [-] Traceback (most recent call last):
2014-09-26 08:55:40+0700 [-] File "/usr/bin/twistd", line 14, in <module>
2014-09-26 08:55:40+0700 [-] run()
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] app.run(runApp, ServerOptions)
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] runApp(config)
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] _SomeApplicatio
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] self.postApplic
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] self.startAppli
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] app.startApplic
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] service.
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] service.
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] service.
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] service.
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] self._port = self._getPort()
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] return self._listenUDP
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] p.startListening()
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] self._bindSocket()
2014-09-26 08:55:40+0700 [-] File "/usr/lib/
2014-09-26 08:55:40+0700 [-] raise error.CannotLis
2014-09-26 08:55:40+0700 [-] twisted.
»
It does look as if the cluster controller itself is listening on that socket, because the node event log shows endlessly repeated TFTP requests when I attempt to deploy a node. Deployment never times out, I guess because activity keeps occurring.
| Jeroen T. Vermeulen (jtv) wrote : | #1 |
| Jeroen T. Vermeulen (jtv) wrote : | #2 |
The problem seems to be /etc/init/
I thought we'd already landed a packaging change that renamed those files? This was with packaging r312 and trunk r3095.
| Raphaël Badin (rvb) wrote : | #3 |
I'm seeing this bug as well, it seems the upgrade left the old daemon running.
| Jeroen T. Vermeulen (jtv) wrote : | #4 |
I can't find anything in the logs that would indicate any kind of failure of the update logic introduced in packaging r312. And yet, I still had those two Upstart files!
| tags: | added: packaging |
| Graham Binns (gmb) wrote : | #5 |
Andres, I've assigned this to you as it seems like a packaging problem… moreover it may be a *solved* packaging problem, but I don't know for sure.
| Changed in maas: | |
| assignee: | nobody → Andres Rodriguez (andreserl) |
| Andres Rodriguez (andreserl) wrote : Re: [Bug 1374233] [NEW] pserv continually failing: address already in use | #6 |
From what version did you upgrade? Can you paste De upgrade log?
On Oct 1, 2014 8:16 AM, "Launchpad Bug Tracker" <email address hidden>
wrote:
> Graham Binns (gmb) has assigned this bug to you for MAAS:
>
> On a system that I've been upgrading between development systems,
> pserv.log fills up with these errors, about one round per second:
>
> «
> 2014-09-26 08:55:40+0700 [-] Unhandled Error
> Traceback (most recent call last):
> File
> "/usr/lib/
> 282, in startService
> service.
> File
> "/usr/lib/
> 273, in startService
> self._loopFinished = self._loop.
> File
> "/usr/lib/
> start
> self()
> File
> "/usr/lib/
> __call__
> d = defer.maybeDefe
> --- <exception caught here> ---
> File
> "/usr/lib/
> maybeDeferred
> result = f(*args, **kw)
> File
> "/usr/lib/
> line 321, in updateServers
> tftp_service.
> File
> "/usr/lib/
> 186, in setServiceParent
> self.parent.
> File
> "/usr/lib/
> 308, in addService
> service.
> File
> "/usr/lib/
> 105, in privilegedStart
> self._port = self._getPort()
> File
> "/usr/lib/
> line 245, in _getPort
> return self._listenUDP
> File
> "/usr/lib/
> line 251, in _listenUDP
> p.startListening()
> File "/usr/lib/
> line 171, in startListening
> self._bindSocket()
> File "/usr/lib/
> line 191, in _bindSocket
> raise error.CannotLis
> twisted.
> 192.168.1.113:69: [Errno 98] Address already in use.
>
> 2014-09-26 08:55:40+0700 [-] Warning: No permission to delete pid file
> 2014-09-26 08:55:40+0700 [-] Warning: No permission to delete pid file
> 2014-09-26 08:55:40+0700 [-] Traceback (most recent call last):
> 2014-09-26 08:55:40+0700 [-] File "/usr/bin/twistd", line 14, in <module>
> 2014-09-26 08:55:40+0700 [-] run()
> 2014-09-26 08:55:40+0700 [-] File
> "/usr/lib/
> run
> 2014-09-26 08:55:40+0700 [-]...
| Changed in maas: | |
| status: | Triaged → Incomplete |
| Jeroen T. Vermeulen (jtv) wrote : | #7 |
The upgrade was from another dev build, not from a release — looks like r3067 but that's not necessarily exactly trunk. I'm attaching the portion of that day's dpkg.log leading up to the error.
| Julian Edwards (julian-edwards) wrote : | #9 |
I'm moving this out the way since nobody seems to have seen it for a while. Reopen if you do see it again.
| Changed in maas: | |
| milestone: | 1.7.0 → none |
| status: | Triaged → Incomplete |
| Chris Johnston (cjohnston) wrote : | #10 |
We have noticed this going from 1.6.0+bzr2545-
It looks like it's possible that the original maas-pserv process wasn't properly killed, however it lost it's pid, and now there is a second maas-pserv process running which can't get the address.
| Barry Morrison (basketcase) wrote : | #11 |
I experienced this today with 1.7.0+bzr3299-
2015-02-12 14:08:45-0800 [-] Warning: No permission to delete pid file
2015-02-12 14:08:45-0800 [-] Warning: No permission to delete pid file
2015-02-12 14:08:45-0800 [-] Traceback (most recent call last):
2015-02-12 14:08:45-0800 [-] File "/usr/bin/twistd", line 14, in <module>
2015-02-12 14:08:45-0800 [-] run()
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] app.run(runApp, ServerOptions)
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] runApp(config)
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] _SomeApplicatio
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] self.postApplic
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] self.startAppli
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] app.startApplic
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] service.
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] service.
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] service.
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] service.
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] self._port = self._getPort()
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] return self._listenUDP
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] p.startListening()
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] self._bindSocket()
2015-02-12 14:08:45-0800 [-] File "/usr/lib/
2015-02-12 14:08:45-0800 [-] raise error.CannotLis
2015-02-12 14:08:45-080...
| Changed in maas: | |
| assignee: | Andres Rodriguez (andreserl) → nobody |
| Barry Morrison (basketcase) wrote : | #12 |
Still exists in 1.7.1+bzr3341-
2015-03-03 15:57:46-0800 [-] Warning: No permission to delete pid file
2015-03-03 15:57:46-0800 [-] Warning: No permission to delete pid file
2015-03-03 15:57:46-0800 [-] Traceback (most recent call last):
2015-03-03 15:57:46-0800 [-] File "/usr/bin/twistd", line 14, in <module>
2015-03-03 15:57:46-0800 [-] run()
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] app.run(runApp, ServerOptions)
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] runApp(config)
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] _SomeApplicatio
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] self.postApplic
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] self.startAppli
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] app.startApplic
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] service.
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] service.
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] service.
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] service.
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] self._port = self._getPort()
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] return self._listenUDP
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] p.startListening()
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] self._bindSocket()
2015-03-03 15:57:46-0800 [-] File "/usr/lib/
2015-03-03 15:57:46-0800 [-] ra...
| Launchpad Janitor (janitor) wrote : | #13 |
[Expired for MAAS because there has been no activity for 60 days.]
| Changed in maas: | |
| status: | Incomplete → Expired |
I saw this today with 1.7.4+bzr3366-
2015-06-03 04:18:36+0530 [-] Unhandled Error
Traceback (most recent call last):
File "/usr/lib/
service.
File "/usr/lib/
self.
File "/usr/lib/
self()
File "/usr/lib/
d = defer.maybeDefe
--- <exception caught here> ---
File "/usr/lib/
result = f(*args, **kw)
File "/usr/lib/
tftp_
File "/usr/lib/
self.
File "/usr/lib/
service.
File "/usr/lib/
self._port = self._getPort()
File "/usr/lib/
return self._listenUDP
File "/usr/lib/
p.
File "/usr/lib/
self.
File "/usr/lib/
raise error.CannotLis
twisted.
2015-06-03 04:18:37+0530 [-] Warning: No permission to delete pid file
2015-06-03 04:18:37+0530 [-] Traceback (most recent call last):
2015-06-03 04:18:37+0530 [-] File "/usr/bin/twistd", line 14, in <module>
2015-06-03 04:18:37+0530 [-] run()
2015-06-03 04:18:37+0530 [-] File "/usr/lib/
2015-06-03 04:18:37+0530 [-] app.run(runApp, ServerOptions)
2015-06-03 04:18:37+0530 [-] File "/usr/lib/
2015-06-03 04:18:37+0530 [-] runApp(config)
2015-06-03 04:18:37+0530 [-] File "/usr/lib/
2015-06-03 04:18:37+0530 [-] _SomeApplicatio
2015-06-03 04:18:37+0530 [-] File "/usr/lib/
2015-06-03 04:18:37+0530 [-] self.postApplic
2015-06-03 04:18:37+0530 [-] File "/usr/lib/
2015-06-03 04...
| Changed in maas: | |
| status: | Expired → Confirmed |
| Andres Rodriguez (andreserl) wrote : | #15 |
@Samantha,
Can you please test against 1.7.5 ? TRhat being said. Please do:
ps faux | grep pserv and see if there';s a process that was left over. Once you kill that process that should fix the issue.
Did you upgrade from any 1.5 release to 1.7 ?
I upgraded it from 1.7.2 to 1.7.4 last week. It was working fine the past few days.
$ ps faux|grep pserv
srini 13652 0.0 0.0 11740 928 pts/3 S+ 22:20 0:00 \_ grep --color=auto pserv
root 13643 31.0 0.0 98452 27688 ? Rs 22:20 0:00 /usr/bin/python /usr/bin/twistd --nodaemon --uid=maas --gid=maas --pidfile=
$
Will kill it and check and upgrade to 1.7.5.
I couldn't kill it, the new pserv process keeps coming up. I restarted the MAAS server, didn't help. Upgraded it to 1.7.5, still the same Errno 98 every second popping up on /var/log/
| Christian Reis (kiko) wrote : | #18 |
Samantha's problem was that she had the tftpd package installed, which sets up an xinetd entry to launch tftpd; xinetd then binds to udp port 69 and as they say in the movies, "there can be only one".
| Christian Reis (kiko) wrote : | #19 |
Marking Incomplete as again we don't have solid evidence of there being an issue with MAAS, though it's suspected there's an issue upgrading from 1.5/1.6 to 1.7 which we will need to address with the SRU going ahead.
| Changed in maas: | |
| status: | Confirmed → Invalid |
| status: | Invalid → Incomplete |
| Andres Rodriguez (andreserl) wrote : | #20 |
Samantha confirmed that tftpd was installed in the system, which caused this issue. tftpd is a conflicting package with MAAS. This was a manual installation by the administrator!
| Changed in maas: | |
| status: | Incomplete → Invalid |
| status: | Invalid → Incomplete |
| Changed in maas: | |
| status: | Incomplete → Invalid |


I thought “chown maas:maas /run/maas- cluster. pid” might fix it. But the file just keeps getting rewritten, about once a second, always with root:root ownership! And it holds a new process ID every time.