Насколько я понимаю, оптимистическое обновление не имеет отношения к snapshot isolation. RCSI просто позволяет читать обновленные кем-то в незавершенных транзакциях записи. А оптимистическое обновление работает так: В оператор update/delete подставляется дополнительное условие RecVersion=429295 (в общем - с тем recversion, который был прочитан во время последнего чтения записи). Если после выполнения запроса из SQL Native Client приходит число обновленных записей, не равное единице, AOS понимает что запись вытащили из под носа и ругается.
Так что я бы в такой ситуации начал бы борьбу с обновления SQL Native Client на всех AOS-серверах. Для этого надо скачать последний Service Pack для SQL Server 2005, )(sp4) потом скачать последний cummulative update (cu3 на данный момент), а потом запустить установку всего этого хозяйства на ваших AOSах.
Хочу специально заметить, что даже если вы везде используете только SQL 2008, то аксапта все равно работает со старым Native Client (2005), так что пытаться поставить native client от SQL 2008 на серверы с AOS - бесполезно.
|