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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 30.07.2006, 14:38   #1  
sergeypp is offline
sergeypp
Ищу людей. Дорого.
Аватар для sergeypp
 
433 / 174 (6) ++++++
Регистрация: 08.11.2003
Адрес: Казань
Периодически зависает какая нибудь сессия. Блокировка обычно идет на INVENTDIM (бывают и другие, но эта таблица - 90 %). При этом очереди диска нет.. Через профайл видно что очень долго выполняется команда sp_cursorfetch. Duration в среднем 50000. В чем может быть дело? Где еще копнуть?
__________________
Внедрение, развитие и поддержка DAX и RPA
spp16rus | sergeypp@gmail.com
Старый 30.07.2006, 15:00   #2  
sergeypp is offline
sergeypp
Ищу людей. Дорого.
Аватар для sergeypp
 
433 / 174 (6) ++++++
Регистрация: 08.11.2003
Адрес: Казань
Уж очень долго выполняются эти операции. Вкрадывается сомнение, что здесь проблема не в очереди диска а в чем то другом.
Не могут ли как то влиять на это включенные опции
Literals in join queries from forms and reports
Literals in complex joins from X++

Еще одна особенность..
вот пример оператора.
exec sp_cursorfetch 180156358, 2, 1, 22
посмотрел описание оператора

sp_cursorfetch [@cursor =] cursor_handle
[, [@fetchtype =] fetchtype]
[, [@rownum =] rownum OUTPUT]
[, [@nrows =] nrows OUTPUT]

[@nrows =] nrows OUTPUT
Is the number of rows to fetch. nrows is int, with a default of NULL (fetch all rows).

Так вот к чему я.. Зависание происходит ТОЛЬКО на запросах у которых @nrows = 22..
Что это означает? Как Axapta генерит эти запросы.. И с чем это связано.. Заранее спасибо за любую инфу.. Уже замучался..
__________________
Внедрение, развитие и поддержка DAX и RPA
spp16rus | sergeypp@gmail.com
Старый 31.07.2006, 10:23   #3  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от spp16rus Посмотреть сообщение
Периодически зависает какая нибудь сессия. Блокировка обычно идет на INVENTDIM (бывают и другие, но эта таблица - 90 %). При этом очереди диска нет.. Через профайл видно что очень долго выполняется команда sp_cursorfetch. Duration в среднем 50000. В чем может быть дело? Где еще копнуть?
Блокировки на InventDim ? Скорее всего, к разработчикам - на стандартном приложении таких эффектов не припоминаю

Цитата:
Уж очень долго выполняются эти операции. Вкрадывается сомнение, что здесь проблема не в очереди диска а в чем то другом.
Не могут ли как то влиять на это включенные опции
Literals in join queries from forms and reports
Literals in complex joins from X++
Могут. Так же, как и сотни других параметров. Универсального рецепта нет. Впрочем, таблетки от всех болезней тоже пока не изобретены

Цитата:
Так вот к чему я.. Зависание происходит ТОЛЬКО на запросах у которых @nrows = 22..
Что это означает? Как Axapta генерит эти запросы.. И с чем это связано.. Заранее спасибо за любую инфу.. Уже замучался..
http://axapta.mazzy.ru/lib/indexhints/
http://www.axforum.info/forums/showthread....=&threadid=5806
__________________
-ТСЯ или -ТЬСЯ ?
Старый 31.07.2006, 16:59   #4  
sergeypp is offline
sergeypp
Ищу людей. Дорого.
Аватар для sergeypp
 
433 / 174 (6) ++++++
Регистрация: 08.11.2003
Адрес: Казань
Нашел место.. там следующий запрос
select forupdate inventTransReceipt
where inventTransReceipt.inventTransId == movement.transId() &&
inventTransReceipt.statusIssue == StatusIssue::None &&
inventTransReceipt.statusReceipt == StatusReceipt::Ordered &&
inventTransReceipt.transChildType == InventTransChildType::None
#inventDimJoin(inventTransReceipt.inventDimId,inventDimReceipt,inventDimReceiptO
rig,inventDimParm);

что нужно добавить, что бы обработались все строки удовлетворяющие параметрам, но курсор (sp_cursorfetch) брал только по 1 - 2 строки.. firstfast??
__________________
Внедрение, развитие и поддержка DAX и RPA
spp16rus | sergeypp@gmail.com
Старый 31.07.2006, 17:37   #5  
sergeypp is offline
sergeypp
Ищу людей. Дорого.
Аватар для sergeypp
 
433 / 174 (6) ++++++
Регистрация: 08.11.2003
Адрес: Казань
И такой еще вопрос где можно взять документ Databases Advanced от 3.0 окромя партнерского сайта??
__________________
Внедрение, развитие и поддержка DAX и RPA
spp16rus | sergeypp@gmail.com
Старый 01.08.2006, 14:42   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от spp16rus Посмотреть сообщение
Нашел место.. там следующий запрос
select forupdate inventTransReceipt
where inventTransReceipt.inventTransId == movement.transId() &&
inventTransReceipt.statusIssue == StatusIssue::None &&
inventTransReceipt.statusReceipt == StatusReceipt::Ordered &&
inventTransReceipt.transChildType == InventTransChildType::None
#inventDimJoin(inventTransReceipt.inventDimId,inventDimReceipt,inventDimReceiptO
rig,inventDimParm);

что нужно добавить, что бы обработались все строки удовлетворяющие параметрам, но курсор (sp_cursorfetch) брал только по 1 - 2 строки.. firstfast??
попробуйте заменить
Код:
select forupdate inventTransReceipt
на
Код:
select forupdate forceselectorder inventTransReceipt
Цитата:
И такой еще вопрос где можно взять документ Databases Advanced от 3.0 окромя партнерского сайта??
у партнера
__________________
-ТСЯ или -ТЬСЯ ?
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:19.