THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Memory consumers can acquire memory in two ways
- Explicitly acquire from MemoryManager, in the form of MemorySegment.
- Reserve from MemoryManager, in which case should return “use up to X bytes”, and implicitly allocate the memory by the consumer itself.
- MemoryManager never pre-allocate any memory pages, so that we keep the managed memory budget available for both allocation from MemoryManager and allocation directly from memory consumers.
- For off-heap memory explicitly acquired from MemoryManager, Flink always allocate with Unsafe.allocateMemory(), which is not limited by the JVM -XX:MaxDirectMemorySize parameter.
- This eliminates the uncertainty about how many off-heap managed memory should be accounted for JVM max direct memory.
- The fallback drawback is that Unsafe is no longer supported in Java 12.
...