okumin commented on code in PR #5562: URL: https://github.com/apache/hive/pull/5562#discussion_r1862206780
########## ql/src/java/org/apache/hadoop/hive/ql/exec/mapjoin/MapJoinMemoryExhaustionHandler.java: ########## @@ -96,7 +96,12 @@ public void checkMemoryStatus(long tableContainerSize, long numRows) + tableContainerSize + "\tMemory usage:\t" + usedMemory + "\tpercentage:\t" + percentageNumberFormat.format(percentage); console.printInfo(msg); if(percentage > maxMemoryUsage) { - throw new MapJoinMemoryExhaustionError(msg); + System.gc(); Review Comment: First, I might not have sufficient knowledge to give this +1. I've never faced this error. Reading the source code, I found that only Hive on MapReduce uses `MemoryExhaustionChecker`. So, not only LLAP but also Tez are not involved with this error. My original concern, i.e., the entire LLAP daemon could get degraded, is gone. But I am still wondering why Hive on MapReduce needs `MemoryExhaustionChecker`. We may remove the class and let MapReduce crush with OOM when creating a giant hash table. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org For additional commands, e-mail: gitbox-h...@hive.apache.org