[ 
https://issues.apache.org/jira/browse/HDFS-1245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13552116#comment-13552116
 ] 

Konstantin Shvachko commented on HDFS-1245:
-------------------------------------------

This makes the block id generation pluggable. One can override 
{{FSImage.createBlockIdGenerator()}} to define a new generator. May be not 
exactly as it was originally planned, but pluggable.
                
> Plugable block id generation 
> -----------------------------
>
>                 Key: HDFS-1245
>                 URL: https://issues.apache.org/jira/browse/HDFS-1245
>             Project: Hadoop HDFS
>          Issue Type: New Feature
>          Components: namenode
>    Affects Versions: 0.22.0
>            Reporter: Dmytro Molkov
>            Assignee: Konstantin Shvachko
>         Attachments: blockIdGenerator-branch2.patch, blockIdGenerator.patch
>
>
> The idea is to have a way to easily create block id generation engines that 
> may fit a certain purpose. One of them could be HDFS-898 started by 
> Konstantin, but potentially others.
> We chatted with Dhruba about this for a while and came up with the following 
> approach:
> There should be a BlockIDGenerator interface that has following methods:
> void blockAdded(Block)
> void blockRemoved(Block)
> Block nextBlock()
> First two methods are needed for block generation engines that hold a certain 
> state. During the restart, when namenode reads the fsimage it will notify 
> generator about all the blocks it reads from the image and during runtime 
> namenode will notify the generator about block removals on file deletion.
> The instance of the generator will also have a reference to the block 
> registry, the interface that BlockManager implements. The only method there 
> is __blockExists(Block)__, so that the current random block id generation can 
> be implemented, since it needs to check with the block manager if the id is 
> already present.
> What does the community think about this proposal?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to