[
https://issues.apache.org/jira/browse/HDFS-1076?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12853614#action_12853614
]
Doug Cutting commented on HDFS-1076:
------------------------------------
HDFS-1079 doesn't alter this, because the unwrapped RemoteException on the
client still does not contain the same message string as it did before it was
wrapped on the server. An Avro-serialized exception has the same message
string on client and server, but the wrapping and unwrapping adds the
exception's name to the beginning of its message string, and the CLI tests rely
on that.
Note that only remotely thrown exceptions are prefixed by their name. I
believe this is a bug in the wrapping/unwrapping logic. If someone were to,
e.g., implement a FileStatus cache that sometimes threw FileNotFoundException
locally, it would fail the CLI tests, since the locally thrown version would
not start with "java.io.FileNotFoundException: " while the remotely thrown one
would.
> HFDS CLI error tests fail with Avro RPC
> ---------------------------------------
>
> Key: HDFS-1076
> URL: https://issues.apache.org/jira/browse/HDFS-1076
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: test
> Reporter: Doug Cutting
> Assignee: Doug Cutting
> Fix For: 0.22.0
>
> Attachments: HDFS-1076.patch
>
>
> Some HDFS command-line tests (TestHDFSCLI) fail when using AvroRpcEngine
> because the error string does not match. Calling getMessage() on a remote
> exception thrown by WritableRpcEngine produces a string that contains the
> exception name followed by its getMessage(), while exceptions thrown by
> AvroRpcEngine contain just the getMessage() string of the original exception.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.