09.06.2021, 22:12 | #1 |
Участник
|
Denis Trunin's Blogs: Monitoring the most problematic performance problem in Dynamics AX - parameters sniffing
Источник: https://denistrunin.com/performance-snifmonitor/
============== The blog post describes a monitoring solution for SQL Server parameters sniffing issues Источник: https://denistrunin.com/performance-snifmonitor/
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору. |
|
10.06.2021, 08:24 | #2 |
Участник
|
Цитата:
The solution was quite simple, a custom plan was created with the OPTIMIZE FOR UNKNOWN hint, that ensured that SQL Server would not use first passed location/site values to build a plan
|
|
10.06.2021, 10:51 | #3 |
Участник
|
Если запрос написан именно так и вы его смогли найти в коде, то да. Но обычно в системе они все делают через InventDimParm где фильтры будут заранее неизвестны, всегда там forceselectorder не поставишь. К примеру если выборка идет по серийному номеру или номеру партии, как правило выполнение должно начинаться с InventDim
Т.е. если такие проблемы начались можно как-то хинтовать, к примеру чем-то подобным X++: OPTION(TABLE HINT (B, INDEX(I_698DIMIDIDX)), TABLE HINT ( a, INDEX(I_174ITEMDIMIDX)), loop join) 3)Ну или если есть бюджет вообще убрать join, как Microsoft сделала в D365FO( https://denistrunin.com/ax2012-inventsumfields ) |
|
|
За это сообщение автора поблагодарили: sukhanchik (20), Stitch_MS (10). |
10.06.2021, 12:19 | #4 |
Участник
|
Да, согласен.
Я, собственно, не рассматриваю forceselectorder как какую то серебряную пулю. Не всегда он применим. |
|
|
|