|
![]() |
#1 |
Участник
|
2 Torin
Спасибо за ссылки, получил удовольствие. Но вы ведь не думаете всерьез, что кеш Аксапты реализует хоть какие-то функции СУБД, не говоря уже о совмесном доступе (версионном или блокировочном)? Как я понимаю, просто новое поле позволяет принимать более гибкие решения при выполнении операций чтения и записи, реализующих ту самую стратегию (Optimistic Concurrency Checking). Не более, того. А то что введение этого новшества совпало с выходом SQL 2005, это что-то вроде ненавязчивого совпадения, имеющего маркетинговый подтекст. С уважением, itfs. |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от itfs
![]() 2 Torin
Но вы ведь не думаете всерьез, что кеш Аксапты реализует хоть какие-то функции СУБД, не говоря уже о совмесном доступе (версионном или блокировочном)? Как я понимаю, просто новое поле позволяет принимать более гибкие решения при выполнении операций чтения и записи, реализующих ту самую стратегию (Optimistic Concurrency Checking). Не более, того. А то что введение этого новшества совпало с выходом SQL 2005, это что-то вроде ненавязчивого совпадения, имеющего маркетинговый подтекст. С уважением, itfs. Уверен (хотя еще проверять - просто я и сам так делал в решениях и много изучал эту тему), что: 1) Кеш Акспаты всегда отключен от базы данных, но переодически обновляется 2) При редактировании записи в интерфейсе (так как нет кнопки "открыть на изменения" - он проверяет версию записи сам, по полю RECVERSION. Других способов нет, в его случает. Свойства же "версинника" Юкона проявляется на других операциях - паралельные транзакции из кода , или возможность строить отчеты, например, и при этом что-то менять в базе. "Блокировочник" Шилон - просто зависал на них. Все эти операции имеют одно отличие от списков в интерфейсе - от начала и до конца операции они работают через постоянное соединение с базой. Цитата:
Сообщение от Vadik
![]() Цитата:
Сообщение от Torin
![]() Таким образом, думаю, что:
1) RECVERSION относиться только к реализации "конкурентности" кеша AOS, который может держать образ записей без соединения с базой. Конструкция "update myTable where DataAreaId = .. and RecId = .. and RECVERSION = " может быть использована только в этом случае (из интерфейса). ТОлько в таком случае для версионника (когда выбрали, отключились от базы, опять подключились и делаем изменение) может быть касус с потерей данных (мердже, как некоторые называют) ![]() При постоянном подключении к базе, так в Юконе сделать нельзя ;-) |
|