logoalt Hacker News

gzapp • today at 12:48 AM • 1 reply • view on HN

That part about the threading was a huge source of issues back in the early days. Goroutines could hop threads and it's the threads namespace/cgroup configuration that gets inherited when forking..

One of the gnarliest issues I recall was where network namespaces could occasionally not be cleaned up correctly. So "randomly" (but more likely under certain loads) the networking of a reused thread would get jacked and Docker could no longer pull images.


Replies

dboreham • today at 1:50 AM

Never, ever, ever, write your own userland threading library.

(rule broken by almost every language in common use, unfortunately)

➕ show 2 replies