A developer discovered that enabling swap in production caused Go's garbage collector to experience 40ms stop-the-world pauses when GC metadata was evicted to swap, resulting in major page faults during collection cycles. The issue stems from the kernel evicting least-recently-accessed pages to swap under memory pressure, forcing the GC to incur costly disk I/O during critical pause phases.
A Go developer discovered that enabling swap in production caused severe garbage collector stop-the-world pauses of up to 40ms when GC metadata pages were evicted to swap storage, with the pauses caused by page faults during garbage collection cycles reading metadata that had been moved to disk.