Ср Мар 18, 2009 14:50  ЦФТ рекомендует изменить знач. парам. PLSQL_OPTIMIZE_LEVEL
Полезность: Нет оценки
Новости с сайта поддержки за 11.03.2009
Рекомендации по настройкам для продуктов Платформы на Oracle10g
В связи с тем, что в результате эксплуатации продуктов на базе "ЦФТ-Платформа Развития" ("ЦФТ-Банк", "ЦФТ-Ритейл Банк" и т.д) на Oracle10g, при рекомендованном Oracle значении параметра PLSQL_OPTIMIZE_LEVEL=2 выявлены случаи некорректного исполнения PlSql - конструкций, рекомендуется:
1. При создании базы Oracle 10g для продуктов на базе "ЦФТ-Платформа Развития" устанавливать параметр PLSQL_OPTIMIZE_LEVEL=0.
2. При миграции базы на платформу Oracle 10g для продуктов на базе "ЦФТ-Платформа Развития" устанавливать параметр PLSQL_OPTIMIZE_LEVEL=0.
3. В банках, которые уже выполнили миграцию базы на платформу Oracle 10g со значением параметра PLSQL_OPTIMIZE_LEVEL=2 , рекомендуется изменить значение PLSQL_OPTIMIZE_LEVEL на 0 и провести полную перекомпиляцию всех хранимых процедур ТЯ и ПЯ.
Господа, кто-нибудь менял значение параметра на 0? Как это повлияло на работу системы?
А собственно, что хотят нас заставить сделать - вот смотрим.....
Код:
PLSQL_OPTIMIZE_LEVEL specifies the optimization level that will be used to compile PL/SQL library units. The higher the setting of this parameter, the more effort the compiler makes to optimize PL/SQL library units.
Values:
*
0
Maintains the evaluation order and hence the pattern of side effects, exceptions, and package initializations of Oracle9i and earlier releases. Also removes the new semantic identity of BINARY_INTEGER and PLS_INTEGER and restores the earlier rules for the evaluation of integer expressions. Although code will run somewhat faster than it did in Oracle9i, use of level 0 will forfeit most of the performance gains of PL/SQL in Oracle Database 10g.
*
1
Applies a wide range of optimizations to PL/SQL programs including the elimination of unnecessary computations and exceptions, but generally does not move source code out of its original source order.
*
2
Applies a wide range of modern optimization techniques beyond those of level 1 including changes which may move source code relatively far from its original location.
Generally, setting this parameter to 2 pays off in better execution performance. If, however, the compiler runs slowly on a particular source module or if optimization does not make sense for some reason (for example, during rapid turnaround development), then setting this parameter to 1 will result in almost as good a compilation with less use of compile-time resources.
The value of this parameter is stored persistently with the library unit.
- теперь много думаем... во-первых цфт декларировало что разработка кода давно идет под 10G - а что это они рекомендуют выставлять PLSQL_OPTIMIZE_LEVEL=0 ? - я лично непонимаю.
во-вторых - давно прослеживается тенденция у Oracle как можно больше отдать на откуп СУБД - статистика СВО в 8-ке, адвайзеры в 9-ке + системная статистика, ASM в 10-ке + вот эта фишка - собственно, зачем руками править систему которая заточена под автоматическое управление на основании статистики которую она же собирает - если вы чувствуете себя "умнее" СУБД - то пробуйте, свое мнение по данному вопросу я уже высказал. - дефолтное значение PLSQL_OPTIMIZE_LEVEL=2 по-умолчанию выставляемое Оракл - нужно ли его менять решайте сами.
И так, собссно, как обстоят дела с этим параметром у уважаемых господ? _________________ IT-Команда предлагает свои услуги:
http://www.cftclub.ru/viewtopic.php?t=909
пока все работает(месяца уже как) Хотя у нас не много всего используется...
Ну значит Вам радоваться надо, на баг оракла у Вас не "выстрелил"...
Соотвественно варианта 2 либо сделать как говорит ЦФТ, либо взять эту новость на заметку и когда баг выстрелит то пофиксить эту ситуацию...
А там дальше 2 варианта развития событий:
1. если баг "выстрелит" в не рабочее время - тогда можно будет выставить параметр и спокойно все перекомпилить.
2. баг "выстрелит" на какой-нибудь нужной операции и в пиковое время (например начало месяца, закрытие месяца и т.д.) - тогда у Вас банк будет колом стоят часа 3, а там Все зависит от вашего руководства, либо оно погладит Вас по головке, либо нет...
PS: Помимо всего прочего, надо понимать что разработчики разрабатывают код с учетом официальных рекомендаций и тестируют с рекомендуемыми параметрами...
PPS: Для большинства стандартных операций и подсистем - этот параметр большой погоды не сделает....
Так что каждый решает сам ставить ему этот параметр или нет...
Исходя из сообщений на форуме можно сказать по дефолту система работает и со стандартным значением...
Самое главное понять, где это проявляется.
Видимо критично для небольшого количества операций, которые похоже мы не используем...
При последних обновлениях складывается впечатление, что основные тестировщики - клиенты и эта куча обновлений вываливается абсолютно сырыми.
можно спросить у поддержки что именно ломается при PLSQL_OPTIMIZE_LEVEL=2...
- ежели вчитаться в их сообщение, разосланное банкам , то и так понятно что они ответят -
Цитата:
Примечание: На территории ЦФТ было проведено стресс-тестирование схемы "ЦФТ-Банк" со значениями параметра PLSQL_OPTIMIZE_LEVEL 0 и 2. Кардинальных различий в производительности системы обнаружено не было.
Меня пугает фраза "выявлены случаи некорректного исполнения PlSql - конструкций при PLSQL_OPTIMIZE_LEVEL=2"
- ничего подобного не замечено, более того слово "некорректное исполнение " - что-то похоже на некорректное написание, или даже кривоватое( а еще говорят вся разработка на 10-ке уже давно идет)....
З.Ы. АвтоВаз вспомнился - он же как и ЦФТ "родной", помнится в лохматом 2000 купил новенькую 8-ку приехал на фирменный сервис на ТО, а там говорят иммобилайзер нужно обязательно отключить - из-за него вон машины ломаются - не заводятся он плохой! а то что это была первая российская фишка которая реально помогала защитить машину , об этом никто не упомянул - так просто , вспомнилось что-то....
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
Домен cftclub.ru не связан с ЗАО "Центр Финансовых Технологий" и ни в коей мере не нарушает авторских и иных прав
Владелец может не разделять мнения Участников и не несет ответственности за их публикации
Powered by phpBB