Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
10.05.2011, 08:38
|
|||
---|---|---|---|
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
Приветствую коллеги, немного нестандартный вопрос: 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 Кто нить использовал такое, дало ли явное преимущество использование такого уровня изоляции? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 10:45
|
|||
---|---|---|---|
|
|||
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
boogiman2) Клиент толстый и на нём не всегда стоят commit -ы после select - ов из базы (автокоммит по умолчанию включить не можем ибо не одни select - ы там присутствуют). Это иногда вызывает конкурентные блокировки. Не нужно ставить commit'ы после select'ов. Нужно открывать транзакцию перед записью, и заканчивать ее commit или rollback сразу после, а не держать ее все время открытой. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 10:49
|
|||
---|---|---|---|
|
|||
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
boogimanХотим используя новые возможности сервера поставить уровень изоляции на рабочую базу (чтоб побороть блокировки на чтение): И кстати, эти "новые возможности" уже присутствуют в той версии, с которыой Вы мигрируете. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 11:32
|
|||
---|---|---|---|
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
Да когда delete , инсерт и апдейт понятно, так и делаем всегда (открыл транзакцию, потом commit или rollback при ошибке ). Я о другом не во всех retreevestart и retrieveend на dw на клиенте стоит sqlca.autocommit = true и sqlca.autocommit = false соответственно. Отсюда и получаются взаимоблокировки от select - ов . Насчет того что такой уровень изоляции появился в 2005 это я знаю, просто проблемы начались при увеличении объёмов , а это уже было на 2008 платформе, поэтому и возник вопрос о новых уровнях изоляции. Вопрос остаётся открытым. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 13:01
|
|||
---|---|---|---|
|
|||
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
boogimanЯ о другом не во всех retreevestart и retrieveend на dw на клиенте стоит sqlca.autocommit = true и sqlca.autocommit = false соответственно. Отсюда и получаются взаимоблокировки от select - ов . Зачем вообще перещелкивать autocommit? Поставьте в true и не трогайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 15:05
|
|||
---|---|---|---|
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
Потому что в случае update с клиента к примеру, при автокоммитной транзакции с флагом true , ничего не откатишь. Марк , при всём уважении к Вам - вы даёте советы не по существу. Я у народа спрашиваю про опыт работы с базой MSSQL от 2005 и выше с новым уровнем изоляции - вы стараетесь меня научить, причём не очень правильным вещам! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
10.05.2011, 16:36
|
|||
---|---|---|---|
|
|||
(PB9 - Mssql2005) ->PB9 -Mssql2008 |
|||
#18+
boogimanПотому что в случае update с клиента к примеру, при автокоммитной транзакции с флагом true , ничего не откатишь. Марк , при всём уважении к Вам - вы даёте советы не по существу. Я у народа спрашиваю про опыт работы с базой MSSQL от 2005 и выше с новым уровнем изоляции - вы стараетесь меня научить, причём не очень правильным вещам! Да неужели? Вещи про которые я говорю - как раз и есть правильные. Вы бы сперва в них разобрались. Вместо своих извращений стартуйте явно транзакцию перед началом изменений с клиента (begin tran) и все тогда спокойно будет откатываться. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=15&tablet=1&tid=1335727]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
139ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 298ms |
total: | 520ms |
0 / 0 |