[ 
https://issues.apache.org/jira/browse/DERBY-3731?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12679584#action_12679584
 ] 

Kristian Waagan commented on DERBY-3731:
----------------------------------------

Thanks for looking at the patch, Kim.

As far as I know, several JVMs use the "sun.arch.data.model", but I also think 
it is an undocumented feature of the Sun JVM. That's why it is optional, and 
Derby has other mechanisms to determine the "bitness". The nice thing about the 
property is that it gives a definite answer if it is present (although it can 
be "unknown" I think). The logic for "os.arch" depends on knowing the 
architecture, and if an entry for a specific architecture hasn't been added, we 
can't conclude on the bitness. In these cases, the original heuristic will be 
used, which isn't working in all cases (i.e. Derby may use the wrong bitness, 
which affects size calculations).

I know at least some versions of the IBM JVM use "sun.arch.data.model". The IBM 
JVMs also have their own version of this property: com.ibm.vm.bitmode

> Improve calculation of refSize in ClassSize.java 
> -------------------------------------------------
>
>                 Key: DERBY-3731
>                 URL: https://issues.apache.org/jira/browse/DERBY-3731
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.5.0.0
>            Reporter: Kathey Marsden
>            Assignee: Kristian Waagan
>            Priority: Minor
>             Fix For: 10.4.2.1, 10.5.0.0
>
>         Attachments: derby-3731-1a-refsize_from_properties.diff, 
> derby-3731-1b-refsize_from_properties.diff, 
> derby-3731-1b-refsize_from_properties.stat, 
> derby-3731-1c-refsize_from_properties.diff, 
> derby-3731-2a_update_of_policy_template.diff, derby-3731-3a-doc_changes.diff, 
> DERBY-3731_diff.txt
>
>
> java/engine/org/apache/derby/iapi/services/cache/ClassSize.java has a static 
> code block which calculates the size of a reference for the architecture.  
> This code could be improved by adding garbage collection before measuring 
> memory, to give a consistent  reading.     Also there have been suggestions 
> that we use os.arch or sun.arch.data.model to make the measurement more 
> reliable, especially on 64bit machines.

-- 
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