|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Есть приложение на с++, коннектится к SQL Server, отправляет запрос, через несколько часов наблюдаю картину: Приложение юзер снял, в таскменеджере его нет, но на сервере продолжает торчать его запрос, причем пишет, что отправило его приложение с этого хоста, какой-то зомби работает. Но там примечательно следующее: WAIT_INFO (61306673ms)PWAIT_RESOURCE_SEMAPHORE_FT_PARA Как такое может быть и что бы это значило? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 11:41 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин Есть приложение на с++, коннектится к SQL Server, отправляет запрос, через несколько часов наблюдаю картину: Приложение юзер снял, в таскменеджере его нет, но на сервере продолжает торчать его запрос, причем пишет, что отправило его приложение с этого хоста, какой-то зомби работает. Но там примечательно следующее: WAIT_INFO (61306673ms)PWAIT_RESOURCE_SEMAPHORE_FT_PARA Как такое может быть и что бы это значило? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 11:45 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин, возможен откат транзакции, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 11:52 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 12:11 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Владислав Колосов Ролг Хупин, возможен откат транзакции, например. там вряд ли откат, показывает работающую процедуру которая набирает данные во временные таблицы и потом из них должна сделать селект. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 12:35 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин Есть приложение на с++, коннектится к SQL Server, отправляет запрос, через несколько часов наблюдаю картину: Приложение юзер снял, в таскменеджере его нет, но на сервере продолжает торчать его запрос, причем пишет, что отправило его приложение с этого хоста, какой-то зомби работает. Но там примечательно следующее: WAIT_INFO (61306673ms)PWAIT_RESOURCE_SEMAPHORE_FT_PARA Как такое может быть и что бы это значило? т.е. если процессу делается килл, то он должен уметь корректно закрывать коннекты? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 12:36 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
и я уже не помнил, спасибо! та же фигня была ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 12:38 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
в тот раз так и не понял причину. Типа само рассосалось или юзера нейтрализовали, х.е.з. С сетью вряд ли проблемы, ведь коннект торчит уже на сервере и ждет (61306673ms)PWAIT_RESOURCE_SEMAPHORE_FT_PARA Но чего и почему - вопрос... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 13:01 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин, авторПриложение юзер снял Понятно, что в этом случае приложение не уведомит сервер о завершении своей работы. Тем не менее, если правильно помню, при снятии задачи приложению система отправляет сообщение о событии, которое можно перехватить и обработать. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 13:03 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин, 1. Сессия в состоянии ожидания ничего выполнять не может. 2. Для проблемной сессии ыполнить Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
И посмотреть на удаленной машине есть ли там такой процесс и чего он делает. Пользователи под термином "снял приложение" могут подразумевать что угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 13:17 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Я думаю, что сеанс закроется при попытке коммуникаций сервера с приложением, когда обнаружится, что IP соединение закрыто. До тех пор запрос будет выполняться. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 13:21 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин Ведущий профессионал пропущено... Если юзер снял приложение , это не значит, что коннект на сервере автоматически закрылся. Приложение должно уметь корректно закрывать соединения и освобождать ресурсы . т.е. если процессу делается килл, то он должен уметь корректно закрывать коннекты? В любом случае, нормальный разработчик постарается принять меры к освобождению ресуров при сбоях. Единственное, что не может предотвратить разработчик, это если вырвать кабель локальной сети из сетевой карты. В этом случае на сервере останется зависшее соединение. Тут уже админ ДБ должен их отлавливать и закрывать периодически. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 13:50 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Единственное, что не может предотвратить разработчик, это если вырвать кабель локальной сети из сетевой карты. В этом случае на сервере останется зависшее соединение. Ну вот, сказки то зачем сказывать? Сначала вырви - потом сказывай. Любое TCP соединение разрывается, если разорвать соединение на физическом уровне сети. Таймаут там... ну десять-двадцать секунд. Более того, все "более-менее правильно написанные" приложения рвут все свои сетевые подключения вместе с уничтожением процесса. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 14:47 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
aleks222 Ведущий профессионал Единственное, что не может предотвратить разработчик, это если вырвать кабель локальной сети из сетевой карты. В этом случае на сервере останется зависшее соединение. Ну вот, сказки то зачем сказывать? Сначала вырви - потом сказывай. Любое TCP соединение разрывается, если разорвать соединение на физическом уровне сети. Таймаут там... ну десять-двадцать секунд. Более того, все "более-менее правильно написанные" приложения рвут все свои сетевые подключения вместе с уничтожением процесса. И, да, вырывал кабель ещё 30 лет назад. Сначала удивлялся, потом разобрался. Чтобы обнаружить разрыв, надо постоянно гонять по соединению пакеты. По умолчанию стандартом TCP это не предусмотрено. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 15:25 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин пропущено... т.е. если процессу делается килл, то он должен уметь корректно закрывать коннекты? В любом случае, нормальный разработчик постарается принять меры к освобождению ресуров при сбоях. Единственное, что не может предотвратить разработчик, это если вырвать кабель локальной сети из сетевой карты. В этом случае на сервере останется зависшее соединение. Тут уже админ ДБ должен их отлавливать и закрывать периодически. Бред какой-то..... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 15:41 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
invm Ролг Хупин, 1. Сессия в состоянии ожидания ничего выполнять не может. 2. Для проблемной сессии ыполнить Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
И посмотреть на удаленной машине есть ли там такой процесс и чего он делает. Пользователи под термином "снял приложение" могут подразумевать что угодно. Вот результат host111 15092 xx.x.x.xxx приложение было снято я проверил - попросил запустить таск менеджер и прислать мне картинку, нет такого приложения, но его запрос на сервере от этого хоста и от имени приложения, его запустившего висел и ждал чего-то. При этом он залип на выполнении процедуры, на добавлении данных во ввременную таблицу внутри и размер темпдб рос постепенно. Понимаю, что чудеса, но все видел сам, до чего мог дотянуться ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 15:45 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин Ведущий профессионал пропущено... В винде не делается сразу килл. Сначала посылается сообщение WM_QUIT в очередь приложения. И только тогда, если оно не отвечает, делается килл. Я ещё в детстве делал так приложения, которые невозможно убить. Они просто перехватывали WM_QUIT, создавали копию процесса, а сами завершались. В любом случае, нормальный разработчик постарается принять меры к освобождению ресуров при сбоях. Единственное, что не может предотвратить разработчик, это если вырвать кабель локальной сети из сетевой карты. В этом случае на сервере останется зависшее соединение. Тут уже админ ДБ должен их отлавливать и закрывать периодически. Бред какой-то..... Есть специальные технические меры, чтобы такого не было. Но, это уже другая история. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:02 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин invm Ролг Хупин, 1. Сессия в состоянии ожидания ничего выполнять не может. 2. Для проблемной сессии ыполнить Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
И посмотреть на удаленной машине есть ли там такой процесс и чего он делает. Пользователи под термином "снял приложение" могут подразумевать что угодно. Вот результат host111 15092 xx.x.x.xxx приложение было снято я проверил - попросил запустить таск менеджер и прислать мне картинку, нет такого приложения, но его запрос на сервере от этого хоста и от имени приложения, его запустившего висел и ждал чего-то. При этом он залип на выполнении процедуры, на добавлении данных во ввременную таблицу внутри и размер темпдб рос постепенно. Понимаю, что чудеса, но все видел сам, до чего мог дотянуться И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:07 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин пропущено... Бред какой-то..... Есть специальные технические меры, чтобы такого не было. Но, это уже другая история. откдуа вы знаете, что "на моем сервере" уже 4 года как реальность? Вы вроде бы и пишете ответы, а, ведь, буду краток: одно словоблудие ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:08 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин Ведущий профессионал пропущено... На Вашем сервере это уже 4 года, как реальность. Убийство юзером приложения не прекращает выполнения запросов на сервере. Я за такое юзеров по рукам бил. Запускают запрос. Им кажется, что долго. Перезапускают приложение. Ещё раз запускают запрос. Потом от остальных сотен юзеров пошли жалобы, что вся система упала. Смотришь, а там 25 одинаковых запросов от этого юзера крутятся и все ресурсы сервера захватили. Есть специальные технические меры, чтобы такого не было. Но, это уже другая история. откдуа вы знаете, что "на моем сервере" уже 4 года как реальность? Вы вроде бы и пишете ответы, а, ведь, буду краток: одно словоблудие ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:14 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин пропущено... откдуа вы знаете, что "на моем сервере" уже 4 года как реальность? Вы вроде бы и пишете ответы, а, ведь, буду краток: одно словоблудие а вы уверены, что там был ТОТ ЖЕ МОЙ Сервер, а? или может просто ситуация похожая? Не чудите Кроме того, по той ссылке дискуссия закончилась ничем, ответа нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:26 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин пропущено... Вот результат host111 15092 xx.x.x.xxx приложение было снято я проверил - попросил запустить таск менеджер и прислать мне картинку, нет такого приложения, но его запрос на сервере от этого хоста и от имени приложения, его запустившего висел и ждал чего-то. При этом он залип на выполнении процедуры, на добавлении данных во ввременную таблицу внутри и размер темпдб рос постепенно. Понимаю, что чудеса, но все видел сам, до чего мог дотянуться И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. Это что за фигня? И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. научите же меня! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 16:33 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ролг Хупин Ведущий профессионал пропущено... Проблема в запросе. Снятие юзером приложения - следствие, что запрос завис, а не причина. И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. Это что за фигня? И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. научите же меня! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 18:01 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал Ролг Хупин пропущено... Это что за фигня? И проблема в кривом приложении, которое не позволяет корректно прервать зависший запрос и его приходится снимать, убивая процесс. научите же меня! спасибо за такое откровение это п-ц ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 18:14 |
|
В каких случаях бывает такая ситуация?
|
|||
---|---|---|---|
#18+
Ведущий профессионал aleks222 пропущено... Ну вот, сказки то зачем сказывать? Сначала вырви - потом сказывай. Любое TCP соединение разрывается, если разорвать соединение на физическом уровне сети. Таймаут там... ну десять-двадцать секунд. Более того, все "более-менее правильно написанные" приложения рвут все свои сетевые подключения вместе с уничтожением процесса. И, да, вырывал кабель ещё 30 лет назад. Сначала удивлялся, потом разобрался. Чтобы обнаружить разрыв, надо постоянно гонять по соединению пакеты. По умолчанию стандартом TCP это не предусмотрено. Не надо фантазировать. Надо учиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2021, 19:30 |
|
|
start [/forum/topic.php?fid=46&fpage=26&tid=1684784]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 150ms |
0 / 0 |