28.02.2005, 15:54 | #1 |
Участник
|
Как избавиться от ненужных FIRST_ROWS?
Сталкивался ли кто-нибудь с тем, что Аксапта под Oracle формирует хинт First_Rows в местах, где это НЕ указано явно программистом (например, при открытии любой формы) и были ли найдены методы устранения данной фичи?
Флаг Special First Rows fix в конфигурационной утилите не предлагать, поскольку он отключает First_Rows везде, включая места, в которых firsonly явно указан в коде. Заранее спасибо! |
|
28.02.2005, 18:46 | #2 |
Участник
|
Re: Как избавиться от ненужных FIRST_ROWS?
Цитата:
Изначально опубликовано Axapta
Сталкивался ли кто-нибудь с тем, что Аксапта под Oracle формирует хинт First_Rows в местах, где это НЕ указано явно программистом (например, при открытии любой формы) и были ли найдены методы устранения данной фичи? Флаг Special First Rows fix в конфигурационной утилите не предлагать, поскольку он отключает First_Rows везде, включая места, в которых firsonly явно указан в коде. Заранее спасибо! |
|
01.03.2005, 10:20 | #3 |
Участник
|
Извините уважаемый chel, но ваше утверждение вызывает у меня большие сомнения! Не могли бы вы указать точную ссылку на подробности в технете?
В общем случае, при использовании современной версии Oracle (к примеру 9.2) и аккуратном сборе статистики для оптимизатора (без использования интерфейсов Аксапты ), данный хинт не вызывает со стороны Oracle никаких проблем, не предусмотренных текстом программы... |
|
01.03.2005, 12:24 | #4 |
Участник
|
Да, Вы правы - имел устаревшие сведения.
Сейчас посмотрел - действительно, все сообщения, в которых упоминался этот фикс, относились к старым версиям oracle |
|
01.03.2005, 17:24 | #5 |
Участник
|
Chel в чем то прав.
Действительно, все тесты говорят о том, что при включении фикса в некоторых местах (в основном, формах) проявляется улучшение производительности, НО в основных местах системы, отвечающих за бизнес-логику (напр, разноска) наблюдается существенное ухудшение! Более детальный анализ показал, что хинт FIRST_ROWS подставляется в следующих местах (при выключенном фиксе) 1. При использовании опций FIRSTONLY, FIRSTFAST в коде X++ (указываются явно программистом) 2. На всех формах и генериться, по всей видимости, ядром. На п.2 по всей видимости, ни программист, ни администратор системы не может повлиять никак, что является, на мой взгляд, существенной недоработкой. Есть еще идеи? |
|
01.03.2005, 20:08 | #6 |
Модератор
|
Цитата:
Изначально опубликовано Axapta
Более детальный анализ показал, что хинт FIRST_ROWS подставляется в следующих местах (при выключенном фиксе) 1. При использовании опций FIRSTONLY, FIRSTFAST в коде X++ (указываются явно программистом) 2. На всех формах и генериться, по всей видимости, ядром. На п.2 по всей видимости, ни программист, ни администратор системы не может повлиять никак, что является, на мой взгляд, существенной недоработкой. Есть еще идеи? - м.б, Databases advanced.pdf (не уверен) - http://axapta.mazzy.ru/hints/indexhints/ - к сожалению, рассматривался MSSQL, а не Oracle, если будет куча свободного времени, попробую повторить этот экзерсис. Если кто-то уже делал это для оракла и поделится результатами, обязательно размещу их в вэбе. |
|