bioinformatics-ua / dicoogle

Dicoogle - Open Source PACS
http://www.dicoogle.com/
GNU General Public License v3.0
445 stars 132 forks source link

Remove RuntimeException stack trace from query warning log #652

Closed tiberio-baptista closed 1 year ago

tiberio-baptista commented 1 year ago

This PR adjusts the PluginController to change the warning log when getting a RuntimeException from a query plugin (both regular queries or DIM queries).

Instead of writing that the query plugin “failed unexpectedly” and printing the stack trace, the warning now removes the stack trace in favor of indicating the level of the attempted query.

It can be possible that a query plugin can only handle queries of one or few levels. The plugin controller already deals with this situation by returning an empty list instead of propagating the error, and this empty list can be handled by whatever had requested the query task. Because of these facts, printing the stack trace is a bit overkill, and can flood the Dicoogle logs.

Enet4 commented 1 year ago

We may have to put this on hold until we are absolutely sure what behavior we want the core to have. Checking for empty results is not a great way to test for query level support.

Enet4 commented 1 year ago

We have decided not to move forward with this, and instead require implementers of QueryDimInterface to provide implementations more reliably.