Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблемы с запросами-Время ожидания истекло... / 10 сообщений из 10, страница 1 из 1
30.04.2002, 02:47
    #32029236
kosm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Есть таблица из 9 миллионов строк,установлен SQL Server 7,памяти 2 гига.При выполнении простых запросов к ней все нормально,но когда появляется ,хотя бы,group by-выдает ошибку "Время ожидания истекло".
Подскажите пожалуйста в чем может быть проблема(неужели SQL затыкается?)
...
Рейтинг: 0 / 0
30.04.2002, 05:35
    #32029250
GreenSunrise
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Параметр Query Timeout определяет, через какое время запрос отвалится, не закончив выполнения. Если вы уверены, что оптимизировать запрос нельзя, то увеличьте значение этого параметра.

Если вам захочется спросить, а где его увеличивать, то сперва скажите, откуда он выполняется - Query Analyzer, клиент, использующий ADO, Delphi и т.д.
...
Рейтинг: 0 / 0
30.04.2002, 05:47
    #32029253
kosm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Timeout я увеличивал до пяти минут-в результате через минуту он мне выдавал "Время ожидания истекло".
Такая ситуация наблюдалась как через Access,так и в Eterprise Manager в открытой таблице.В Query Analyzer запрос выполнялся без всяких ошибок (вернее я создал stored procedure и выполнял его в Query Analyzer),та же самая процедура в Access давала ошибку.
Вид запроса при этом
select * from table
order by Data
Причем при возврате строк до 1,5 миллиона работает везде-если строк больше,тогда ошибка
...
Рейтинг: 0 / 0
30.04.2002, 07:05
    #32029267
hermit
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Начет технической стороны не подскажу.

Насчет другого спрошу.

Кто читает одновременно эти 1.5 миллиона строк. ?
Кому столько записей в 1 момент времени нужно?

Предположим печать. Если в среднем на печатный лист влазит 63 печатные строчки то тогда отчетик
на 23 809 строничек.

Может подумать над тем нужен ли такой объем данных выбирать одновременно?

У меня в базах нет стольких записей
но я всеравно запрещаю в любых случаях кроме отчетов вывод более 1000 строк.


А вообще техническое решение есть
тут как то в форуме пробегал ответ на этот вопрос
точно не помню , но помоему есть параметр цена запроса
его нужно увеличить. Параметр не помню как точно называется
...
Рейтинг: 0 / 0
30.04.2002, 08:19
    #32029278
kosm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Дело в том,что бывают разные отчеты,необходимые пользователям.Никто их конечно не печатает,но для построения графиков нужны...Также,хотя бы для создания view.
...
Рейтинг: 0 / 0
30.04.2002, 08:57
    #32029285
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
А асинхронное выполнение запроса в клиентском приложении вам не подходит ?
И не установлено ли у вас случайно какое-то ненулевое значение для опции query governor cost limit ?
...
Рейтинг: 0 / 0
30.04.2002, 09:22
    #32029292
kosm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Дело в том,что данная ошибка выдается даже если в базе никого нет,выполняется только group by.
query governor cost limit =0
...
Рейтинг: 0 / 0
30.04.2002, 09:43
    #32029293
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Timeout я увеличивал до пяти минут-в результате через минуту он мне выдавал "Время ожидания истекло".
Такая ситуация наблюдалась как через Access,так и в Eterprise Manager в открытой таблице.В Query Analyzer запрос выполнялся без всяких ошибок

А сколько времени выполнялся запрос в Query Analyzer ?

При первом вызове процедуры из клиентского приложения (вообще первым "в жизни"), время ее выполнение может в разы превосходить время выполнения в Query Analyzer и, что самое интересное, время работы при повторных вызовах этой же процедуры с этими же параметрами. На моей практике рекордом была "вилка" 1ч10мин - 20мин.

Если в QA запрос выполняется а клиентском приложении происходит таймаут, то это "проблема" клиентского приложения, поскольку это его ограничение на время выполнения запроса. Еще раз посоветую использовать асинхроный режим выполнения запросов, чтобы не править каждый раз приложение.
...
Рейтинг: 0 / 0
02.05.2002, 09:32
    #32029383
Fuzzy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Если запрос выполнялся из Access, то в параметрах запроса нужно установить неограниченное время таймаута. А по умолчанию там полминуты, кажется.
...
Рейтинг: 0 / 0
06.05.2002, 03:28
    #32029504
kosm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с запросами-Время ожидания истекло...
Спасибо за советы.
2Fuzzy:Но дело в том,что в Access (Data Link Properties) я ему явно указываю 300 секунд (или 0,я понимаю это бесконечность?).
2Glory:И если можно,просветите меня пожалуйста,как можно сделать запрос такого вида асинхронным.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблемы с запросами-Время ожидания истекло... / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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