[Mondrian] MonitorImpl

Julian Hyde jhyde at pentaho.com
Wed Jan 16 13:46:10 EST 2013


(I took the liberty of replying to the public mondrian dev list.)

I was hoping that MonitorImpl just wouldn't fail. It makes things a lot more complicated if it isn't bullet-proof. I don't know what scenario is causing the MonitorImpl to shutdown (or just crash) but the easiest thing might be to just fix it.

It wouldn't be appropriate to put a ShutdownCommand on the response queue. Requests and responses are apples and oranges; the request queue contains only requests, and the response queue contains only responses. A sub-type of request is Command; a Command generates a response (which the requestor must read from the response queue), whereas regular requests have no response.


On Jan 16, 2013, at 10:27 AM, Curtis Boyden <cboyden at pentaho.com> wrote:

> I have an architectural question regarding the MonitorImpl.
> Does it have a mechanism for alerting the system that it has shutdown?
> It seems like a core component, yet looking at the internal Actor class'
> run() method, it seems like it goes away silently when it shuts down
> abruptly.
> Would it be useful if the 'finally' block generated a ShutdownCommand
> and placed it on the responseQueue?
> (I have no idea qhat the responseQueue does yet).
> I am thinking about this because of the OOM exception that was swallowed
> by the 'catch (Throwable)' block and cause the MonitorImpl thread to die
> in CI.
> Any thoughts or insights?
> Thank you,
> - Curtis

More information about the Mondrian mailing list