[
https://issues.apache.org/jira/browse/CASSANDRA-15225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16897920#comment-16897920
]
Benedict commented on CASSANDRA-15225:
--------------------------------------
{quote}2) Log statement has only one '{}'. I don't think it will print
exception. I prefer caller to handle the logging part.
{quote}
This (the way [~Override] has it) is the correct way to print exceptions;
otherwise only their {{toString()}} method is invoked.
{quote}1) Insteasd of modifying already thrown exception, better to create new
exception and call _newException_.addSuppressed. When the caller calls
_newException_.getSuppressed, accurate list exceptions are returned.
{quote}
I don't think it is correct to have add exceptions with {{addSuppressed}}.
It _is_ the case that often a new exception is created in any place exceptions
are caught, so that the re-throwing method is captured in the trace, however
you would always want a {{cause}} in preference to adding a member of
{{getSuppressed}}.
However, I don't think this anyway always adds value. If I were personally
writing it, I would likely have done it the way [~Override] has done. There's
an alternative, which is to create a new exception whose {{cause}} is the first
caught exception, and to {{addSuppressed}} any remaining exceptions to this new
exception. But I think it's preferable to rethrow the original exception here,
to avoid polluting the printed stack trace, and minimise the risk that
"helpful" tools truncate some of this trace
[~Override]: LGTM, I will merge it alongside your other patch and some others I
will be reviewing hopefully today or tomorrow.
> FileUtils.close() does not handle non-IOException
> -------------------------------------------------
>
> Key: CASSANDRA-15225
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15225
> Project: Cassandra
> Issue Type: Bug
> Components: Local/SSTable
> Reporter: Benedict
> Assignee: Liudmila Kornilova
> Priority: Normal
> Labels: pull-request-available
> Fix For: 3.0.x, 3.11.x, 4.0.x
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> This can lead to {{close}} not being invoked on remaining items
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]