Piotr Kliczewski has posted comments on this change.

Change subject: jsonrpc: executor based thread factory
......................................................................


Patch Set 1:

(1 comment)

https://gerrit.ovirt.org/#/c/43759/1/vdsm/rpc/bindingjsonrpc.py
File vdsm/rpc/bindingjsonrpc.py:

Line 64:     def __init__(self, bridge, subs, timeout):
Line 65:         _scheduler.start()
Line 66:         _executor.start()
Line 67: 
Line 68:         self._server = JsonRpcServer(bridge, timeout, _executorFactory)
> It does not make sense to queue requests for ever. We should find a way to 
No there are no stomp specific errors.

We attempted to run threadFactory in following way:

            try:
                self._threadFactory(partial(self._serveRequest, ctx, request))
            except Exception as e:
                self.log.exception("could not allocate request thread")
                ctx.requestDone(
                    JsonRpcResponse(
                        None,
                        JsonRpcInternalError(
                            str(e)
                        ),
                        request.id
                    )
                )

and TooManyTasks will be processed in the same way now.

The engine tries to understand what happened (assuming non-zero code) based on 
error code. There is specific error handling logic which maps error code to 
specific exception (BrokerCommandBase#proceedProxyReturnValue) and handling of 
a specific exception is done of each Command(verb) level.
Line 69:         self._reactor = StompReactor(subs)
Line 70:         self.startReactor()
Line 71: 
Line 72:     def add_socket(self, reactor, client_socket):


-- 
To view, visit https://gerrit.ovirt.org/43759
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I56b307633a8bf7e4aad8f87cc97a4129c9ed0970
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczew...@gmail.com>
Gerrit-Reviewer: Francesco Romani <from...@redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Nir Soffer <nsof...@redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczew...@gmail.com>
Gerrit-Reviewer: Yaniv Bronhaim <ybron...@redhat.com>
Gerrit-Reviewer: Yeela Kaplan <ykap...@redhat.com>
Gerrit-Reviewer: automat...@ovirt.org
Gerrit-HasComments: Yes
_______________________________________________
vdsm-patches mailing list
vdsm-patches@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/vdsm-patches

Reply via email to