[ 
https://issues.apache.org/jira/browse/JCR-2524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12840074#action_12840074
 ] 

Thomas Mueller commented on JCR-2524:
-------------------------------------

> Caching the most recently used DocIds and reuse them might help to reduce the 
> memory usage

+1

> DocIds that could be represented with a short instead of an int

According to my test, this will not reduce memory usage: 
http://h2database.com/p.html#da4c6a321d0dc84a2b7b96cdbf468a47

For the Sun JVM (JDK 1.5, 32 bit), objects with one field of type boolean, 
byte, short, character, integer, and long all need 16 bytes. A small BigInteger 
uses 56 bytes, a small  BigDecimal uses 32 bytes (probably re-uses the same 
BigInteger internally), and a String uses 24 bytes. Object uses 8 bytes.

For JDK 1.6, 32 bit and 64 bit, it's a bit different: 20 bytes for an object, 
24 bytes for boolean - long.

For JDK 1.5, 64 bit, it's again different: 16 bytes for an object, 24 bytes for 
boolean - long.


> Reduce memory usage of DocIds
> -----------------------------
>
>                 Key: JCR-2524
>                 URL: https://issues.apache.org/jira/browse/JCR-2524
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Marcel Reutegger
>            Priority: Minor
>         Attachments: JCR-2524.patch
>
>
> Implementations of DocIds are used to cache parent child relations of nodes 
> in the index. Usually there are a lot of duplicate objects because a DocId 
> instance is used to identify the parent of a node in the index. That is, 
> sibling nodes will all have DocIds with the same value. Currently a new DocId 
> instance is created for each node. Caching the most recently used DocIds and 
> reuse them might help to reduce the memory usage. Furthermore there are 
> DocIds that could be represented with a short instead of an int when possible.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to