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)