AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.04.2022, 13:59   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,875 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Group by Hash Match (Aggregate) blocking
Всем привет.
Ко мне недавно с вопросом обратились коллеги.
Увидели странное поведение аксапты.
Есть запрос с фильтрацией и group by. И на нем висело целое дерево заблокированных запросов на вставку записи.
Вопрос был, как такое возможно. Обычный запрос на чтение с фильтрацией и группировкой заблокировал вставку данных в табличку.

Погуглил тему. Вроде бы такое возможно (если я правильно все понял)
https://sqlsunday.com/2014/06/15/blo...ate-operators/
https://sqlserverfast.com/epr/hash-match/
https://dba.stackexchange.com/questi...atch-aggregate
https://web.archive.org/web/20160512...ggregates.aspx
https://docs.microsoft.com/en-us/arc...hash-aggregate


Попробовал сам построить пример с блокировкой.
Не получается.

Кто-нибудь встречался с таким в аксапте ?
(я - нет и не удалось воспроизвести)

Используется Ax2009
Старый 19.04.2022, 14:21   #2  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,894 / 5650 (194) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Мне все-таки кажется что blocking/non-blocking aggregation относиться не к блокировке записей на обновление/вставку/удаление, а на то, что в каких-то случаях операция аггрегирования может исполнятся параллельно (на другом процессоре) с операциями выборки, а в каких-то случаях операция аггрегирования блокируется до того, пока сортировка результатов выборки не закончиться.

Вообще - основная идея Read Committed Snapshot Isolation - это обеспечить чтобы читатели не блокировали писателей. Если такая блокировка случилось то есть такие варианты:
  1. Случайно отрубили RCSI у базы данных. (Хотя мне кажется что тут проблемы потяжелее были бы)
  2. В каких-то скриптах, выполняемых из Аксапты через connection/statement врубили какой-то суровый режим изоляции, типа Repeatable Read, а потом он так и остался включенным в сесии и потом совершенно посторонняя логика начала исполнятся в этом режиме.
За это сообщение автора поблагодарили: Logger (10).
Старый 19.04.2022, 14:37   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,875 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Пока строил пример удалось еще создать такой пример

Джоб 1
1. Идет блокировка записи в транзакции
2. Идет долгий запрос с группировкой

Джоб 2
1. Идет блокировка записи в транзакции.

В итоге монитор блокировок показал что блокировка идет от запроса с группировкой.
Вероятно мы просто некорректно считали показания. Монитор показал какая сессия является хедблокером и какой в ней текущий запрос исполняется, но конечно это не значит что именно этот запрос и заблокировал все.
Теги
group by, lock, блокировки

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Microsoft Dynamics AX general performance analysis scripts page 5 Blog bot DAX Blogs 0 01.09.2014 14:11
The document hash does not match the hash in the XML ideveloper DAX: Программирование 3 05.08.2011 20:29
axinthefield: Capture Database Blocking with Performance Analyzer for Microsoft Dynamics Blog bot DAX Blogs 0 03.03.2011 21:11
emeadaxsupport: Group policy setting "System Objects: Default owner for objects created by members of the administrators group" is missing on Windows Server 2008 Blog bot DAX Blogs 2 28.08.2009 02:14

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:20.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.