DE Mastery GitHub

Java for data engineers · JVM-05

Concurrency and the JVM

From your world. diagnosing a Spark driver OOM from logs, but for a plain JVM heap/GC log

Practice quiz with instant feedback. For a scored run that counts toward your local progress, use uv run de quiz JVM-05.

1In a GC log, which pattern across successive collections shows a memory leak (heading for OutOfMemoryError)?
2A GC line reads 820M->410M(1024M). What do the three numbers mean?
3Why is 'just increase -Xmx' usually the wrong fix for a genuine memory leak?
4Heap-after is flat across GCs, but the process RSS keeps climbing. What is the most likely cause?
5What does an ExecutorService give you over creating raw Threads?
6Why are data races a real concern in Java threads (unlike single-threaded Python with the GIL)?
7What do frequent minor GCs with a flat post-GC floor most likely show?