You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Rakesh Radhakrishnan (Jira)" <ji...@apache.org> on 2020/06/18 09:48:00 UTC

[jira] [Created] (HDDS-3824) ListStatus should make SCM#refreshPipeline outside the BUCKET_LOCK

Rakesh Radhakrishnan created HDDS-3824:
------------------------------------------

             Summary: ListStatus should make SCM#refreshPipeline outside the BUCKET_LOCK 
                 Key: HDDS-3824
                 URL: https://issues.apache.org/jira/browse/HDDS-3824
             Project: Hadoop Distributed Data Store
          Issue Type: Bug
          Components: Ozone Manager
            Reporter: Rakesh Radhakrishnan
            Assignee: Rakesh Radhakrishnan


Refresh pipeline info does a call to SCM and it can be moved outside the {{BUCKET_LOCK}}, this would help to improve the performance of read/write mix workloads.

*KeyManagerImpl.java*
{code:java}
    metadataManager.getLock().acquireReadLock(BUCKET_LOCK, volumeName,
        bucketName);
    try {
.....
.....
        // No need to check if a key is deleted or not here, this is handled
        // when adding entries to cacheKeyMap from DB.
        if (args.getRefreshPipeline()) {
          refreshPipeline(entry.getValue().getKeyInfo());
        }
.....
.....
    } finally {
      metadataManager.getLock().releaseReadLock(BUCKET_LOCK, volumeName,
          bucketName);
    }

{code}
 

Code Reference:  [KeyManagerImpl.java#L2071|https://github.com/apache/hadoop-ozone/blob/master/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/KeyManagerImpl.java#L2071]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org