OS X Yosemite Server - Вики перестает работать

Последние пару дней я заметил, что Wiki-сервер на OS X Server, похоже, дает сбой.

Когда я захожу на сайт вики, я получаю следующее сообщение:

Caught exception "Connection to DB failed" [CSDatabaseError] executing route /app-context/wiki:
(
    0   CoreFoundation                      0x00007fff8fb4003c __exceptionPreprocess + 172
    1   libobjc.A.dylib                     0x00007fff8f74d76e objc_exception_throw + 43
    2   CSService                           0x00000001045eb5cf -[CSConnectionPool openConnection] + 3357
    3   CSService                           0x00000001045ebfbe -[CSConnectionPool currentConnection] + 98
    4   CSService                           0x000000010466d687 -[CSAuthService unauthenticatedSession] + 82
    5   CSService                           0x000000010466dc56 -[CSAuthService currentOrNewSession] + 151
    6   CSService                           0x000000010465efad +[CSHTTPRouteHelper setCurrentSessionForRequest:] + 267
    7   CSService                           0x00000001046736aa __27-[CSAppContextService init]_block_invoke234 + 107
    8   CSService                           0x000000010465aaf4 __53-[CSRoutingHTTPConnection httpResponseForMethod:URI:]_block_invoke + 92
    9   CSService                           0x000000010465e0ea -[CSHTTPBackgroundResponse bounce:] + 284
    10  Foundation                          0x00007fff94896dc2 __NSThread__main__ + 1345
    11  libsystem_pthread.dylib             0x00007fff8dba9268 _pthread_body + 131
    12  libsystem_pthread.dylib             0x00007fff8dba91e5 _pthread_body + 0
    13  libsystem_pthread.dylib             0x00007fff8dba741d thread_start + 13
)

После перезапуска сервера все возвращается в нормальное состояние.

Мне кажется, что SQL-сервер вышел. Есть ли способ перезапустить его с помощью командной строки? Потому что я не хочу переустанавливать серверное приложение, потому что у меня очень много настроек, и это, честно говоря, не стоит времени, так как я надеюсь, что проблема будет решена с помощью следующих обновлений.

Спасибо

1 ответ

Сервис Wiki в Server.app использует PostgreSQL в качестве базы данных. Это случилось со мной, и я смог это исправить, не перезагружая сервер.

Отключите вики-сервис в Server.app. Убедитесь, что экземпляр postgresql, обслуживающий вики-сервис, на самом деле не работает:

% ps auwwx | grep postgr | grep teamserv
    <should show no processes returned>

Проверьте /Library/Server/Wiki/PostgresSocket для устаревших файлов и удалите их.

I had the following stale file:
  .xpg_ctl.pid -> 80019

Кластер базы данных PostgreSQL находится по адресу

/Library/Server/Wiki/Database.xpg/Cluster.pg

В моем случае файл pg_hba.conf содержал 200 тыс. Строк, по-видимому, какой-то сценарий, который его сгенерировал, вышел из строя. Я удалил все, что ниже линии

local   replication     all                         trust

Затем я включил службу вики, получил доступ к вики, и база данных запустилась успешно.

Другие вопросы по тегам