{"id":97702,"date":"2020-10-20T20:42:28","date_gmt":"2020-10-20T18:42:28","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah"},"modified":"2020-10-20T20:42:28","modified_gmt":"2020-10-20T18:42:28","slug":"rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah","title":{"rendered":"Dekodeerime Key ja Page WaitResource deadlock'ides ja lukustustes.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Kui kasutate blokeerimise aruannet (blocked process report) v\u00f5i kogute SQL Serveri pakutavaid deadlock graafikuid, siis aeg-ajalt kohtate selliseid asju: <\/p>\n<blockquote><p>waitresource=\"PAGE: 6:3:70133\"<\/p>\n<p>waitresource=\"KEY: 6:72057594041991168 (ce52f92a058c)\"<\/p><\/blockquote>\n<p>\nM\u00f5nikord on selles hiiglaslikus XML-is, mida te uurite, rohkem teavet (deadlock graafides on ressursid, mis aitavad objekte ja indekseid tuvastada), kuid mitte alati.<\/p>\n<p>See tekst aitab teil neid de\u0161ifreerida.<\/p>\n<p>Kogu teave, mis siin on, on internetis erinevates kohtades olemas, see on lihtsalt v\u00e4ga laiali jaotatud! Ma tahan selle k\u00f5ik kokku koguda \u2014 alates DBCC PAGE-st kuni hobt_id ja dokumenteerimata %%physloc%% ja %%lockres%% funktsioonideni.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nEsiteks r\u00e4\u00e4gime PAGE-blokeeringute ootamisest ja seej\u00e4rel liigume KEY-blokeeringute juurde.<\/p>\n<h3>1) waitresource=\"PAGE: 6:3:70133\" = Database_Id: FileId: PageNumber<\/h3>\n<p>\nKui teie p\u00e4ring ootab PAGE-blokeeringut, annab SQL Server teile selle lehe aadressi.<\/p>\n<p>Lahutades \"PAGE: 6:3:70133\", saame:<\/p>\n<ul>\n<li>database_id = 6<\/li>\n<li>data_file_id = 3<\/li>\n<li>page_number = 70133<\/li>\n<\/ul>\n<h4>1.1) De\u0161ifreerime database_id<\/h4>\n<p>\nLeidke andmebaasi nimi, kasutades p\u00e4ringut:<\/p>\n<pre><code class=\"sql\">SELECT \n    name \nFROM sys.databases \nWHERE database_id=6;\nGO<\/code><\/pre>\n<p>\nSee on avalik <noindex><a rel=\"nofollow\" href=\"https:\/\/www.littlekendra.com\/2016\/09\/13\/deadlock-code-for-the-wideworldimporters-sample-database\/\">andmebaas WideWorldImporters<\/a><\/noindex> minu SQL Serveris.<\/p>\n<h4>1.2) Otsime andmefaili nime \u2014 kui see huvitab teid<\/h4>\n<p>\nKavatseme kasutame data_file_id j\u00e4rgmises sammus, et leida tabeli nimi. V\u00f5ite lihtsalt edasi liikuda, kuid kui teid huvitab faili nimi, leiate selle, tehes p\u00e4ringu leitud andmebaasis, asendades query_sellen data_file_id-ga:<\/p>\n<pre><code class=\"sql\">USE WideWorldImporters;\nGO\nSELECT \n    name, \n    physical_name\nFROM sys.database_files\nWHERE file_id = 3;\nGO<\/code><\/pre>\n<p>\nAndmebaasis WideWorldImporters on see fail nimega WWI_UserData ja see on taastatud minu jaoks C:MSSQLDATAWideWorldImporters_UserData.ndf. (Ups, sa tabasid mind just sel hetkel, kui ma faile k\u00f5vakettale panin! Ei! Jube piinlik.)<\/p>\n<h4>1.3) Saame objekti nime DBCC PAGE-st<\/h4>\n<p>\nN\u00fc\u00fcd teame, et lehek\u00fclg #70133 andmefailis 3 kuulub andmebaasile WorldWideImporters. Saame selle lehe sisu vaadata dokumenteerimata DBCC PAGE abil ja j\u00e4lgimislipiku 3604 abil.<br \/>\nM\u00e4rkus: eelistan kasutada DBCC PAGE-d taastatud varukoopia koopia peal, mis asub kuskil teisel serveril, kuna see on dokumenteerimata asi. M\u00f5nes olukorras v\u00f5ib see <noindex><a rel=\"nofollow\" href=\"https:\/\/connect.microsoft.com\/SQLServer\/feedback\/details\/776144\/dbcc-page-incorrect-output-with-filtered-indexes\">v\u00f5ib p\u00f5hjustada m\u00e4lestuse loomise<\/a><\/noindex> (<i>t\u00f5lkija m\u00e4rkuseks \u2014 link viib kahjuks ei kuhugi, kuid URL-i j\u00e4rgi n\u00e4ib teema olevat filtreeritud indeksite kohta<\/i>).<\/p>\n<pre><code class=\"sql\">\/* This trace flag makes DBCC PAGE output go to our Messages tab\ninstead of the SQL Server Error Log file *\/\nDBCC TRACEON (3604);\nGO\n\/* DBCC PAGE (DatabaseName, FileNumber, PageNumber, DumpStyle)*\/\nDBCC PAGE ('WideWorldImporters',3,70133,2);\nGO<\/code><\/pre>\n<p>\nKui tulemusi sirvida, v\u00f5ib leida object_id ja index_id.<br \/>\n<img decoding=\"async\" alt=\"Dekodeerime Key ja Page WaitResource deadlock&#039;ides ja lukustustes.\" src=\"\/wp-content\/uploads\/2020\/10\/c5a42f36fb7a87cfd2e11adfef3caa17.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPeaaegu valmis! N\u00fc\u00fcd saab tabelite ja indeksite nimesid leida p\u00e4ringuga:<\/p>\n<pre><code class=\"sql\">USE WideWorldImporters;\nGO\nSELECT \n    sc.name as schema_nimi, \n    so.name as objekti_nimi, \n    si.name as indeks_nimi\nFROM sys.objects as so \nJOIN sys.indexes as si on \n    so.object_id = si.object_id\nJOIN sys.schemas AS sc on \n    so.schema_id = sc.schema_id\nWHERE \n    so.object_id = 94623380\n    and si.index_id = 1;\nGO<\/code><\/pre>\n<p>\nJa siin me n\u00e4eme, et ootamine lukustamisel oli indeksi PK_Sales_OrderLines tabelis Sales.OrderLines.<\/p>\n<p>M\u00e4rkus: SQL Server 2014 ja uuemates versioonides saab objekti nime leida ka dokumenteerimata DMO sys.dm_db_database_page_allocations abil. Kuid peate k\u00fcsima iga lehe DB-s, mis ei tundu suurte andmebaaside jaoks eriti \u00e4gedana, seega kasutasin DBCC PAGE.<\/p>\n<h4>1.4) Kas on v\u00f5imalik n\u00e4ha andmeid lukustatud lehe kohta?<\/h4>\n<p>\nNoh, jah. Aga... kas olete kindel, et see on t\u00f5esti vajalik?<br \/>\nSee on aeglane isegi v\u00e4ikeste tabelite puhul. Kuid see on kuidagi \u00e4ge, nii et kuna olete selle punktini j\u00f5udnud... r\u00e4\u00e4kigem %%physloc%%-st!<\/p>\n<p>%%physloc%% on dokumenteerimata maagia t\u00fckk, mis tagastab iga kirje f\u00fc\u00fcsilise identifikaatori. Saate kasutada <noindex><a rel=\"nofollow\" href=\"http:\/\/www.sqlskills.com\/blogs\/paul\/sql-server-2008-new-undocumented-physical-row-locator-function\/\">%%physloc%% koos sys.fn_PhysLocFormatteriga SQL Serveris 2008 ja uuemates.<\/a><\/noindex>.<\/p>\n<p>N\u00fc\u00fcd, kui me teame, et soovisime lehe Sales.OrderLines blokeerimist, saame vaadata k\u00f5iki andmeid selles tabelis, mis on salvestatud andmefailis #3 lehe #70133 peal, j\u00e4rgmise p\u00e4ringu abil:<\/p>\n<pre><code class=\"sql\">Kasutage WideWorldImporters;\nGO\nSELECT \n    sys.fn_PhysLocFormatter (%%physloc%%),\n    *\nFROM Sales.OrderLines (NOLOCK)\nWHERE sys.fn_PhysLocFormatter (%%physloc%%) like '(3:70133%'\nGO<\/code><\/pre>\n<p>Nagu ma \u00fctlesin \u2014 see on isegi v\u00e4ikestes tabelites aeglane. Lisasin p\u00e4ringule NOLOCK, sest meil ei ole ikkagi mingeid garantiisid, et andmed, mida tahame vaadata, on need samad, mis olid hetkel, kui blokeering avastati \u2014 seega v\u00f5ime rahulikult teha r\u00e4paseid lugemisi.<br \/>\nAga, hurraa, p\u00e4ring tagastab mulle need 25 rida, mille nimel meie p\u00e4ring v\u00f5itles<br \/>\n<img decoding=\"async\" alt=\"Dekodeerime Key ja Page WaitResource deadlock&#039;ides ja lukustustes.\" src=\"\/wp-content\/uploads\/2020\/10\/e7909bb7c496d9509e5f5a1aa30a135a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPiisavalt PAGE-blokeeringutest. Mis juhtub, kui ootame KEY-blokeeringut?<\/p>\n<h3>2) waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201d = Database_Id, HOBT_Id (salajane hash, mille saab dekr\u00fcpteerida %%lockres%% abil, kui t\u00f5eliselt soovite)<\/h3>\n<p>Kui teie p\u00e4ring p\u00fc\u00fcab blokeerida salvestust indeksis ja j\u00e4\u00e4b ise blokeerituks, saate hoopis teistsuguse aadressi.<br \/>\nLahutades \u201c6:72057594041991168 (ce52f92a058c)\u201d osadeks, saame:<\/p>\n<ul>\n<li>database_id = 6<\/li>\n<li>hobt_id = 72057594041991168<\/li>\n<li>salajane hash = (ce52f92a058c)<\/li>\n<\/ul>\n<h4>2.1) Dekodeerime database_id<\/h4>\n<p>\nSee t\u00f6\u00f6tab t\u00e4pselt nii nagu eespool oleva n\u00e4ite puhul! Otsime andmebaasi nime p\u00e4ringu kaudu:<\/p>\n<pre><code class=\"sql\">SELECT \n    name \nFROM sys.databases \nWHERE database_id=6;\nGO<\/code><\/pre>\n<p>\nMinu puhul on see ikka sama <noindex><a rel=\"nofollow\" href=\"https:\/\/www.littlekendra.com\/2016\/09\/13\/deadlock-code-for-the-wideworldimporters-sample-database\/\">andmebaas WideWorldImporters<\/a><\/noindex>.<\/p>\n<h4>2.2) Dekodeerime hobt_id<\/h4>\n<p>\nLeitud andmebaasi kontekstis tuleb teha p\u00e4ring sys.partitions tabelisse koos paariga joinidest, mis aitavad tuvastada tabeli ja indeksi nimed...<\/p>\n<pre><code class=\"sql\">USE WideWorldImporters;\nGO\nSELECT \n    sc.name as schema_name, \n    so.name as object_name, \n    si.name as index_name\nFROM sys.partitions AS p\nJOIN sys.objects as so on \n    p.object_id=so.object_id\nJOIN sys.indexes as si on \n    p.index_id=si.index_id and \n    p.object_id=si.object_id\nJOIN sys.schemas AS sc on \n    so.schema_id=sc.schema_id\nWHERE hobt_id = 72057594041991168;\nGO<\/code><\/pre>\n<p>\nSee \u00fctleb mulle, et p\u00e4ring ootas blokkeerimist Application.Countries, kasutades indeksi PK_Application_Countries.<\/p>\n<h4>2.3) N\u00fc\u00fcd pisut v\u00f5lu %%lockres%% \u2014 kui soovite v\u00e4lja selgitada, milline kirje oli lukustatud<\/h4>\n<p>\nKui ma t\u00f5eliselt tahan teada, millisel real lukustus oli vajalik, saan selle v\u00e4lja selgitada p\u00e4ringuga tabeli enda peale. Saame kasutada dokumenteerimata funktsiooni %%lockres%%, et leida kirje, mis vastab maagilisele r\u00e4si.<br \/>\nPidage meeles, et see p\u00e4ring skannib kogu tabelit, ja suurte tabelite korral v\u00f5ib see olla \u00fcsna t\u00fclikas:<\/p>\n<pre><code class=\"sql\">SELECT\n    *\nFROM Application.Countries (NOLOCK)\nWHERE %%lockres%% = '(ce52f92a058c)';\nGO<\/code><\/pre>\n<p>\nOlen lisanud NOLOCK (<noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/Aschenbrenner\/status\/788036874891853824\">Klaus Aschenbrenneri soovitusel Twitteris<\/a><\/noindex>) kuna blokeeringud v\u00f5ivad probleemiks muutuda. Me tahame lihtsalt vaadata, mis seal hetkel toimub, mitte seda, mis seal oli, kui tehing algas \u2014 ei arva, et andmete j\u00e4rjepidevus on meile oluline.<br \/>\nV\u00f5ta n\u00e4pust, see on rekord, mille nimel me v\u00f5itlesime!<br \/>\n<img decoding=\"async\" alt=\"Dekodeerime Key ja Page WaitResource deadlock&#039;ides ja lukustustes.\" src=\"\/wp-content\/uploads\/2020\/10\/4107bfa33261ea62d17f27f61b1b4c23.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h3>T\u00e4nud ja edasine lugemine<\/h3>\n<p>\nEi m\u00e4leta, kes esimesena paljusid neist asjadest kirjutas, aga siin on kaks postitust k\u00f5ige v\u00e4hem dokumenteeritud asjadest, mis v\u00f5ivad teile meeldida:<\/p>\n<ul>\n<li>Paul Randali postitus <noindex><a rel=\"nofollow\" href=\"http:\/\/www.sqlskills.com\/blogs\/paul\/sql-server-2008-new-undocumented-physical-row-locator-function\/\">%%physloc%% ja sys.fn_PhysLocFormatter<\/a><\/noindex> (kuidas me oma andmeid esimeses n\u00e4ites leidisime)<\/li>\n<li>K\u00fcsimus StackOverflow's <noindex><a rel=\"nofollow\" href=\"https:\/\/dba.stackexchange.com\/questions\/106762\/how-can-i-convert-a-key-in-a-sql-server-deadlock-report-to-the-value\">%%lockres%% kasutamisest<\/a><\/noindex> (kuidas me andmeid teises n\u00e4ites leidisime). \u00dcks vastustest viib postituseni <noindex><a rel=\"nofollow\" href=\"http:\/\/www.scarydba.com\/2010\/03\/18\/undocumented-virtual-column-lockres\/\">Grant Fritchey %%lockres%%-ist, mis on kirjutatud juba 2010. aastal<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/524098\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0447\u0451\u0442\u043e\u043c \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 (blocked process report) \u0438\u043b\u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 \u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 SQL Server&#8217;\u043e\u043c, \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c\u0438 \u0448\u0442\u0443\u043a\u0430\u043c\u0438: waitresource=\u201cPAGE: 6:3:70133\u201c waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201c \u0418\u043d\u043e\u0433\u0434\u0430, \u0432 \u0442\u043e\u043c \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u043e\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0438\u0437\u0443\u0447\u0430\u0435\u0442\u0435, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 (\u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0430), \u043d\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":97703,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-97702","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0447\u0451\u0442\u043e\u043c \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 (blocked process report) \u0438\u043b\u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 \u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 SQL Server&#039;\u043e\u043c, \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c\u0438 \u0448\u0442\u0443\u043a\u0430\u043c\u0438: waitresource=\u201cPAGE: 6:3:70133\u201c waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201c \u0418\u043d\u043e\u0433\u0434\u0430, \u0432 \u0442\u043e\u043c \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u043e\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0438\u0437\u0443\u0447\u0430\u0435\u0442\u0435, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 (\u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0430), \u043d\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u043c Key \u0438 Page WaitResource \u0432 \u0434\u0435\u0434\u043b\u043e\u043a\u0430\u0445 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0447\u0451\u0442\u043e\u043c \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 (blocked process report) \u0438\u043b\u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 \u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 SQL Server&#039;\u043e\u043c, \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c\u0438 \u0448\u0442\u0443\u043a\u0430\u043c\u0438: waitresource=\u201cPAGE: 6:3:70133\u201c waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201c \u0418\u043d\u043e\u0433\u0434\u0430, \u0432 \u0442\u043e\u043c \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u043e\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0438\u0437\u0443\u0447\u0430\u0435\u0442\u0435, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 (\u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0430), \u043d\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-20T18:42:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-20T18:42:28+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Dekodeerime Key ja Page WaitResource ummikutes ja lukustustes | ProHoster","description":"Kui kasutate blokeeringute aruanne (blocked process report) v\u00f5i kogute SQL Server'i pakutud deadlock graafe aeg-ajalt, siis kohtate selliseid asju: waitresource=\u201cPAGE: 6:3:70133\u201c waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201c. M\u00f5nikord on selles hiiglaslikus XML-is, mida uurite, rohkem teavet (deadlock graafides on loetelu ressurssidest, mis aitavad tuvastada objekti ja indeksi nimesid), kuid mitte alati.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u043c Key \u0438 Page WaitResource \u0432 \u0434\u0435\u0434\u043b\u043e\u043a\u0430\u0445 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 | ProHoster","og:description":"\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0447\u0451\u0442\u043e\u043c \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445 (blocked process report) \u0438\u043b\u0438 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0435 \u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0435 SQL Server'\u043e\u043c, \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438, \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c\u0438 \u0448\u0442\u0443\u043a\u0430\u043c\u0438: waitresource=\u201cPAGE: 6:3:70133\u201c waitresource=\u201cKEY: 6:72057594041991168 (ce52f92a058c)\u201c \u0418\u043d\u043e\u0433\u0434\u0430, \u0432 \u0442\u043e\u043c \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u043e\u043c XML, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0438\u0437\u0443\u0447\u0430\u0435\u0442\u0435, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 (\u0433\u0440\u0430\u0444\u044b \u0434\u0435\u0434\u043b\u043e\u043a\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438 \u0438\u043d\u0434\u0435\u043a\u0441\u0430), \u043d\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rasshifrovyvaem-key-i-page-waitresource-v-dedlokah-i-blokirovkah","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-20T18:42:28+00:00","article:modified_time":"2020-10-20T18:42:28+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"97702","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:15:26","updated":"2022-10-03 07:13:25"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/97702","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=97702"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/97702\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/97703"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=97702"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=97702"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=97702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}