[
https://issues.apache.org/jira/browse/HADOOP-4044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12637610#action_12637610
]
Konstantin Shvachko commented on HADOOP-4044:
---------------------------------------------
Dhruba> In current Hadoop RPC, the only way to serialize/deserialize an
exception object is to serialize its message string.
I am not sure my proposal was understood completely.
- I have an exception XMountPointException, which does not encode path (or any
special fields) in its message.
- If I call {{getFileStatus(src)}} and src crosses a mount point the
XMountPointException is thrown by the name-node, which is passed through RPC to
the application level.
- The application catches XMountPointException and calls {{linkSrc =
getSymLink(src)}}, which returns the first link on the path.
- The application then calls {{getFileStatus(linkSrc)}}.
- Encoding linkSrc inside XMountPointException would be an optimization:
unnecessary here because crossing mount point
is not common.
- If an application knows and expects to cross a mount point it cam call
getSymLink() avoiding catching XMountPointException.
Is this the right usage of exceptions?
Doug> we combined the value of many methods into the value of a single method
with a very generic name.
The point of RPC is to make transparent the types passed and returned by a
method.
As said {{Object execute(Object request)}} replaces all PRCs by one generic
call.
It is like sending and receiving blob buffers and casting them into appropriate
structures.
Bad practice in C, unavoidable in Cobol, cannot qualify for a remote procedure
call.
> Create symbolic links in HDFS
> -----------------------------
>
> Key: HADOOP-4044
> URL: https://issues.apache.org/jira/browse/HADOOP-4044
> Project: Hadoop Core
> Issue Type: New Feature
> Components: dfs
> Reporter: dhruba borthakur
> Assignee: dhruba borthakur
> Attachments: symLink1.patch, symLink1.patch, symLink4.patch,
> symLink5.patch, symLink6.patch, symLink8.patch, symLink9.patch
>
>
> HDFS should support symbolic links. A symbolic link is a special type of file
> that contains a reference to another file or directory in the form of an
> absolute or relative path and that affects pathname resolution. Programs
> which read or write to files named by a symbolic link will behave as if
> operating directly on the target file. However, archiving utilities can
> handle symbolic links specially and manipulate them directly.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.