Таймауты при выполнении больших запросов в БД
От: fess_arh  
Дата: 20.04.07 16:07
Оценка:
Может создавать страницу с мессаджом ким-нить, потом выполнять нужный запрос, и по истечении определенного промежутка времени уже обновить страницу. Ajax
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Таймауты при выполнении больших запросов в БД
От: pr0ff  
Дата: 20.04.07 17:04
Оценка:
Здравствуйте, fess_arh, Вы писали:

_>Может создавать страницу с мессаджом ким-нить, потом выполнять нужный запрос, и по истечении определенного промежутка времени уже обновить страницу. Ajax


Таймауты чего именно?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Таймауты при выполнении больших запросов в БД
От: Боб Морган  
Дата: 20.04.07 17:34
Оценка:

Есть отчеты, которые по времени их генерации процедурами в БД (MS SQL) превышают лимит времени ожидания и страница отваливается с ошибкой что соединение разорвано по этой причине.
процедуры отчета возвращают данные которые я помещаю в датасет и конвертирую в xml
асинхронное выполнение запросов возможно только для DataReader, XmlReader и ExecuteNonQuery но XMLReader не устраивает потому как возвращаемый SQL-сервером xml не такой как мне нужен (не такой какой формирует датасет)

И как бороться с этим непонятно
Увеличивать время ожидания соединени не хочется
Помогите советом плз


Длительные по времени запросы к БД делал через веб-сервис (бэкап, рестор базы данных, например). Одна страница с кнопками, по нажатию отправлялся Аякс-вызов к веб-сервису. Пока он выполнялся на страницу выводилось сообщение о том что что-то делается, аякс-индикатор, кнопки блокируются — вобщем всё чтобы пользователь не паниковал и дождался завершения операции.

Тебе наверно надо будет по вызову веб-сервисом сгенерировать и сохранить отчёт где-то на сервере, и потом уже, по окончанию работы веб-сервиса показывать отчёт пользователю.
Re[2]: Таймауты при выполнении больших запросов в БД
От: Аноним  
Дата: 23.04.07 08:10
Оценка:
Таймоуты connection в codebehind

_>>Может создавать страницу с мессаджом ким-нить, потом выполнять нужный запрос, и по истечении определенного промежутка времени уже обновить страницу. Ajax


P>Таймауты чего именно?
Re[2]: Таймауты при выполнении больших запросов в БД
От: Аноним  
Дата: 23.04.07 08:43
Оценка:
БМ>Длительные по времени запросы к БД делал через веб-сервис (бэкап, рестор базы данных, например). Одна страница с кнопками, по нажатию отправлялся Аякс-вызов к веб-сервису. Пока он выполнялся на страницу выводилось сообщение о том что что-то делается, аякс-индикатор, кнопки блокируются — вобщем всё чтобы пользователь не паниковал и дождался завершения операции.

БМ>Тебе наверно надо будет по вызову веб-сервисом сгенерировать и сохранить отчёт где-то на сервере, и потом уже, по окончанию работы веб-сервиса показывать отчёт пользователю.


а как быкапы и ресторы запускались?
если не через connection — тогда возможно, а так по умолчанию у connection время ожидания первого результата 2мин по-моему
Re[3]: Таймауты при выполнении больших запросов в БД
От: Боб Морган  
Дата: 23.04.07 10:42
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>а как быкапы и ресторы запускались?

А>если не через connection — тогда возможно, а так по умолчанию у connection время ожидания первого результата 2мин по-моему

Запускались по обычному, через SqlConnection + SqlCommand.
CommandTimeout выставлял в 0. Может быть это не очень правильно, но база всё время растёт, спрогнозировать время бэкапа не могу
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.