Наш сборочный бот Mac mini столкнулся с большой проблемой уже через несколько недель: кажется, что usbmuxd откроет множество сокетов и позволит им задержаться.
В какой-то момент в netstat и lsof открыто более 50000 сокетов, и на компьютере невозможно установить другое соединение.
В консоли я вижу много таких сообщений:
30/10/2014 11:22:25,975 com.apple.usbmuxd[81562]: _SendAttachNotification Device xx:xx:xx:xx:xx:xx@fe80::xxxx:xxxx:xxxx:xxxx._apple-mobdev2._tcp.local. has already appeared on interface 4. Suppressing duplicate attach notification.
Каждый раз, когда появляется это сообщение, создаются 2 сокета, которые остаются в состоянии «CLOSE_WAIT»:
$ sudo lsof -i -n -P
usbmuxd 81562 _usbmuxd 1270u IPv4 0x880c67ed43a38017 0t0 TCP 192.168.0.29:55159->192.168.0.247:62078 (CLOSE_WAIT)
usbmuxd 81562 _usbmuxd 1271u IPv6 0x880c67ed3a50a4f7 0t0 TCP [fe80:4::xxxx:xxxx:xxxx:xxxx]:55184->[xxxx:xxxx::xxxx:xxxx:xxxx:4529]:62078 (CLOSE_WAIT)
[... 1000's of lines like this]
Также обратите внимание, что это имеет место только в том случае, если мой iPhone 4S не подключен через провод к Mac. Как только я подключаю устройство, количество задерживающихся розеток перестает увеличиваться.
Перезапуск службы usbmuxd, похоже, сбрасывает все открытые соединения, так что это временное решение (но мы должны делать это каждый час (!)).
У кого-нибудь есть подсказка о том, что происходит?