| 
 | 
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Добрый день! Возник такой вопрос. Запускаю запрос к бд 1С (sql-сервер), в запросе первая таблица с винтом (nolock), остальные без хинта. Права в бд только на чтение. Запрос - обычный select. Запрос отрабатывает, сессия продолжает висеть. На момент запуска запроса уже несколько часов идёт перестроение индекса. Запрос блокирует перестроение индекса, пока его не срубили. Вопросы: - почему "грязное" чтение вообще способно помешать перестроение индекса? - почему "висящая сессия" с таким запросом способна помешать перестроению индекса? - как вообще возможна блокировка перестроения индекса запросом на чтение? - если это nolock, то почему? - если это "висящая" сессия, то почему? - это особенность 1с (есть такое мнение) или возможно в любой sql-ной базе. Нашла много примеров в инете,где первый строение индекса блокирует запрос на чтение nolock, но у нас наоборот: именно перестроение индекса блокируется запросом. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 06.02.2022, 00:56 | 
  
  
  
   | 
||
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  А точно грязное чтение? Проверьте. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 06.02.2022, 03:29 | 
  
  
  
   | 
||
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  madiken это особенность 1с (есть такое мнение) заявление на увольнение пишется от руки https://medium.com/hackernoon/how-using-nolock-can-block-your-queries-adc8611105ff ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 07.02.2022, 11:27 | 
  
  
  
   | 
||
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Нетрадиционное использование СКД, Спасибо! Хорошая статья и 3е решение понравилось. Но, если вместо rebuild можно использовать reorganization, почему всё-таки делают rebuild? Насколько критично различие? И второе,если просто не писать nolock, будут читаться только закоммиченные транзакции,правильно? Такое чтение ведь не должно блокировать перестроение индексов? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2022, 01:15 | 
  
  
  
   | 
||
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  madiken Но, если вместо rebuild можно использовать reorganization, почему всё-таки делают rebuild? вы про вообще или 1с? 1с про altertable только "вчера" узнала madiken Такое чтение ведь не должно блокировать перестроение индексов? а почему нет? у таблички есть как минимум pk и индекс кластерный + еще вспомогательных несколько. вы или делаете скан или ждете пока индекс перестроится. данные лежат согласно кластерному индексу, а во вспомогательных - ссылки на кластерный. а что там в голове у оптимизатора происходит - люди специально блоги ведут где изучают поведение субд в разных условиях дикой природы ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2022, 10:58 | 
  
  
  
   | 
||
| 
 
Перестроение индекса блокируется select-ом nolock no 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Нетрадиционное использование СКД, В конференции SQL Server ответили, что с редакции Enterprise чтение без хинта не ставит Sch-s блокировку, если одновременно перестраивается индекс. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 08.02.2022, 17:00 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=28&tid=1518083]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    15ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    41ms | 
get topic data:  | 
    14ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    52ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 228ms | 
| total: | 374ms | 

| 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.