Skip to content

Conversation

@omalley
Copy link
Contributor

@omalley omalley commented Oct 4, 2019

The current MemoryManagerImpl assumes that only a single thread is writing ORC files. I've changed the design so that:

  • There is a single MemoryManagerImpl object for all of the threads.
  • The only expensive operations are when new writers are created or closed.
  • There is a new method (checkMemory) that is used to determine if the scale has changed. It uses an atomic long to detect changes without contention.
  • The rows between memory checks is moved into the writer.

@omalley
Copy link
Contributor Author

omalley commented Oct 4, 2019

I simplified the new MemoryManager implementation some more.

Fixes apache#433

Signed-off-by: Owen O'Malley <omalley@apache.org>
omalley added a commit to omalley/orc that referenced this pull request Oct 7, 2019
Fixes apache#433

Signed-off-by: Owen O'Malley <omalley@apache.org>
omalley added a commit to omalley/orc that referenced this pull request Oct 8, 2019
Fixes apache#433

Signed-off-by: Owen O'Malley <omalley@apache.org>
Fixes apache#433

Signed-off-by: Owen O'Malley <omalley@apache.org>
@omalley omalley closed this in d657ed4 Oct 8, 2019
omalley added a commit that referenced this pull request Oct 8, 2019
Fixes #433

Signed-off-by: Owen O'Malley <omalley@apache.org>
omalley added a commit that referenced this pull request Oct 8, 2019
Fixes #433

Signed-off-by: Owen O'Malley <omalley@apache.org>
zratkai pushed a commit to zratkai/orc that referenced this pull request Jun 20, 2024
…yManagerImpl.

Fixes apache#433

Signed-off-by: Owen O'Malley <omalley@apache.org>
(cherry picked from commit d657ed4)
(cherry picked from commit 54900be)
Change-Id: Ie2afc5fab07bf2a4b1d1562a341665bcfc0b5c78
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants