Return-Path: X-Original-To: apmail-hbase-dev-archive@www.apache.org Delivered-To: apmail-hbase-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 92C1B18D17 for ; Thu, 29 Oct 2015 17:51:29 +0000 (UTC) Received: (qmail 44338 invoked by uid 500); 29 Oct 2015 17:51:28 -0000 Delivered-To: apmail-hbase-dev-archive@hbase.apache.org Received: (qmail 44253 invoked by uid 500); 29 Oct 2015 17:51:27 -0000 Mailing-List: contact dev-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list dev@hbase.apache.org Received: (qmail 44232 invoked by uid 99); 29 Oct 2015 17:51:27 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 Oct 2015 17:51:27 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id B38B92C1F56 for ; Thu, 29 Oct 2015 17:51:27 +0000 (UTC) Date: Thu, 29 Oct 2015 17:51:27 +0000 (UTC) From: "Anoop Sam John (JIRA)" To: dev@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (HBASE-14721) Memstore add cells - Avoid many garbage creation MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 Anoop Sam John created HBASE-14721: -------------------------------------- Summary: Memstore add cells - Avoid many garbage creation Key: HBASE-14721 URL: https://issues.apache.org/jira/browse/HBASE-14721 Project: HBase Issue Type: Bug Reporter: Anoop Sam John Assignee: Anoop Sam John In HRegion# applyFamilyMapToMemstore() {code} for (int i=0; i < listSize; i++) { Cell cell = cells.get(i); if (cell.getSequenceId() == 0) { CellUtil.setSequenceId(cell, mvccNum); } Pair ret = store.add(cell); size += ret.getFirst(); if(isInReplay) { // set memstore newly added cells with replay mvcc number CellUtil.setSequenceId(ret.getSecond(), mvccNum); } } {code} Previously we used to pass the added Cell reference to some HLog impl classes and later on the seqId used to get assigned. Now it looks totally changed. For normal put cells, the assign happen before adding to store. After addition we can see in replay mode again the mvccNum assign on returned cell.. This is not really needed as the seq of seqId assign and add to memstore is changed now. For the previous way we had to return added Cell also and that is why we were creating Pair object.Now we can avoid this so we can avoid creation of one Pair object and a wrapper Long object for every Cell add.. -- This message was sent by Atlassian JIRA (v6.3.4#6332)