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

Откуда: Москва
Сообщений: 163
Здравствуйте.
В связи с тем что в проекте массовое физическое удаление занимает много времени и ресурсов, хотела сделать асинхронное удаление в момент когда сервер будет меньше использоваться. Проверку условия я сделала в процедуре обработки очереди запускающейся брокерской службой. Когда условие выполняется, все работает нормально, но как только условие не выполнилось , а процедура все же успешно завершается, образуется пробка.
На профайлере сообщение:
'This message could not be delivered because the conversation ID could not be associated with an active conversation.'

Не подскажите что не так?
4 май 11, 15:37    [10604494]     Ответить | Цитировать Сообщить модератору
 Re: обработка сообщения Service Broker по условию  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Wisky
Не подскажите что не так?
Ошибка в 25-ой строке.
Рекомендации по оформлению сообщений в форуме

Есть вероятность, что сейчас упадёт метеорит вы используете WITH CLEANUP не к месту.

Вы задали один вопрос, теперь с вас два:
  • Как связано "массовое физическое удаление" и "Service Broker"?
  • Как определяется "момент когда сервер будет меньше использоваться"?
  • 4 май 11, 23:11    [10607131]     Ответить | Цитировать Сообщить модератору
     Re: обработка сообщения Service Broker по условию  [new]
    Wisky
    Member

    Откуда: Москва
    Сообщений: 163
    Mnior
  • Как связано "массовое физическое удаление" и "Service Broker"?

  • Хочу отложить массовое удалении на момент низкой нагрузки сервера. Мне видится два варианта, job или очередь, выбрала очередь.
    Mnior
  • Как определяется "момент когда сервер будет меньше использоваться"?

  • Некое условие к логу посещаемости, проверяет если кто в системе, не имеющее значение к текущему вопросу.

    На данный мне приходится перезапускать очередь после того как пользователь выходит из системы.
    5 май 11, 10:23    [10608099]     Ответить | Цитировать Сообщить модератору
     Re: обработка сообщения Service Broker по условию  [new]
    iljy
    Member

    Откуда:
    Сообщений: 8711
    Wisky
    Mnior
  • Как связано "массовое физическое удаление" и "Service Broker"?

  • Хочу отложить массовое удалении на момент низкой нагрузки сервера. Мне видится два варианта, job или очередь, выбрала очередь.
    Mnior
  • Как определяется "момент когда сервер будет меньше использоваться"?

  • Некое условие к логу посещаемости, проверяет если кто в системе, не имеющее значение к текущему вопросу.

    На данный мне приходится перезапускать очередь после того как пользователь выходит из системы.

    По моему тут проще заданием сделать. Т.е. при удалении заносите идентификаторы удаляемых данных в служебную таблицу, а каждые 5(10, 20, 50, N) минут запускается задание, которое проверяет нагрузку, и если она низкая - удаляет порцию (скажем 1000) данных, потом опять проверяет, и так либо пока все не удалит, либо пока нагрузка не возрастет, тогда уходите до следующего запуска.
    5 май 11, 12:34    [10609093]     Ответить | Цитировать Сообщить модератору
     Re: обработка сообщения Service Broker по условию  [new]
    Mnior
    Member

    Откуда: Кишинёв
    Сообщений: 6724
    По мне, тоже проще джобом (административные проблемы решаются административными средами).

    Эх, жаль не спросил про причины "массовых физических удалений". :(
    Вероятно и про секционирование упомянули.
    5 май 11, 14:56    [10610422]     Ответить | Цитировать Сообщить модератору
    Все форумы / Microsoft SQL Server Ответить