You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Benoit Sigoure (Commented) (JIRA)" <ji...@apache.org> on 2012/02/18 06:45:59 UTC

[jira] [Commented] (HBASE-5255) Use singletons for OperationStatus to save memory

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

Benoit Sigoure commented on HBASE-5255:
---------------------------------------

A hunk was missed when this patch got merged in the 0.92 branch:

{code}

--- a/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
+++ b/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
@@ -1862,8 +1862,7 @@ public class HRegion implements HeapSize { // , Writable{
           continue;
         }
         addedSize += applyFamilyMapToMemstore(familyMaps[i]);
-        batchOp.retCodeDetails[i] = new OperationStatus(
-            OperationStatusCode.SUCCESS);
+        batchOp.retCodeDetails[i] = OperationStatus.SUCCESS;
       }
 
       // ------------------------------------
{code}

Do you want to file another JIRA about it?
                
> Use singletons for OperationStatus to save memory
> -------------------------------------------------
>
>                 Key: HBASE-5255
>                 URL: https://issues.apache.org/jira/browse/HBASE-5255
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>    Affects Versions: 0.90.5, 0.92.0
>            Reporter: Benoit Sigoure
>            Assignee: Benoit Sigoure
>            Priority: Minor
>              Labels: performance
>             Fix For: 0.94.0, 0.92.1
>
>         Attachments: 5255-92.txt, 5255-v2.txt, HBASE-5255-0.92-Use-singletons-to-remove-unnecessary-memory-allocati.patch, HBASE-5255-trunk-Use-singletons-to-remove-unnecessary-memory-allocati.patch
>
>
> Every single {{Put}} causes the allocation of at least one {{OperationStatus}}, yet {{OperationStatus}} is almost always stateless, so these allocations are unnecessary and could be avoided.  Attached patch adds a few singletons and uses them, with no public API change.  I didn't test the patches, but you get the idea.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira