[
https://issues.apache.org/jira/browse/HADOOP-4044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12637756#action_12637756
]
Sanjay Radia commented on HADOOP-4044:
--------------------------------------
Oops a few of my comments got deleted by mistake as I was doing cut/paste.
-------------
>My argument is that we should model normal functionality with normal
>programming: methods, parameters, return values and data structures. Do you
>disagree with this? Or do you think that links are not normal functionality?
>You keep arguing that "exceptions can be used for recoverable conditions".
>Indeed they can. But is a link really best modeled as a "recoverable
>condition"? This sounds to me like a rationalization for using exceptions, not
>a reason to use exceptions over data structures.
The way you have worded your questions makes it very hard for me to convey the
alternative.
So I response in the best way I can (and you will not find the answer
acceptable since I have said some of this before).
I see following a symbolic link as an exceptional condition but not an error.
The NN prefers not to follow the remote symlinks.
It is however a condition that can be recovered by the client side.
Either the use of exceptions or data types and parameters are ways to deal with
this.
I believe the use of exceptions in this situation is acceptable and further the
better of the two alternative.
Further I believe it leaves the methods signatures intact and they continue to
convey the function they previously did by their name and by the types of the
in and out parameters. I like that property of the solution. The alternate
solution forces me to create a whole bunch of new data types or overload
existing one. If exceptions were not available I would use the alternate
solution.
I don't like your use of term "normal control flow".That term was used in one
of your references for an example where and outOfBound exception was used to
get out of a for loop at the array index boundary. Clearly use of exceptions to
exit out of a for loop for out of bounds is blasphemous.
So the issue is that if I am forced to argue using the words normal or not
normal it makes my point of view ldiotic - the use of those words
in that example do not apply in this context.
----------------
> 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.