[ 
https://issues.apache.org/jira/browse/HADOOP-5188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12714651#action_12714651
 ] 

Konstantin Shvachko commented on HADOOP-5188:
---------------------------------------------

I looked at the code. It still has a lot of unnecessary changes (like those in 
Storage), unused methods, like EditLogBackupOutputStream.switchEditStreams() or 
getLastInputStreamInstance(). Did you rename LoggingDevice to LogDevice (then 
the comments should be renamed too)?
But my main concern is that LogDevice (or LoggingDevice) is not the right 
abstraction.
And it seems to me that all necessary abstraction are already there you just 
need to use them.
As I said before Edits Streams should be responsible for keeping information 
about logging methods. And this is completely orthogonal to the number of 
BookKeeper clients you need to instantiate.
You still use {{instanceof}} to distinguish between LogDevices. This 
particularly indicate there is something wrong with your abstraction. 
{{instanceof}} can usually be replaced by virtual methods or enums.

> When I say "another patch" I'm talking about a collection of patches

This sounds really scary.

> Modifications to enable multiple types of logging 
> --------------------------------------------------
>
>                 Key: HADOOP-5188
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5188
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: dfs
>    Affects Versions: 0.20.0
>            Reporter: Luca Telloli
>             Fix For: 0.21.0
>
>         Attachments: HADOOP-5188.patch, HADOOP-5188.patch, HADOOP-5188.patch, 
> HADOOP-5188.patch, HADOOP-5188.patch, HADOOP-5188.patch, HADOOP-5188.pdf
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to