172 похожих чатов

Всем привет, подскажите плиз, я запустил запрос, он начал выполняться,

по итогу должна появиться результирующая таблица, через какое-то время pgAdmin глюканул(окно с деревом серверов и БД стало пустое), пришлось перезагрузить pgAdmin, таблица так и не появилась, как мне узнать выполняется запрос ещё или нет? Если я правильно понимаю, то он же весь уходит на сервер, и выполняется там вне зависимости от клиента? или запрос прерывается как только сеанс останавливается?

10 ответов

16 просмотров

После разрыва соединения и запросы скорее всего то же умирают

Подозреваю, что зависит от наличия автокоммита

Select * from pg_stat_activity; Это если интересен сам факт выполнения запроса в текущий момент

Александр- Автор вопроса
John Smith
Подозреваю, что зависит от наличия автокоммита

явные коммиты я не ставил, получается автокоммиты работают. Транзакция могла бы прерваться и откатиться в случае какой-то ошибки на одном из этапов запроса, но если этих ошибок нет, а просто прервался сеанс с клиентом, прерывается ли транзакция... но я склоняюсь уже к тому что все таки прерывается и сама транзакция когда коннект с клиентом теряется, спасибо за ответ

Александр- Автор вопроса
Anton Morozov
Select * from pg_stat_activity; Это если интересен...

ага спасибо, это похоже то что нужно, здесь же указаны сами процессы на сервере

Александр
явные коммиты я не ставил, получается автокоммиты ...

При потере подключения незавершенная транзакция откатывается, по другому не может быть, т.к. неизвестно, сколько ещё запросов этой транзакции не успело выполниться до разрыва подключения. Другое дело, что во время выполнения запроса, обмена по сети нет (если запрос не возвращает набор данных), так что до его завершения субд узнает о разрыве только если настроен TCP keep alive.

Александр- Автор вопроса
Radist
При потере подключения незавершенная транзакция от...

Понял, спасибо, пошёл гуглить про tcp keep alive

Radist
При потере подключения незавершенная транзакция от...

На самом деле -- если не reset компьютэра-клиента и не проблемы сети -- то клиент TCP RST пошёлт, конечно жэ и всё закроется.

Ilya Anfimov
На самом деле -- если не reset компьютэра-клиента ...

Бывает, что по пути между клиентом и сервером соединение разрывают без RST

Похожие вопросы

Обсуждают сегодня

Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
10
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Коллеги, добрый вечер. Создаю коллекцию от TFPGMap, ключ - перечисление, значение - целое. Нужно отсортировать коллекцию по значению. Как это можно сделать?
Kirill Filippenok
11
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
Скажи а ты когда этот канал создавал ты уже дельфи не любил, или это со временем пришло?
Роман Лях (rgreat)
18
Всем привет! Использую кастомное модальное диалоговое окошко, все по классике - mrOK, mrCancel как ModalResult. Однако есть нюанс - в главной форме есть универсальный обработч...
Олег Гранишевский
20
Карта сайта