{"action":"opened","issue":{"url":"https://api.github.com/repos/crossbario/crossbar/issues/653","repository_url":"https://api.github.com/repos/crossbario/crossbar","labels_url":"https://api.github.com/repos/crossbario/crossbar/issues/653/labels{/name}","comments_url":"https://api.github.com/repos/crossbario/crossbar/issues/653/comments","events_url":"https://api.github.com/repos/crossbario/crossbar/issues/653/events","html_url":"https://github.com/crossbario/crossbar/issues/653","id":133804547,"number":653,"title":"Dirty shutdown on SIGINT","user":{"login":"Paranaix","id":1858546,"avatar_url":"https://avatars.githubusercontent.com/u/1858546?v=3","gravatar_id":"","url":"https://api.github.com/users/Paranaix","html_url":"https://github.com/Paranaix","followers_url":"https://api.github.com/users/Paranaix/followers","following_url":"https://api.github.com/users/Paranaix/following{/other_user}","gists_url":"https://api.github.com/users/Paranaix/gists{/gist_id}","starred_url":"https://api.github.com/users/Paranaix/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Paranaix/subscriptions","organizations_url":"https://api.github.com/users/Paranaix/orgs","repos_url":"https://api.github.com/users/Paranaix/repos","events_url":"https://api.github.com/users/Paranaix/events{/privacy}","received_events_url":"https://api.github.com/users/Paranaix/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-02-15T20:05:49Z","updated_at":"2016-02-15T20:05:49Z","closed_at":null,"body":"This must have been introduced sometime from https://github.com/crossbario/crossbar/commit/347695ce911ab3a730571aaf33fdd8eddab86edb\r\n\r\n```\r\n^C2016-02-15T20:50:49+0100 [Controller   3115] Received SIGINT, shutting down.\r\n2016-02-15T20:50:49+0100 [Controller   3115] sending TERM to subprocess 3147\r\n2016-02-15T20:50:49+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:49+0100 [Router       3147] Native worker received SIGTERM - shutting down ..\r\n2016-02-15T20:50:49+0100 [Router       3147] Shutdown of worker requested!\r\n2016-02-15T20:50:49+0100 [Router       3147] stopped component: replay.authorization.Authorizer id=7519802948707010\r\n2016-02-15T20:50:49+0100 [Router       3147] component 'authorizer' disconnected\r\n2016-02-15T20:50:49+0100 [Controller   3115] Unable to format event {'log_namespace': 'crossbar.controller.native.NativeWorkerClientProtocol', 'log_level': <LogLevel=critical>, 'log_logger': <Logger 'crossbar.controller.native.NativeWorkerClientProtocol'>, 'log_time': 1455565849.614003, 'log_source': None, 'log_format': 'Traceback (most recent call last):\\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/wamp/websocket.py\", line 90, in onMessage\\n    self._session.onMessage(msg)\\n  File \"/usr/local/lib/python2.7/dist-packages/crossbar-0.13.0-py2.7.egg/crossbar/router/session.py\", line 430, in onMessage\\n    raise ProtocolError(u\"Received {0} message, and session is not yet established\".format(msg.__class__))\\nProtocolError: Received <class \\'autobahn.wamp.message.Publish\\'> message, and session is not yet established\\n'}: tuple index out of range\r\n2016-02-15T20:50:49+0100 [Controller   3115] Unhandled Error\r\nTraceback (most recent call last):\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/python/log.py\", line 101, in callWithLogger\r\n    return callWithContext({\"system\": lp}, func, *args, **kw)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/python/log.py\", line 84, in callWithContext\r\n    return context.call({ILogContext: newCtx}, func, *args, **kw)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/python/context.py\", line 118, in callWithContext\r\n    return self.currentContext().callWithContext(ctx, func, *args, **kw)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/python/context.py\", line 81, in callWithContext\r\n    return func(*args,**kw)\r\n--- <exception caught here> ---\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/internet/posixbase.py\", line 597, in _doReadOrWrite\r\n    why = selectable.doRead()\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/internet/process.py\", line 280, in doRead\r\n    return fdesc.readFromFD(self.fd, self.dataReceived)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/internet/fdesc.py\", line 94, in readFromFD\r\n    callback(output)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/internet/process.py\", line 283, in dataReceived\r\n    self.proc.childDataReceived(self.name, data)\r\n  File \"/usr/local/lib/python2.7/dist-packages/Twisted-15.5.0-py2.7-linux-x86_64.egg/twisted/internet/process.py\", line 937, in childDataReceived\r\n    self.proto.childDataReceived(name, data)\r\n  File \"/usr/local/lib/python2.7/dist-packages/crossbar-0.13.0-py2.7.egg/crossbar/twisted/processutil.py\", line 84, in childDataReceived\r\n    self.protocol.dataReceived(data)\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/twisted/websocket.py\", line 132, in dataReceived\r\n    self._dataReceived(data)\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/websocket/protocol.py\", line 1174, in _dataReceived\r\n    self.consumeData()\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/websocket/protocol.py\", line 1186, in consumeData\r\n    while self.processData() and self.state != WebSocketProtocol.STATE_CLOSED:\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/websocket/protocol.py\", line 1552, in processData\r\n    fr = self.onFrameEnd()\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/websocket/protocol.py\", line 1669, in onFrameEnd\r\n    self._onMessageEnd()\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/twisted/websocket.py\", line 160, in _onMessageEnd\r\n    self.onMessageEnd()\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/websocket/protocol.py\", line 659, in onMessageEnd\r\n    self._onMessage(payload, self.message_is_binary)\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/twisted/websocket.py\", line 163, in _onMessage\r\n    self.onMessage(payload, isBinary)\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/wamp/websocket.py\", line 95, in onMessage\r\n    self._bailout(protocol.WebSocketProtocol.CLOSE_STATUS_CODE_PROTOCOL_ERROR, reason=reason)\r\n  File \"/usr/local/lib/python2.7/dist-packages/autobahn-0.13.0-py2.7.egg/autobahn/wamp/websocket.py\", line 51, in _bailout\r\n    self.failConnection(code, reason)\r\nexceptions.AttributeError: 'NativeWorkerClientProtocol' object has no attribute 'failConnection'\r\n\r\n2016-02-15T20:50:50+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:51+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:52+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:53+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:54+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:55+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:56+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:57+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:58+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:50:59+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:00+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:01+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:02+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:03+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:04+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:05+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:06+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:07+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:08+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:09+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:10+0100 [Controller   3115] waiting for 3147 to exit...\r\n2016-02-15T20:51:10+0100 [Controller   3115] Sending SIGKILL to 3147\r\n```"}}