Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Какво заключва | комуникационните буферни ресурси означават?

Бих интерпретирал съобщението като блокиране на някаква комбинация от ресурси за заключване или ресурси на комуникационния буфер. „Ресурсите за заключване“ са обикновени заключвания на обекти, а „Ресурсите на комуникационния буфер“ са ExchangeEvents, използвани за комбиниране на резултати от паралелни заявки. Те са описани допълнително в https://blogs.msdn.microsoft.com/bartd/2008/09/24/todays-annoyingly-unwieldy-term-intra-query-parallel-thread-deadlocks/ където съответният параграф е:

Графиката на блокиране за един от тях, която съм виждал, включваше набор от процеси само с един SPID и графика на обектни блокировки и exchangeEvents. Предполагам, че съобщението "Транзакцията (ИД на процес 55) беше блокирана при заключване | комуникационни буферни ресурси с друг процес и беше избрана като жертва на блокиране. Повторно изпълнение на транзакцията" се появява вместо "Паралелизмът в рамките на заявката доведе до блокиране на вашата сървърна команда (идентификатор на процес #51). Изпълнете отново заявката без паралелизъм в рамките на заявката, като използвате опцията за подсказка на заявката (maxdop 1)" поради комбинацията от блокировки на обекти и събития за обмен, или в противен случай съобщението е променено в SQL Server след написването на статията.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какво правите в SQL Server, за да СЪЗДАВАТЕ ИЛИ ПРОМЕНЯТЕ?

  2. Шаблон за проектиране за персонализирани полета в релационна база данни

  3. Как да се свържа със SQL Server чрез sqlalchemy, използвайки удостоверяване на Windows?

  4. Как да коригирам грешка на Microsoft SQL Server 926? - Разрешено

  5. Как да премахнете двойните кавички около текста, докато импортирате CSV файл?