Страница 1 из 1
Не отрабатывает RandomSurrKeys
Добавлено: 27 янв 2010, 09:22
Nikos
Добрый день. Возникла следующая проблема.
В конфигурационном файле стоит
RandomSurrKeys=on
Но тем не менее, при добавлении новых записей NREC следующей на 1 больше, чем у предыдущей. Почему так?
Галактика 8.10, Oracle 10g
Добавлено: 27 янв 2010, 09:52
LaaLaa
RandomSurrKeys влияет только на драйвер певасива
Добавлено: 27 янв 2010, 09:54
Nikos
А в Oracle всегда по порядку?
Добавлено: 27 янв 2010, 10:25
Nikos
В общем ситуация следующая.
Изначально на новой базе был один офис, некоторое время работали так. При этом, как выясняется, все таблицы получали NRECи по порядку. В какой-то момент появился еще один офис, была изменена структура. И с этого момента NRECи стали формироваться случайным образом, хотя конфигурационный файл не менялся. Почему так? Так и должно быть? Не понятно…
Но проблема теперь следующая: как слить 2 базы, если NRECи во всех таблицах частично одинаковые? Может, есть какая-то сервисная функция, случайным образом меняющая NRECи?
Добавлено: 28 янв 2010, 20:00
Sniper
nrec не могут быть одинаковыми
они могут одинаковую концовку, но другой офис
типа
00010000007Bh
и
000A0000007Bh
"частично одинаковые".. на самом деле абсолютно разные
Добавлено: 29 янв 2010, 08:22
Nikos
Ситуация следующая. Новая БД Галактики начала работать с декабря месяца. Был один офис и так и предполагалось, что будет дальше. Через месяц работы появился еще один офис, но там люди работали с августа, соответственно была рассчитана зарплата, но не в Галактики. Было принято решение на новой БД рассчитать зарплату с августа и данные перенести в первую. Т.к. эта БД была временная, то там тоже был единственный офис. Поскольку стоял параметр RandomSurrKeys=on, то я был уверен, что NRECи будут формироваться случайным образом и вероятность пересечения ничтожно мала. Но оказалось все не так, и частично одинаковые - это полностью одинаковые на процентов 70. Самое интересное, что я перед созданием второй базы заглянул в журнал и там действительно NRECи выдавались случайно! Как оказалось, случайно они выдаются лишь при включенной многоофисности.
В таблице хорошо видно как начался случайные выбор NRECов после включения многоофисности.
Код: Выделить всё
FNREC FTABNMB
8001000000001446 2000042
8001000000001447 2000043
8001000000001449 2000045
800100000000144E 2000050
8001000000001453 2000055
8001000000001454 2000056
8001000000001455 2000057
8001000000001456 2000058
800100000000145B 100585
800100000000145C 100584
800100000000146A 100589
C00155E3FFD2BF09 141412
C001889CCF62A44D 303957
C0018E4D0C692FCD 808020
C001A3F36F7A3772 1300018
C001BB84AE2DE61F 202002
C001D4EFD49D08C8 203200
C001E4F04790E256 303960
C001E80C8069FE09 202905
C00228402A1B3A03 4525434
C00333567CF68DB9 2818141
C0040370E7C38338 3535381
C0044AE6D32D574D 3545469
C0047FC06DCB52D7 3545465
C00487398DEB64E7 3151521
C004B91FC0CC72F1 3545471