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

Nandakumar commented on HDFS-12178:
-----------------------------------

patch v01 attached.
{{!containersCreated.contains(containerName)}} check is done before 
{{synchronized (containerName.intern())}}, since {{String#intern()}} is a 
costly operation. {{!containersCreated.contains(containerName)}} is again 
checked inside synchronized block so that no two threads try to create same 
container again.

Benchmarking of String#intern() for reference: [Performance penalty of 
String.intern() | https://stackoverflow.com/a/10628759/2170141]

> Ozone: OzoneClient: Handling SCM container creationFlag at client side
> ----------------------------------------------------------------------
>
>                 Key: HDFS-12178
>                 URL: https://issues.apache.org/jira/browse/HDFS-12178
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone
>            Reporter: Nandakumar
>            Assignee: Nandakumar
>         Attachments: HDFS-12178-HDFS-7240.000.patch, 
> HDFS-12178-HDFS-7240.001.patch
>
>
> SCM BlockManager provisions a pool of containers upon block creation request, 
> only one container is returned with creationFlag to the client. The other 
> containers provisioned in the same batch will not have this flag. This jira 
> is to handle that scenario at client side, until  HDFS-11888 is fixed.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to