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

Nanda kumar commented on HDFS-12696:
------------------------------------

*Code flow*

{noformat}
DataNode#main
  secureMain
    createDataNode
      instantinateDataNode --> This starts all BPOfferServices in 
blockPoolManager (below flow) -  blockPoolManager.startAll is called
      runDatanodeDaemon
        blockPoolManager.startAll()  --> Calling it again here

    instantinateDataNode
      makeInstance
        DataNode.startDatanode
          blockPoolManager = new BlockPoolManager()
          blockPoolManager.refreshNamenodes
          blockPoolManager.doRefreshNamenodes
          blockPoolManager.createBPOS
            BPOfferService#Constructor
          blockPoolManager.startAll()  --> Calling startAll for the first time

{noformat}

> BlockPoolManager#startAll is called twice during DataNode startup
> -----------------------------------------------------------------
>
>                 Key: HDFS-12696
>                 URL: https://issues.apache.org/jira/browse/HDFS-12696
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>            Reporter: Nanda kumar
>            Assignee: Nanda kumar
>            Priority: Minor
>         Attachments: HDFS-12696.000.patch
>
>
> As part of Datanode startup, {{BlockPoolManager#startAll}} which starts all 
> {{BPServiceActor}} threads is called twice.
> First in {{Datanode}} constructor, {{Datanode#startDataNode}} is called which 
> does {{BlockPoolManager#refreshNamenodes}} inside which we do {{startAll}}
> And as part of {{Datanode#runDatanodeDaemon}} we again call 
> {{BlockPoolManager#startAll}}.
> Since {{BPServiceActor}} checks if {{bpThread}} is already running, before 
> starting them again, the second call is ignored.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to