Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
selectivity не компилируется
|
|||
|---|---|---|---|
|
#18+
Никто не сталкивался с такой проблемой? В описании класса селективность явно указана. Компилятор на это указание кладет с прибором. Т.е. при просмотре тюнинха таблицы там пусто и скорость запросов категорически соответствует. Вообще, как лечить селективность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2011, 14:38 |
|
||
|
selectivity не компилируется
|
|||
|---|---|---|---|
|
#18+
Да, если в структуре хранения есть селективность (обычно после $system.SQL.TuneTable), то на селективность к описании класса каше плюет. Было обидно, тоже с этим бился, пока не понял. Сделайте TuneTable, может быть вам селективность посчитает правильно, может быть есть смысл использовать хинты, может быть поправите селективность в хранении (кстати, селективность в хранении не экспортируется вместе с классом, ее надо считать уже на рабочей базе). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2011, 20:13 |
|
||
|
selectivity не компилируется
|
|||
|---|---|---|---|
|
#18+
kolesov , Есть параметр EXTENTSIZE у класса и параметры CALCSELECTIVITY и SELECTIVITY у свойства. EXTENTSIZE и SELECTIVITY есть и в схеме хранения. Приоритет у схемы хранения, кроме случая CALCSELECTIVITY =0 Класс ведь может быть без исходников (deployed), а параметры нужно как-то менять. Кроме того SELECTIVITY некоторым свойствам можно поменять только через схему хранения: %%ID (ID), %%CLASSNAME (x__classname) Сделайте тест: 1) скомпилируйте класс, заполните экстент данными: Class test.a Extends %Persistent { Parameter EXTENTSIZE As INTEGER = 100; Property f1 As %String(CALCSELECTIVITY = 1, SELECTIVITY = "5%"); ClassMethod Fill() { set ^test.aD=10 for i=1:1:^test.aD set ^test.aD(i)=$lb("",i) } } Посмотрите в Studio способ хранения и в Портале селективности у полей. Закройте класс в Studio. 2) в Портале настройте таблицу. Сравните теперь результат в студии и портале. 3) повторите эксперимент с самого начала, но предварительно удалив исходники у класса: do $system.OBJ.MakeClassDeployed("test.a") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2011, 11:13 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=37482554&tid=1557621]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
142ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 450ms |

| 0 / 0 |
