powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / (PB9 - Mssql2005) ->PB9 -Mssql2008
7 сообщений из 7, страница 1 из 1
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252190
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую коллеги, немного нестандартный вопрос:
1) Перешли с SQL 2005 на 2008 SR2.
2) Клиент толстый и на нём не всегда стоят commit -ы после select - ов из базы (автокоммит по умолчанию включить не можем ибо не одни select - ы там присутствуют). Это иногда вызывает конкурентные блокировки.

Хотим используя новые возможности сервера поставить уровень изоляции на рабочую базу (чтоб побороть блокировки на чтение):
ALTER DATABASE MyDatabase
SET ALLOW_SNAPSHOT_ISOLATION ON
go
ALTER DATABASE MyDatabase
SET READ_COMMITTED_SNAPSHOT ON
go

Кто нить использовал такое, дало ли явное преимущество использование такого уровня изоляции?

Спасибо!
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252283
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boogiman2) Клиент толстый и на нём не всегда стоят commit -ы после select - ов из базы (автокоммит по умолчанию включить не можем ибо не одни select - ы там присутствуют). Это иногда вызывает конкурентные блокировки.

Не нужно ставить commit'ы после select'ов. Нужно открывать транзакцию перед записью, и заканчивать ее commit или rollback сразу после, а не держать ее все время открытой.
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252289
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boogimanХотим используя новые возможности сервера поставить уровень изоляции на рабочую базу (чтоб побороть блокировки на чтение):

И кстати, эти "новые возможности" уже присутствуют в той версии, с которыой Вы мигрируете.
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252350
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да когда delete , инсерт и апдейт понятно, так и делаем всегда (открыл транзакцию, потом commit или rollback при ошибке ).
Я о другом не во всех retreevestart и retrieveend на dw на клиенте стоит sqlca.autocommit = true и sqlca.autocommit = false соответственно. Отсюда и получаются взаимоблокировки от select - ов .

Насчет того что такой уровень изоляции появился в 2005 это я знаю, просто проблемы начались при увеличении объёмов , а это уже было на 2008 платформе, поэтому и возник вопрос о новых уровнях изоляции.

Вопрос остаётся открытым.
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252522
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boogimanЯ о другом не во всех retreevestart и retrieveend на dw на клиенте стоит sqlca.autocommit = true и sqlca.autocommit = false соответственно. Отсюда и получаются взаимоблокировки от select - ов .

Зачем вообще перещелкивать autocommit? Поставьте в true и не трогайте.
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37252861
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что в случае update с клиента к примеру, при автокоммитной транзакции с флагом true , ничего не откатишь. Марк , при всём уважении к Вам - вы даёте советы не по существу. Я у народа спрашиваю про опыт работы с базой MSSQL от 2005 и выше с новым уровнем изоляции - вы стараетесь меня научить, причём не очень правильным вещам!
...
Рейтинг: 0 / 0
(PB9 - Mssql2005) ->PB9 -Mssql2008
    #37253196
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boogimanПотому что в случае update с клиента к примеру, при автокоммитной транзакции с флагом true , ничего не откатишь. Марк , при всём уважении к Вам - вы даёте советы не по существу. Я у народа спрашиваю про опыт работы с базой MSSQL от 2005 и выше с новым уровнем изоляции - вы стараетесь меня научить, причём не очень правильным вещам!
Да неужели? Вещи про которые я говорю - как раз и есть правильные. Вы бы сперва в них разобрались. Вместо своих извращений стартуйте явно транзакцию перед началом изменений с клиента (begin tran) и все тогда спокойно будет откатываться.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / (PB9 - Mssql2005) ->PB9 -Mssql2008
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]