[ 
https://issues.apache.org/jira/browse/GEODE-982?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Darrel Schneider resolved GEODE-982.
------------------------------------
       Resolution: Fixed
    Fix Version/s: 1.0.0-incubating.M2

> Remove unused MemoryChunk classes and make need for memory address more clear
> -----------------------------------------------------------------------------
>
>                 Key: GEODE-982
>                 URL: https://issues.apache.org/jira/browse/GEODE-982
>             Project: Geode
>          Issue Type: Improvement
>          Components: offheap
>            Reporter: Darrel Schneider
>            Assignee: Darrel Schneider
>             Fix For: 1.0.0-incubating.M2
>
>
> The current implementations of MemoryChunk include unsafe, byte array, and 
> byte buffer. But the product can only use the unsafe implementation. Both the 
> byte array and byte buffer do not provide a memory address that can be used.
> They were created for some early performance experimentation but the off-heap 
> implementation has since moved on and now requires a MemoryChunk that exposes 
> addressable memory.
> The other confusing thing about MemoryChunk it is used for two things:
> 1. a raw slab of memory that just has an address, a size, and can be released.
> 2. a chunk of memory that has an off-heap object header that can be reference 
> counted, and can be used to store a java object.
> The current MemoryChunk interface has too much on it for #1 (slabs) and too 
> little on it for #2 (chunks). I think it would be helpful to split these up 
> into two different interfaces instead of trying to have the common 
> MemoryChunk interface they both share.
> It would also be helpful if all the places that used static method to 
> read/write memory at a given address used an interface dedicated to that.  It 
> could be called AddressableMemoryManager. All the "unsafe" code for the 
> off-heap implementation should be in the AddressableMemoryManager. We could 
> then try alternate implementations of it without needing to change all of our 
> other code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to