Resource temporarily unavailable
Добавлено: 20 май 2013, 10:13
Всем доброго!
Приключилась у нас такая занятная ситуация, хотелось бы выслушать комментарии старших товарищей.
Есть у нас БД к которой подключаются процессы в batch режиме. Случилось так что эта БД была остановлена через proshut -by. Т.к. batch процессы подключающиеся к этой БД были запущенны на другой физической базе а к этой коннектились через connect то нормального отключения процессов не произошло и при следующем старте, БД сообщила что разделяемая память занята другим процессом и не запустилась. Для того что бы запустить БД была пересоздана control area с помощью prostrct builddb после чего БД весело стартанула. Далее с помощью grep <shmID> /proc/*/maps были найдены и завершены процессы использующие изначально не стёртый сегмент памяти, после чего сегмент был удалён с помощью ipcrm. Далее, когда активность на сервере стала подходить к своей норме при подключении каждого следующего пользователя сервер стал сыпать ошибкам:
Причём проблема была только с подключениями того пользователя под которым работали batch процессы.
В итоге сервер был перезагружен и проблема перестала существовать.
Интересно, что явилось причиной проблемы и можно ли было найти выход из неё не перезагружая сервер?
з.ы. В скрипте отображённом на скриншоте происходит подключение к БД, самый обычный mpro <DB> и т.д.
Приключилась у нас такая занятная ситуация, хотелось бы выслушать комментарии старших товарищей.
Есть у нас БД к которой подключаются процессы в batch режиме. Случилось так что эта БД была остановлена через proshut -by. Т.к. batch процессы подключающиеся к этой БД были запущенны на другой физической базе а к этой коннектились через connect то нормального отключения процессов не произошло и при следующем старте, БД сообщила что разделяемая память занята другим процессом и не запустилась. Для того что бы запустить БД была пересоздана control area с помощью prostrct builddb после чего БД весело стартанула. Далее с помощью grep <shmID> /proc/*/maps были найдены и завершены процессы использующие изначально не стёртый сегмент памяти, после чего сегмент был удалён с помощью ipcrm. Далее, когда активность на сервере стала подходить к своей норме при подключении каждого следующего пользователя сервер стал сыпать ошибкам:
Причём проблема была только с подключениями того пользователя под которым работали batch процессы.
В итоге сервер был перезагружен и проблема перестала существовать.
Интересно, что явилось причиной проблемы и можно ли было найти выход из неё не перезагружая сервер?
з.ы. В скрипте отображённом на скриншоте происходит подключение к БД, самый обычный mpro <DB> и т.д.