[Mondrian] Error handling

Julian Hyde jhyde at pentaho.com
Fri Feb 11 13:37:07 EST 2011


> Luc wrote:
>
> http://p4web.eigenbase.org/@md=d&c=6PU@/14106?ac=10
> 
> Change 14106 by lucboudreau at luc-mondrian-3.2 on 2011/02/10 09:35:37
> 
> 	Changes the default value of 
> mondrian.rolap.SegmentCacheFailOnError to 'true'.

Thanks for making this change. With this change, the error-handling behavior
is now consistent with the rest of Mondrian. However, on reflection, I don't
like the fact that one component has a different error-handling policy from
the others.

Can you please remove the mondrian.rolap.SegmentCacheFailOnError property,
and deal with error handling as a separate jira case.

Here's my rationale. It is incredibly important that mondrian's error
handling is simple out-of-the-box and is consistent across all components.
(The aggregate table recognizer is one component that uses its own
error-handling policy, and it causes no end of grief. It when it doesn't
recognize an aggregate table, it writes a huge amount to the log, and
silently ignores the agg table. This causes a lot of questions on this list
and the forum, and general mistrust of aggregate tables.)

The default error handling policy -- that the end user receives a stack
trace -- is not pretty, but it is simple.

That said, there is also a good case for making mondrian's error handling
customizable. We would love to offer management services where an
administrator can see every error received by every client -- and where
those errors are tied back to a specific session and statement. In a
production environment, if there is an error in mondrian's cache, probably
the end user shouldn't receive all of the gory details. That's something we
should do.

Of course we want to improve the experience of the end user, but being
realistic, about 90% of errors happen at design time, due to problems with
the schema or the query. Sending an error stack back to the user (as opposed
to putting it in the log) is the right thing to do at design time.

Julian




More information about the Mondrian mailing list