Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
0.9
-
None
Description
It happens deterministically in my machine with the following setup:
TaskManager:
- heap size: 512m
- network buffers: 4096
- slots: 32
Job:
- ConnectedComponents
- 100k vertices
- 1.2m edges
--> this gives around 260 m Flink managed memory, across 32 slots is 8MB per slot, with several mem consumers in the job, makes the iterative hash join out-of-core
java.lang.RuntimeException: Hash Join bug in memory management: Memory buffers leaked. at org.apache.flink.runtime.operators.hash.MutableHashTable.buildTableFromSpilledPartition(MutableHashTable.java:733) at org.apache.flink.runtime.operators.hash.MutableHashTable.prepareNextPartition(MutableHashTable.java:508) at org.apache.flink.runtime.operators.hash.ReOpenableMutableHashTable.prepareNextPartition(ReOpenableMutableHashTable.java:167) at org.apache.flink.runtime.operators.hash.MutableHashTable.nextRecord(MutableHashTable.java:541) at org.apache.flink.runtime.operators.hash.NonReusingBuildSecondHashMatchIterator.callWithNextKey(NonReusingBuildSecondHashMatchIterator.java:102) at org.apache.flink.runtime.operators.AbstractCachedBuildSideMatchDriver.run(AbstractCachedBuildSideMatchDriver.java:155) at org.apache.flink.runtime.operators.RegularPactTask.run(RegularPactTask.java:496) at org.apache.flink.runtime.iterative.task.AbstractIterativePactTask.run(AbstractIterativePactTask.java:139) at org.apache.flink.runtime.iterative.task.IterationIntermediatePactTask.run(IterationIntermediatePactTask.java:92) at org.apache.flink.runtime.operators.RegularPactTask.invoke(RegularPactTask.java:362) at org.apache.flink.runtime.taskmanager.Task.run(Task.java:560) at java.lang.Thread.run(Thread.java:745)