Wes McKinney created ARROW-494:
----------------------------------

             Summary: [C++] When MemoryMappedFile is destructed, memory is 
unmapped even if buffer referecnes still exist
                 Key: ARROW-494
                 URL: https://issues.apache.org/jira/browse/ARROW-494
             Project: Apache Arrow
          Issue Type: Bug
          Components: C++
            Reporter: Wes McKinney


I'd like to see if there is some way to "protect" the memory map from premature 
destruction. This is a slight artifact of MemoryMappedFile's implementation 
sharing code with normal on-disk files (which read into allocated memory), i.e. 
the `Close` function unmaps the memory and closes the file handle. This would 
amount to creating a Buffer subclass that retains ownership of the file 
descriptor and memory map, so that if any Buffer still references the memory 
map, then `MemoryMappedFile::Close` will not unmap the memory or close the 
file. But then the unmapping / file close would need to happen when the last 
Buffer reference is destroyed. 



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

Reply via email to