|
![]() |
#1 |
Moderator
|
Похожая ситуация. Есть СУБД на Oracle.
В ряде таблиц RecVersion объявлен так: RECVERSION NUMBER(10) DEFAULT 1 NOT NULL, А в половине вот так: RECVERSION NUMBER(10). Закономерности я не нашел, понимаю, что, в общем то, ничего страшного, но может кто подскажет - почему так получилось? |
|
![]() |
#2 |
MCITP
|
![]()
Привет.
Цитата:
Цитата:
А в половине вот так: RECVERSION NUMBER(*,0) DEFAULT 1.
![]() Точно сказать о причинах не могу, есть подозрение, что когда накатывался роллап, то Аксапта посоздавала всем таблам RecVersion по второму варианту, а те таблицы которые менялись или создавались впоследствии - уже синхронизировались "по полной". По первому варианту. ![]()
__________________
Zhirenkov Vitaly |
|
![]() |
#3 |
MCITP
|
![]()
Но у меня sp3 kr1
А если у вас kr2, то читайте описание фиксов к KR2: Цитата:
Poor performance of kernel installed on Oracle based Axapta systems
post OCC (Optimistic Concurrency Checking) implementation. · Problem The process of creating RECVERSION columns on database upgrade took very much time on Oracle database. The problem was with SQL statement used for creating RECVERSION columns: it used "ALTER TABLE ... ADD RECVERSION INT DEFAULT 1" statment causing Oracle to actually allocate space for new column in all table rows and fill that column with default value. · Solution The fix is to use "ALTER TABLE ... ADD RECVERSION INT" statement so that Oracle would create columns using default NULL value. This way space wouldn't need to be allocated at once for all table rows.
__________________
Zhirenkov Vitaly |
|
Теги |
recversion, sql 2005, ошибка, переход, ax3.0 |
|
|