powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / [игнор отключен] [закрыт для гостей] / Перестроение индекса блокируется select-ом nolock no
6 сообщений из 6, страница 1 из 1
Перестроение индекса блокируется select-ом nolock no
    #40131963
Фотография madiken
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Возник такой вопрос. Запускаю запрос к бд 1С (sql-сервер), в запросе первая таблица с винтом (nolock), остальные без хинта. Права в бд только на чтение. Запрос - обычный select.
Запрос отрабатывает, сессия продолжает висеть.
На момент запуска запроса уже несколько часов идёт перестроение индекса.
Запрос блокирует перестроение индекса, пока его не срубили.

Вопросы:
- почему "грязное" чтение вообще способно помешать перестроение индекса?
- почему "висящая сессия" с таким запросом способна помешать перестроению индекса?
- как вообще возможна блокировка перестроения индекса запросом на чтение?
- если это nolock, то почему?
- если это "висящая" сессия, то почему?
- это особенность 1с (есть такое мнение) или возможно в любой sql-ной базе.

Нашла много примеров в инете,где первый строение индекса блокирует запрос на чтение nolock, но у нас наоборот: именно перестроение индекса блокируется запросом.
...
Рейтинг: 0 / 0
Перестроение индекса блокируется select-ом nolock no
    #40131975
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А точно грязное чтение? Проверьте.
...
Рейтинг: 0 / 0
Перестроение индекса блокируется select-ом nolock no
    #40132169
madiken
это особенность 1с (есть такое мнение)


заявление на увольнение пишется от руки

https://medium.com/hackernoon/how-using-nolock-can-block-your-queries-adc8611105ff
...
Рейтинг: 0 / 0
Перестроение индекса блокируется select-ом nolock no
    #40132388
Фотография madiken
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нетрадиционное использование СКД,

Спасибо! Хорошая статья и 3е решение понравилось. Но, если вместо rebuild можно использовать reorganization, почему всё-таки делают rebuild? Насколько критично различие?

И второе,если просто не писать nolock, будут читаться только закоммиченные транзакции,правильно? Такое чтение ведь не должно блокировать перестроение индексов?
...
Рейтинг: 0 / 0
Перестроение индекса блокируется select-ом nolock no
    #40132445
madiken
Но, если вместо rebuild можно использовать reorganization, почему всё-таки делают rebuild?


вы про вообще или 1с? 1с про altertable только "вчера" узнала


madiken
Такое чтение ведь не должно блокировать перестроение индексов?


а почему нет? у таблички есть как минимум pk и индекс кластерный + еще вспомогательных несколько. вы или делаете скан или ждете пока индекс перестроится. данные лежат согласно кластерному индексу, а во вспомогательных - ссылки на кластерный. а что там в голове у оптимизатора происходит - люди специально блоги ведут где изучают поведение субд в разных условиях дикой природы
...
Рейтинг: 0 / 0
Перестроение индекса блокируется select-ом nolock no
    #40132592
Фотография madiken
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нетрадиционное использование СКД,

В конференции SQL Server ответили, что с редакции Enterprise чтение без хинта не ставит Sch-s блокировку, если одновременно перестраивается индекс.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Перестроение индекса блокируется select-ом nolock no
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (2): Анонимы (1), Yandex Bot 1 мин.
Пользователи онлайн (9): Анонимы (6), Bing Bot, CerebroSQL 1 мин., Yandex Bot 1 мин.
x
x
Закрыть


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