Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Удалённа хп не вылетает по таймауту  [new]
RIBor
Member

Откуда:
Сообщений: 43
Приветствую!
Для одного теста написал хп, которая в цикле просто делает задержки

	declare @s int = 1
	declare @e int = 1000000

	while @s <= @e begin

		waitfor delay '10:00'; 

		set @s += 1

	end 


Удалённо запустил эту хп. Она выполняется уже час двадцать,

процесс подпроцесс db_name cpu_time status waittime
123 0 xdb_Other 0 suspended 4748333

хотя время ожидания удалённого запроса установлено в 50 минут.

remote query timeout (s) 0 2147483647 3000 3000


Почему запрос не отрубается?

Оба сервера

Microsoft SQL Server 2008 (SP3) - 10.0.5500.0 (X64)
Sep 21 2011 22:45:45
Copyright (c) 1988-2008 Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (VM)
28 июн 18, 12:07    [21527954]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36698
А где вы здесь нашли "удаленный запрос"?
28 июн 18, 12:35    [21528049]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
invm
Member

Откуда: Москва
Сообщений: 9128
Remote query timeout относится к манипуляциям с удаленными серверами. Т.е. через Linked server, openrowset и т.п.
Вы свою хп каким образом запустили?
28 июн 18, 12:36    [21528059]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Eleanor
Member

Откуда:
Сообщений: 2643
RIBor,

Попробовала повторить ваш эксперимент, установив таймаут к линкованному серверу в 5 секунд.
Выполняю
EXEC ('EXEC master.dbo.pr1') AT [linkname]
EXEC [linkname].master.dbo.pr1

Оба запроса через 5 секунд падают с ошибкой
OLE DB provider "SQLNCLI10" for linked server "linkname" returned message "Query timeout expired"

Вы делаете так же?
28 июн 18, 12:42    [21528086]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
RIBor
Member

Откуда:
Сообщений: 43
Да всё через линкованные сервера.

На Server1 сделал хп.
С Server2 запустил [Server1].[xdb_Other].dbo.[sp1].

На Server1 имеем такое: запрос висит и не отваливается

процесс db_name cpu_time status waittime physical_io memusage blocked_by open_tran waitresource last_batch hostname nt_username program_name objectid objectname
123 xdb_Other 0 suspended 5468232 0 4 0 0 28.06.2018 10:45 SERVER2 user.1 Microsoft SQL Server 53575229 sp1
28 июн 18, 12:50    [21528115]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36698
А таймаут вы на каком сервере установили?
28 июн 18, 12:53    [21528129]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
RIBor
Member

Откуда:
Сообщений: 43
Ну конечно на SERVER1. Поэтому и пытаюсь понять что за ерунда.
28 июн 18, 12:54    [21528140]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36698
RIBor
Ну конечно на SERVER1. Поэтому и пытаюсь понять что за ерунда.
Таймаут надо настраивать на _вызывающем_ сервере.
28 июн 18, 12:56    [21528148]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
RIBor
Member

Откуда:
Сообщений: 43
Гавриленко Сергей Алексеевич,

простите, что? На вызывающем сервере?
Вы рушите все мои представления о настройках: "The remote query timeout option specifies how long, in seconds, a remote operation can take before SQL Server times out. "
28 июн 18, 13:12    [21528215]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36698
RIBor
Гавриленко Сергей Алексеевич,

простите, что? На вызывающем сервере?
Вы рушите все мои представления о настройках: "The remote query timeout option specifies how long, in seconds, a remote operation can take before SQL Server times out. "
Т.е. когда вы задаете кому-то вопрос и говорите, что "я буду ждать ответ в течение часа", вы думаете, что тот, кому вы задаете вопрос обязан вам гарантированно через чать дать знать, что у него все еще нет ответа? Или таки сами будете следить за часами?

З.Ы. А, да, а если удаленный вопрос не к SQL-серверу, а к, скажем, текстовому файлу?

Сообщение было отредактировано: 28 июн 18, 13:24
28 июн 18, 13:21    [21528255]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
04cf9f9576a6f15
Member [заблокирован]

Откуда:
Сообщений: 2927
RIBor
Гавриленко Сергей Алексеевич,

простите, что? На вызывающем сервере?
Вы рушите все мои представления о настройках: "The remote query timeout option specifies how long, in seconds, a remote operation can take before SQL Server times out. "
Правильно написано. Сервер удалённо вызывает операцию. Если в течение таймаута не получает ответ, то выдаёт сообщение об ошибке. Ему не важна причина. Может, сеть медленная или вообще отвалилась. Именно потому контролирует таймаут вызывающий сервер.

#Хэш=
28 июн 18, 13:22    [21528258]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7407
RIBor,
Вы неверно поняли перевод.
Этот параметр определяет время ожидания вызывающей стороной выполнения удалённого запроса.
28 июн 18, 13:26    [21528278]     Ответить | Цитировать Сообщить модератору
 Re: Удалённа хп не вылетает по таймауту  [new]
msLex
Member

Откуда:
Сообщений: 7736
Владислав Колосов
RIBor,
Вы неверно поняли перевод.
Этот параметр определяет время ожидания вызывающей стороной выполнения удалённого запроса.

Причем в качестве linked server-а может выступать совсем не SQL Server
28 июн 18, 13:29    [21528292]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить