|
03.04.2011, 13:38 | #1 |
Боец
|
Цитата:
Цитата:
В общем глючит именно OCC, а вот почему - предстоит разобраться, что-то ей мешает. Места достаточно на всех дисках. Цитата:
Еще вариант - может сиквел глючит в режиме Snapshot isolation - вы посмотрите там все порядке - места в темпах достаточно ? Не переполнились ?
|
|
17.04.2013, 11:34 | #2 |
Модератор
|
С триггерами \ хранимыми процедурами с SET NOCOUNT ON баловались ? Если забыли где-то его вернуть в нормальное (для AX - OFF) состояние, в этой сессии при попытке UPDATE .. WHERE RECID = %X and RECVERSION = %Y ядро не увидит искомого '1 record affected' и решит что это конфликт OCC
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
За это сообщение автора поблагодарили: Kabardian (5), dim-gin (1). |
21.01.2021, 15:14 | #3 |
Участник
|
Цитата:
Сообщение от Vadik
С триггерами \ хранимыми процедурами с SET NOCOUNT ON баловались ? Если забыли где-то его вернуть в нормальное (для AX - OFF) состояние, в этой сессии при попытке UPDATE .. WHERE RECID = %X and RECVERSION = %Y ядро не увидит искомого '1 record affected' и решит что это конфликт OCC
Вот тут https://www.sql.ru/forum/1332703/kak...zvolnoy-sessii утверждают, что при выходе из хранимки свойство должно восстанавливаться. Т.е. не должна хранимка смочь что либо испортить в сессии. P.S. Надо будет контрольный пример сбацать и проверить. |
|
21.01.2021, 22:03 | #4 |
Модератор
|
да, уверен
Цитата:
Вот тут
https://www.sql.ru/forum/1332703/kak...zvolnoy-sessii утверждают, что при выходе из хранимки свойство должно восстанавливаться. Т.е. не должна хранимка смочь что либо испортить в сессии. P.S. Надо будет контрольный пример сбацать и проверить X++: use tempdb go set nocount off go select count(*) from sys.objects go create procedure myProc as begin set nocount on; -- do something end go execute myProc go drop procedure myProc; go select count(*) from sys.objects go Цитата:
-----------
100 (1 row affected) ----------- 100 (1 row affected) Цитата:
If a SET statement runs in a stored procedure or trigger, the value of the SET option gets restored after the stored procedure or trigger returns control. Also, if you specify a SET statement in a dynamic SQL string that runs by using either sp_executesql or EXECUTE, the value of the SET option gets restored after control returns from the batch that you specified in the dynamic SQL string
на AX2012, при возможности проверю. T-SQL c NOCOUNT из X++ должен валиться P.S. подчеркнутое расходится с Цитата:
if you specify a SET statement in a dynamic SQL string that runs by using either sp_executesql or EXECUTE, the value of the SET option gets restored after control returns from the batch that you specified in the dynamic SQL string
__________________
-ТСЯ или -ТЬСЯ ? Последний раз редактировалось Vadik; 21.01.2021 в 23:22. |
|
|
За это сообщение автора поблагодарили: Logger (10). |
22.01.2021, 11:09 | #5 |
Участник
|
|
|
22.01.2021, 11:17 | #6 |
Модератор
|
Может кто-то прогнать скрипт на старых версиях SQL Server (2005, 2008б 2012) ? Он безобидный
__________________
-ТСЯ или -ТЬСЯ ? |
|
22.01.2021, 11:53 | #7 |
Участник
|
Цитата:
Цитата:
(строк обработано: 1)
(строк обработано: 1) Цитата:
(затронута одна строка)
(затронута одна строка) Могу ошибаться, но не исключено, что команда GO в окне Mangement studio сама по себе может сбрасывать какие-то переменные. Объявленные там же при помощи declare точно разные в разных секциях до GO. |
|
|
За это сообщение автора поблагодарили: Vadik (1). |
Теги |
ax2009, ax2012, ax2012r2, occ, sysclientsessions, ошибка, хранимые процедуры |
|
|