powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Странное поведение посткреса при запуске скрипта из крона...
13 сообщений из 13, страница 1 из 1
Странное поведение посткреса при запуске скрипта из крона...
    #39554483
Добрый день.

Запускаю кроном скрипт sh

Код: sql
1.
2.
3.
psql -U postgres -d db1 -h $PGHOST -t -c "SELECT clock_timestamp();" > $LOG 2>&1
psql -U postgres -d db1 -h $PGHOST -t -f "/home/1.sql" >> $LOG 2>&1
psql -U postgres -d db1 -h $PGHOST -t -c "SELECT clock_timestamp();" >> $LOG 2>&1




Подключаюсь к постгресу через полтора часа.
Сессии нет.
В логе только сообщение до "--конец результат работы скрипта"

В логе потгресса видно что запрос отработал за 77 минут.

Но в логе sh-ника так и не появились сообщения что что скрипт отработал, пока он не отвалился по таймауту через два часа ровно.

Я думал что он так должен работать:

1) запись времени в лог
2) выполнение 1.sql
3) запись времени в лог


Но что-то идет не так и даже когда скрипт из пункта 2 отрабатывает (видно как длинный запрос в логе постгресса) не переходит на пункт 3.






В итоге примерно такой лог:


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
2017-11-16 13:21:02.77+03

--начало результат работы скрипта
CREATE TABLE
TRUNCATE TABLE
--конец результат работы скрипта

psql:51: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
psql:51: connection to server was lost



2017-11-16 15:21:16.082+03




Помогите пожалуйста разобраться почему при завершении скрипта в пункте 2 не переходит на пункт 3.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554559
Ы2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизни, а причем здесь база? У вас команда в скритпе завершается с ошибкой, поэтому дальнейшие команды не выполняются. Так и должно быть.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554567
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизни,

сессия cron не устанавливает никаких переменных окружения
если нужна установка, пишите в скрипте установку всех нужных переменных
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554574
Ы2Вторая линия жизни, а причем здесь база? У вас команда в скритпе завершается с ошибкой, поэтому дальнейшие команды не выполняются. Так и должно быть.

так нет же ошибок.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554579
Vadim LejninВторая линия жизни,

сессия cron не устанавливает никаких переменных окружения
если нужна установка, пишите в скрипте установку всех нужных переменных

Все переменные установленны в sh, выше.
Установку переменных тут не писал, там ничего интересного.

Скрипт выполняется без ошибок.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554583
а, вот что подумал.

В скрипте есть предупрежение при
CREATE TABLE IF NOT EXISTS


мож с этим как-то связано?
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554595
Ы2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизнитак нет же ошибок
А это что, по-вашему?
Вторая линия жизни
Код: sql
1.
2.
3.
4.
psql:51: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
psql:51: connection to server was lost


У вас проблема с написанием скрипта на sh, а не с базой.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554610
Ы2Вторая линия жизнитак нет же ошибок
А это что, по-вашему?
Вторая линия жизни
Код: sql
1.
2.
3.
4.
psql:51: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
psql:51: connection to server was lost


У вас проблема с написанием скрипта на sh, а не с базой.

Это отваливается по таймауту.
За пол часа до этого скрипт уже отработал.
Но не перешол к пункту 3.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554651
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизни,

а что в 1.sql?
без cron отрабатывает нормально?
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554739
Ы2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вторая линия жизниЭто отваливается по таймауту.
За пол часа до этого скрипт уже отработал.
Но не перешол к пункту 3.
К пункту 3 ваш скрипт, запускаемый кроном, не перешел, потому что пункт 2 завершился с ошибкой: если во время работы psql связь с базой по какой-либо причине рвется, psql завершается с кодом 2, а для продолжения работы (перехода к пункту 3) вызвашего ее скрипта нужен код 0.
Теперь вам нужно выяснить, почему ваш скрипт 1.sql завершился «не до конца», в результате чего psql умерла со скуки. Возможно, не хватает банальной точки с запятой в последней строке.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554954
Ы2Вторая линия жизниЭто отваливается по таймауту.
За пол часа до этого скрипт уже отработал.
Но не перешол к пункту 3.
К пункту 3 ваш скрипт, запускаемый кроном, не перешел, потому что пункт 2 завершился с ошибкой: если во время работы psql связь с базой по какой-либо причине рвется, psql завершается с кодом 2, а для продолжения работы (перехода к пункту 3) вызвашего ее скрипта нужен код 0.
Теперь вам нужно выяснить, почему ваш скрипт 1.sql завершился «не до конца», в результате чего psql умерла со скуки. Возможно, не хватает банальной точки с запятой в последней строке.

точка за запятой там есть в конце.
скипт отрабатывает корректно.

внутри него
Код: sql
1.
2.
3.
CREATE TABLE IF NOT EXISTS...;
TRUNCATE TABLE...;
INSERT INTO ... SELECT    ...;




Непойму почему он весит когда уже отработал и не переходит к следующему пункту пока не отвалиться по таймауту.
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39554995
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше так:

"Странное поведение поЗДкреЗа"
...
Рейтинг: 0 / 0
Странное поведение посткреса при запуске скрипта из крона...
    #39555056
Добавьте в ваш скрипт проверку на статус выполнения команды и анализируете ее


Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
RESULT_TEXT=$($PG_UTILS_PATH/pg_dump -d $DUMP_BASES -f $DUMP_FILE -w -E UTF8 -Fc -Z9 2>&1);	
RESULT_CODE=$?;	

if (test "${RESULT_CODE}" -eq 0)
then
	/*Работаем дальше*/
else		
	/*Все пропало, звони ШЕФУ!*/
fi
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Странное поведение посткреса при запуске скрипта из крона...
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]