Descubrí que en OS X Server en Mavericks, los procesos de PostgreSQL están causando retrasos en el apagado. Durante un apagado detallado, obtengo el siguiente resultado (acortado):
com.apple.launchd System: Still alive with 1/7 (normal/anonymous) children.
*.anonymous.pg_receivexlog PID is still valid
*.anonymous.postgres_real PID is still valid
*.anonymous.postgres_real PID is still valid
*.anonymous.Python PID is still valid
*.anonymous.pg_receivexlog PID is still valid
*.anonymous.postgres_real PID is still valid
com.apple.DeviceManagement.postgres PID is still valid
El (*) se reemplaza por una cadena aleatoria, diferente para cada elemento.
No tengo experiencia con PostgreSQL y no uso ninguno de los componentes del servidor OS X relacionados con la base de datos (principalmente Xcode y VPN), por lo que no tengo idea de por dónde empezar.
La com.apple.DeviceManagement.postgres
línea me hace pensar que esto podría estar relacionado con los servicios de Profile Manager. ¿Muestra Profile Manager ejecutándose en Server.app? Si no está utilizando este servicio, deshabilitarlo puede ayudar a detener los retrasos en el apagado.
Alternativamente, si necesita mantener estos servicios en funcionamiento, puede valer la pena mirar algunos archivos de registro en algún lugar (¿o? /var/log/system.log
) /var/log/devicemgr/*
para ver si el servicio del administrador de perfiles (o cualquier otro) se está quejando.
Cualquier número de servicios en OS X Server usa Postgres. En mi servidor, por ejemplo, el Wiki lo usa.
Mientras el servidor aún se está ejecutando, intente ps ax | grep postgres | less
y probablemente verá una serie de procesos, los primeros serán casi con certeza algunos scripts que inician Postgres y estos deberían decirle dónde se encuentran los registros; dirá algo como Es posible que también -c log_directory=/Library/Server/Wiki/Logs
desee mire /Applications/Server.app/Contents/ServerRoot/usr/bin/xpostgres
cuál es el script de Python que debe usarse para iniciar Postgres por los servicios del servidor.
Esto lo iniciará en el camino para descubrir su problema.
jstm88