DDMon: a Monitoring Tool for Distributed Deadlock Detection
summary
DDMon is a drop-in gen_server replacement that spawns a per-gen_server monitor to proxy messages and exchange probe messages with peers; it claims formal correctness (OOPSLA 2025) and reports the exact set of deadlocked processes with no false positives or false negatives. The prototype works on Erlang/Elixir, reproduces deadlocks in a producer/inspector microchip example, incurs about a 3× message count increase but a configurable 5s detection delay nearly eliminates probe traffic, and currently reports processes (not full call payloads).
AI-written summary · about
chapters (8)
- 0:00Distributed deadlocks intro
- 1:50Introducing DDMon
- 3:58How DDMon detects deadlocks
- 5:25Demo: deadlock detection
- 7:56Testing DDMon scenarios
- 9:18Performance overhead & optimizations
- 11:05DDMon summary & limits
- 12:29Q&A on deadlock detection
related talks
13mCorrect Black-Box Monitors for Distributed Deadlock Detection: Formalisation and(…)
30mZenMonitor: Scaling Distributed Monitoring
14mMonitoring the monitor
43mSelf-Aware Applications: Automatic Production Monitoring
16mMicroMon: A Monitoring Framework for Tackling Distributed Heterogeneity
53mIdioms for Building Distributed Fault-tolerant Applications with Elixir
33mDiscovering distributed systems in Elixir
48mDatabase Monitoring Mechanisms: An Inside Look
