Skip to content

Commit

Permalink
HIVE-16233 : llap: Query failed with AllocatorOutOfMemoryException (S…
Browse files Browse the repository at this point in the history
…ergey Shelukhin, reviewed by Prasanth Jayachandran and Gopal Vijayaraghavan)
  • Loading branch information
sershe-apache committed Jun 21, 2017
1 parent 4d141c1 commit abc1b20
Show file tree
Hide file tree
Showing 29 changed files with 2,389 additions and 710 deletions.
10 changes: 9 additions & 1 deletion common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
Original file line number Diff line number Diff line change
Expand Up @@ -2963,7 +2963,7 @@ public static enum ConfVars {
"LLAP IO memory usage; 'cache' (the default) uses data and metadata cache with a\n" +
"custom off-heap allocator, 'none' doesn't use either (this mode may result in\n" +
"significant performance degradation)"),
LLAP_ALLOCATOR_MIN_ALLOC("hive.llap.io.allocator.alloc.min", "256Kb", new SizeValidator(),
LLAP_ALLOCATOR_MIN_ALLOC("hive.llap.io.allocator.alloc.min", "16Kb", new SizeValidator(),
"Minimum allocation possible from LLAP buddy allocator. Allocations below that are\n" +
"padded to minimum allocation. For ORC, should generally be the same as the expected\n" +
"compression buffer size, or next lowest power of 2. Must be a power of 2."),
Expand All @@ -2990,6 +2990,14 @@ public static enum ConfVars {
LLAP_ALLOCATOR_MAPPED_PATH("hive.llap.io.allocator.mmap.path", "/tmp",
new WritableDirectoryValidator(),
"The directory location for mapping NVDIMM/NVMe flash storage into the ORC low-level cache."),
LLAP_ALLOCATOR_DISCARD_METHOD("hive.llap.io.allocator.discard.method", "both",
new StringSet("freelist", "brute", "both"),
"Which method to use to force-evict blocks to deal with fragmentation:\n" +
"freelist - use half-size free list (discards less, but also less reliable); brute -\n" +
"brute force, discard whatever we can; both - first try free list, then brute force."),
LLAP_ALLOCATOR_DEFRAG_HEADROOM("hive.llap.io.allocator.defrag.headroom", "1Mb",
"How much of a headroom to leave to allow allocator more flexibility to defragment.\n" +
"The allocator would further cap it to a fraction of total memory."),
LLAP_USE_LRFU("hive.llap.io.use.lrfu", true,
"Whether ORC low-level cache should use LRFU cache policy instead of default (FIFO)."),
LLAP_LRFU_LAMBDA("hive.llap.io.lrfu.lambda", 0.01f,
Expand Down
1,496 changes: 1,242 additions & 254 deletions llap-server/src/java/org/apache/hadoop/hive/llap/cache/BuddyAllocator.java

Large diffs are not rendered by default.

Loading

0 comments on commit abc1b20

Please sign in to comment.