CMD.exe потребляет весь процессор, блокируя другие CMD.exe для выполнения - PullRequest
1 голос
/ 22 ноября 2011

У нас есть несколько пакетных сценариев (.bat) в Windows для выполнения «резервного копирования» и «архивного журнала» для баз данных.Эти сценарии периодически вызываются из Tivoli.

Для каждого исполняемого сценария процесс создает подсессию для загрузки среды DB2cmd, для выполнения команд db2 и выхода.

daily.bat

call db2cmd hourly.cmd

Содержание сценария таково:

db2_job_saveddaily.cmd

db2 -fE:\DB2\scripts\tmp\db2_job_savedbhourly.db2 -zE:\DB2\scripts\tmp\db2_job_savedbhourly.log 
exit

содержимое файла db2 (однако, это не важно, поскольку оно выполняется правильно)

db2_job_saveddaily.db2

archive log for database ICMNLSDB

Мы столкнулись с проблемой этихсценарии, и я думаю, что это связано с exit .При одном выполнении скрипт останавливается и начинает использовать весь процессор (см. Прикрепленное изображение).После этого поведения мы не можем выполнить любую другую команду DB2 из CLP.Мы убиваем все процессы CMD.exe и db2bp.exe, но ошибка сохраняется.В файле db2diag.log ничего нет, и единственное решение - перезагрузить компьютер.Вероятно, процесс CMD.exe теряет связь с db2bp.exe, и выход не может быть выполнен.Я хотел бы понять причину этой проблемы и узнать, как выполнять процессы db2 в Windows.

image

1 Ответ

0 голосов
/ 01 марта 2013

Наш друг @AngocA, кажется, часто проверяет SO, но не проверял этот висячий вопрос, хотя и сделал что-то, чтобы закрыть его.Давайте, по крайней мере, поместим здесь его ответ, чтобы народ знал, что он ЗАКРЫТ пользователем.:) Предоставлено сегодня вечером Point Pimp.: -D

"Проблема была в другом сеансе db2cmd, где был бесконечный цикл. Это создало сценарий, когда новый сеанс db2cmd блокировался, поскольку первый сеанс использовал весь ЦП. - AngocA"

...