cyrusimap / cassandane

Other
6 stars 11 forks source link

Cassandane::Daemon kill_processes_on_ports() confused by same port/multiple protocol families #69

Closed elliefm closed 5 years ago

elliefm commented 5 years ago
=====> Daemon[421] ERROR!! killing stray process perl on port 9100
=====> Instance[1258] _stop_pid: sending signal 15 to 12118
=====> Util::Wait[75] Waited 0.010504 sec for unknown condition
=====> Daemon[421] ERROR!! killing stray process perl on port 9100
=====> Instance[1258] _stop_pid: sending signal 15 to 12118
=====> Instance[1259] Can't send signal 15 to pid 12118: No such process

Observe here that it's trying to kill pid 12118 twice, even though the first time succeeded. This is because the process is listening to this port on both inet and inet6, and the algorithm looks up each protocol separately then concatenates the list of found processes.

elliefm commented 5 years ago

Oh, we already have this open (by me, as well) as #59