Return-Path: X-Original-To: apmail-accumulo-notifications-archive@minotaur.apache.org Delivered-To: apmail-accumulo-notifications-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 46DA518C33 for ; Wed, 10 Jun 2015 21:57:01 +0000 (UTC) Received: (qmail 81661 invoked by uid 500); 10 Jun 2015 21:57:01 -0000 Delivered-To: apmail-accumulo-notifications-archive@accumulo.apache.org Received: (qmail 81621 invoked by uid 500); 10 Jun 2015 21:57:01 -0000 Mailing-List: contact notifications-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: jira@apache.org Delivered-To: mailing list notifications@accumulo.apache.org Received: (qmail 81601 invoked by uid 99); 10 Jun 2015 21:57:01 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Jun 2015 21:57:01 +0000 Date: Wed, 10 Jun 2015 21:57:01 +0000 (UTC) From: "Josh Elser (JIRA)" To: notifications@accumulo.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (ACCUMULO-3890) Use of CredentialProvider results in a lot of NN ops MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/ACCUMULO-3890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14581141#comment-14581141 ] Josh Elser commented on ACCUMULO-3890: -------------------------------------- Looked over ACCUMULO-3890.4.patch. Given the assumption that we don't care about creating duplicate instances of a CP, I think the synchronization on getCredentialProviders can be dropped. Like Sean pointed out, it's already not threadsafe. My gut reaction is that this isn't in a "hot" enough code path that it isn't significant enough to microbenchmark differing synchronization patterns. My first reaction was that it might be better to make the cache a ConcurrentHashMap, but I can't really come up with a good reason to do so. If we want to be safe, just synchronize on the HashMap before getting or putting. Again, my guess is that it wouldn't have a big net difference. > Use of CredentialProvider results in a lot of NN ops > ---------------------------------------------------- > > Key: ACCUMULO-3890 > URL: https://issues.apache.org/jira/browse/ACCUMULO-3890 > Project: Accumulo > Issue Type: Bug > Affects Versions: 1.6.1, 1.6.2, 1.7.0 > Reporter: Billie Rinaldi > Assignee: Billie Rinaldi > Fix For: 1.7.1, 1.8.0 > > Attachments: ACCUMULO-3890.1.patch, ACCUMULO-3890.2.patch, ACCUMULO-3890.3.patch, ACCUMULO-3890.4.patch > > > Every time we access a sensitive property or iterate over a configuration when there is a CredentialProvider configured, it results in NN operations (as evidenced by FSNamesystem.audit logs). I think that we could assume the CredentialProvider is static, read its properties once and cache them in memory to avoid these unnecessary reads. -- This message was sent by Atlassian JIRA (v6.3.4#6332)