āĻ…āĻšāĻ˛āĻžāĻŦāĻ¸ā§āĻĨāĻž āĻāĻŦāĻ‚ āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ•ā§€ āĻāĻŦāĻ‚ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ“āĻ¯āĻŧā§‡āĻŸāĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ…āĻŦāĻ°ā§āĻĻā§āĻ§ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§‡āĻĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨ āĻŦāĻž SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻĄā§‡āĻĄāĻ˛āĻ• āĻ—ā§āĻ°āĻžāĻĢāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻ•ā§āĻ°āĻŽā§‡ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°ā§‡āĻ¨, āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡āĻ°āĻ•āĻŽ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻŦā§‡āĻ¨:

waitresource = "āĻĒā§ƒāĻˇā§āĻ āĻž: 6:3:70133"

waitresource=“KEY: 6:72057594041991168 (ce52f92a058c)“

āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻ†āĻĒāĻ¨āĻŋ āĻ¯ā§‡ āĻŦāĻŋāĻļāĻžāĻ˛ XML āĻ…āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻ›ā§‡āĻ¨ āĻ¤āĻžāĻ¤ā§‡ āĻ†āĻ°āĻ“ āĻ¤āĻĨā§āĻ¯ āĻĨāĻžāĻ•āĻŦā§‡ (āĻĄā§‡āĻĄāĻ˛āĻ• āĻ—ā§āĻ°āĻžāĻĢāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻŦāĻ¸ā§āĻ¤ā§ āĻāĻŦāĻ‚ āĻ¸ā§‚āĻšāĻ•ā§‡āĻ° āĻ¨āĻžāĻŽāĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻ•āĻ°ā§‡), āĻ¤āĻŦā§‡ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¨āĻ¯āĻŧāĨ¤

āĻāĻ‡ āĻĒāĻžāĻ ā§āĻ¯āĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻĒāĻžāĻ ā§‹āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻ•āĻ°āĻŦā§‡āĨ¤

āĻāĻ–āĻžāĻ¨ā§‡ āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ, āĻāĻŸāĻŋ āĻ–ā§āĻŦ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ! āĻ†āĻŽāĻŋ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻšāĻžāĻ‡ - DBCC PAGE āĻĨā§‡āĻ•ā§‡ hobt_id āĻāĻŦāĻ‚ āĻ…āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ %%physloc%% āĻāĻŦāĻ‚ %%lockres%% āĻĢāĻžāĻ‚āĻļāĻ¨āĨ¤

āĻĒā§āĻ°āĻĨāĻŽā§‡, āĻ†āĻ¸ā§āĻ¨ PAGE āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻŋ, āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž KEY āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻšāĻ˛ā§‡ āĻ¯āĻžāĻŦāĨ¤

1) waitresource="PAGE: 6:3:70133" = Database_Id: FileId: PageNumber

āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ˛āĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡, SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸ā§‡āĻ‡ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻĻā§‡āĻŦā§‡āĨ¤

"āĻĒā§ƒāĻˇā§āĻ āĻž: 6:3:70133" āĻ­āĻžāĻ™ā§āĻ—āĻ˛ā§‡ āĻ†āĻŽāĻ°āĻž āĻĒāĻžāĻ‡:

  • database_id = 6
  • āĻĄā§‡āĻŸāĻž_āĻĢāĻžāĻ‡āĻ˛_āĻ†āĻ‡āĻĄāĻŋ = 3
  • āĻĒā§ƒāĻˇā§āĻ āĻž_āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž = 70133

1.1) āĻĄā§‡āĻŸāĻžāĻŦā§‡āĻ¸_āĻ†āĻ‡āĻĄāĻŋ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°ā§āĻ¨

āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

SELECT 
    name 
FROM sys.databases 
WHERE database_id=6;
GO

āĻāĻ‡ āĻĒāĻžāĻŦāĻ˛āĻŋāĻ• DB WideWorld Importers āĻ†āĻŽāĻžāĻ° SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡āĨ¤

1.2) āĻĄā§‡āĻŸāĻž āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻāĻœāĻ›ā§‡āĻ¨ - āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻ—ā§āĻ°āĻšā§€ āĻšāĻ¨

āĻ†āĻŽāĻ°āĻž āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻāĻœāĻ¤ā§‡ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒā§‡ data_file_id āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻ¯āĻžāĻšā§āĻ›āĻŋāĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻ•ā§‡āĻŦāĻ˛ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽāĻŸāĻŋāĻ¤ā§‡ āĻ†āĻ—ā§āĻ°āĻšā§€ āĻšāĻ¨, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€āĻ¤ā§‡ data_file_id āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§‡, āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ—ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻšāĻžāĻ˛āĻŋāĻ¯āĻŧā§‡ āĻāĻŸāĻŋ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

USE WideWorldImporters;
GO
SELECT 
    name, 
    physical_name
FROM sys.database_files
WHERE file_id = 3;
GO

WideWorldImporters āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡ āĻāĻŸāĻŋ WWI_UserData āĻ¨āĻžāĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻāĻŦāĻ‚ āĻ†āĻŽāĻŋ āĻāĻŸāĻŋāĻ•ā§‡ C:MSSQLDATAWideWorldImporters_UserData.ndf āĻ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ (āĻ“āĻšā§‹, āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻŽāĻžāĻ•ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻĢāĻžāĻ‡āĻ˛ āĻ°āĻžāĻ–āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ§āĻ°ā§‡āĻ›ā§‡āĻ¨! āĻ¨āĻž! āĻāĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ°ā§€ āĻ›āĻŋāĻ˛)āĨ¤

1.3) DBCC PAGE āĻĨā§‡āĻ•ā§‡ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻžāĻ¨

āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻœāĻžāĻ¨āĻŋ āĻ¯ā§‡ āĻĄāĻžāĻŸāĻž āĻĢāĻžāĻ‡āĻ˛ 70133-āĻāĻ° āĻĒā§ƒāĻˇā§āĻ āĻž #3 WorldWideImporters āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ—āĻ¤āĨ¤ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ DBCC PAGE āĻāĻŦāĻ‚ āĻŸā§āĻ°ā§‡āĻ¸ āĻĒāĻ¤āĻžāĻ•āĻž 3604 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ‡ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤
āĻĻā§āĻ°āĻˇā§āĻŸāĻŦā§āĻ¯: āĻ†āĻŽāĻŋ āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ•ā§‹āĻĨāĻžāĻ“ āĻŦā§āĻ¯āĻžāĻ•āĻ†āĻĒ āĻĨā§‡āĻ•ā§‡ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°āĻž āĻ…āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§‡ DBCC PAGE āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻŋ, āĻ•āĻžāĻ°āĻŖ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ…āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻœāĻŋāĻ¨āĻŋāĻ¸āĨ¤ āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ¤āĻŋāĻ¨āĻŋ āĻĢāĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻĄāĻžāĻŽā§āĻĒ āĻ¤ā§ˆāĻ°āĻŋ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ (āĻĒā§āĻ°āĻžāĻ¯āĻŧ. āĻ…āĻ¨ā§āĻŦāĻžāĻĻāĻ• - āĻ˛āĻŋāĻ™ā§āĻ•āĻŸāĻŋ, āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻļāĻ¤, āĻ•ā§‹āĻĨāĻžāĻ“ āĻŦāĻžāĻĄāĻŧā§‡ āĻ¨āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ‡āĻ‰āĻ†āĻ°āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻšāĻžāĻ° āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻ•āĻ°āĻž āĻ¸ā§‚āĻšā§€āĻ—ā§āĻ˛āĻŋāĻ° āĻ•āĻĨāĻž āĻŦāĻ˛āĻ›āĻŋ).

/* This trace flag makes DBCC PAGE output go to our Messages tab
instead of the SQL Server Error Log file */
DBCC TRACEON (3604);
GO
/* DBCC PAGE (DatabaseName, FileNumber, PageNumber, DumpStyle)*/
DBCC PAGE ('WideWorldImporters',3,70133,2);
GO

āĻĢāĻ˛āĻžāĻĢāĻ˛ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ¸ā§āĻ•ā§āĻ°ā§‹āĻ˛ āĻ•āĻ°āĻ˛ā§‡, āĻ†āĻĒāĻ¨āĻŋ object_id āĻāĻŦāĻ‚ index_id āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤
āĻ…āĻšāĻ˛āĻžāĻŦāĻ¸ā§āĻĨāĻž āĻāĻŦāĻ‚ āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ•ā§€ āĻāĻŦāĻ‚ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ“āĻ¯āĻŧā§‡āĻŸāĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡
āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻļā§‡āĻˇ! āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻŸā§‡āĻŦāĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ¸ā§‚āĻšāĻ•ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻāĻœā§‡ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

USE WideWorldImporters;
GO
SELECT 
    sc.name as schema_name, 
    so.name as object_name, 
    si.name as index_name
FROM sys.objects as so 
JOIN sys.indexes as si on 
    so.object_id=si.object_id
JOIN sys.schemas AS sc on 
    so.schema_id=sc.schema_id
WHERE 
    so.object_id = 94623380
    and si.index_id = 1;
GO

āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻšā§āĻ›āĻŋ āĻ¯ā§‡ āĻ˛āĻ• āĻ“āĻ¯āĻŧā§‡āĻŸāĻŸāĻŋ Sales.OrderLines āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° PK_Sales_OrderLines āĻ¸ā§‚āĻšāĻ•ā§‡ āĻ›āĻŋāĻ˛āĨ¤

āĻĻā§āĻ°āĻˇā§āĻŸāĻŦā§āĻ¯: SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° 2014 āĻāĻŦāĻ‚ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€āĻ¤ā§‡, āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āĻ° āĻ¨āĻžāĻŽāĻŸāĻŋ āĻ…āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ DMO sys.dm_db_database_page_allocations āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ“ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒā§ƒāĻˇā§āĻ āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡, āĻ¯āĻž āĻŦāĻĄāĻŧ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ–ā§āĻŦ āĻ­āĻžāĻ˛ā§‹ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻŋ DBCC PAGE āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤

1.4) āĻŦā§āĻ˛āĻ• āĻ•āĻ°āĻž āĻĒā§ƒāĻˇā§āĻ āĻžāĻ¯āĻŧ āĻĄā§‡āĻŸāĻž āĻĻā§‡āĻ–āĻž āĻ•āĻŋ āĻ¸āĻŽā§āĻ­āĻŦ?

āĻšā§āĻ¯āĻžāĻ āĻ āĻŋāĻ•. āĻ•āĻŋāĻ¨ā§āĻ¤ā§... āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŋ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻāĻŸāĻž āĻĻāĻ°āĻ•āĻžāĻ°?
āĻāĻŽāĻ¨āĻ•āĻŋ āĻ›ā§‹āĻŸ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ“ āĻāĻŸāĻŋ āĻ§ā§€āĻ°āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻž āĻšāĻŽā§ŽāĻ•āĻžāĻ°, āĻ¤āĻžāĻ‡ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ¤āĻĻā§‚āĻ° āĻĒāĻĄāĻŧā§‡āĻ›ā§‡āĻ¨... āĻ†āĻ¸ā§āĻ¨ %%physloc%% āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻŋ!

%% physloc%% āĻšāĻ˛ āĻœāĻžāĻĻā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻĨāĻŋāĻŦāĻŋāĻšā§€āĻ¨ āĻ…āĻ‚āĻļ āĻ¯āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻļāĻžāĻ°ā§€āĻ°āĻŋāĻ• āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻ¤ā§āĻŽāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ° SQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° 2008 āĻāĻŦāĻ‚ āĻ‰āĻšā§āĻšāĻ¤āĻ° sys.fn_PhysLocFormatter āĻ¸āĻš %%physloc%%.

āĻāĻ–āĻ¨ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻœāĻžāĻ¨āĻŋ āĻ¯ā§‡ āĻ†āĻŽāĻ°āĻž Sales.OrderLines-āĻ āĻĒā§ƒāĻˇā§āĻ āĻžāĻŸāĻŋ āĻ˛āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻšā§‡āĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ, āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ‡ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§‡āĻŸāĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ, āĻ¯āĻž āĻĒā§ƒāĻˇā§āĻ āĻž #3-āĻ āĻĄā§‡āĻŸāĻž āĻĢāĻžāĻ‡āĻ˛ #70133 āĻ¤ā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŋāĻ¤ āĻ†āĻ›ā§‡:

Use WideWorldImporters;
GO
SELECT 
    sys.fn_PhysLocFormatter (%%physloc%%),
    *
FROM Sales.OrderLines (NOLOCK)
WHERE sys.fn_PhysLocFormatter (%%physloc%%) like '(3:70133%'
GO

āĻ†āĻŽāĻŋ āĻ¯ā§‡āĻŽāĻ¨ āĻŦāĻ˛ā§‡āĻ›āĻŋ, āĻāĻŸāĻŋ āĻ›ā§‹āĻŸ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ“ āĻ§ā§€āĻ°āĨ¤ āĻ†āĻŽāĻŋ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡ NOLOCK āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĻ›āĻŋ āĻ•āĻžāĻ°āĻŖ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ–āĻ¨āĻ“ āĻ•ā§‹āĻ¨ āĻ—ā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻŸāĻŋ āĻ¨ā§‡āĻ‡ āĻ¯ā§‡ āĻ†āĻŽāĻ°āĻž āĻ¯ā§‡ āĻĄā§‡āĻŸāĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¤āĻž āĻ˛āĻ•āĻŸāĻŋ āĻļāĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ āĻŋāĻ• āĻāĻ•āĻ‡ āĻ°āĻ•āĻŽ - āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻā§‡ āĻ¨ā§‹āĻ‚āĻ°āĻž āĻĒāĻĄāĻŧāĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤
āĻ•āĻŋāĻ¨ā§āĻ¤ā§, āĻšā§āĻ°āĻ°ā§‡, āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€āĻŸāĻŋ āĻ†āĻŽāĻžāĻ•ā§‡ āĻāĻ•āĻ‡ 25āĻŸāĻŋ āĻ¸āĻžāĻ°āĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ¯āĻŧ āĻ¯āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻļā§āĻ¨āĻŸāĻŋ āĻ˛āĻĄāĻŧāĻžāĻ‡ āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛
āĻ…āĻšāĻ˛āĻžāĻŦāĻ¸ā§āĻĨāĻž āĻāĻŦāĻ‚ āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ•ā§€ āĻāĻŦāĻ‚ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ“āĻ¯āĻŧā§‡āĻŸāĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡
PAGE āĻ˛āĻ• āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¯āĻĨā§‡āĻˇā§āĻŸāĨ¤ āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ KEY āĻ˛āĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻŋ?

2) waitresource=“KEY: 6:72057594041991168 (ce52f92a058c)” = Database_Id, HOBT_Id (āĻœāĻžāĻĻā§ āĻšā§āĻ¯āĻžāĻļ āĻ¯āĻž %%lockres%% āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻšāĻžāĻ¨)

āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻ‡āĻ¨āĻĄā§‡āĻ•ā§āĻ¸ā§‡ āĻāĻ•āĻŸāĻŋ āĻ°ā§‡āĻ•āĻ°ā§āĻĄ āĻ˛āĻ• āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ˛āĻ• āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§‡āĻˇ āĻ•āĻ°āĻŦā§‡āĻ¨āĨ¤
"6:72057594041991168 (ce52f92a058c)" āĻ­āĻžāĻ—ā§‡ āĻ­āĻžāĻ— āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĒāĻžāĻ‡:

  • database_id = 6
  • hobt_id = 72057594041991168
  • āĻŽā§āĻ¯āĻžāĻœāĻŋāĻ• āĻšā§āĻ¯āĻžāĻļ = (ce52f92a058c)

2.1) āĻĄā§‡āĻŸāĻžāĻŦā§‡āĻ¸_āĻ†āĻ‡āĻĄāĻŋ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°ā§āĻ¨

āĻāĻŸāĻŋ āĻ āĻŋāĻ• āĻ‰āĻĒāĻ°ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡āĻ° āĻŽāĻ¤ā§‹āĻ‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡! āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻāĻœā§āĻ¨:

SELECT 
    name 
FROM sys.databases 
WHERE database_id=6;
GO

āĻ†āĻŽāĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻŸāĻŋ āĻāĻ–āĻ¨āĻ“ āĻāĻ•āĻ‡ DB WideWorld Importers.

2.2) hobt_id āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°ā§āĻ¨

āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻžāĻĒāĻŸā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ sys.partitions-āĻ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻ• āĻœā§‹āĻĄāĻŧāĻž āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¯āĻž āĻŸā§‡āĻŦāĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ¸ā§‚āĻšāĻ•ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°āĻŦā§‡...

USE WideWorldImporters;
GO
SELECT 
    sc.name as schema_name, 
    so.name as object_name, 
    si.name as index_name
FROM sys.partitions AS p
JOIN sys.objects as so on 
    p.object_id=so.object_id
JOIN sys.indexes as si on 
    p.index_id=si.index_id and 
    p.object_id=si.object_id
JOIN sys.schemas AS sc on 
    so.schema_id=sc.schema_id
WHERE hobt_id = 72057594041991168;
GO

āĻāĻŸāĻŋ āĻ†āĻŽāĻžāĻ•ā§‡ āĻŦāĻ˛ā§‡ āĻ¯ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋāĻ¤ā§‡ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ›āĻŋāĻ˛ā§ˇ PK_Application_Countries āĻ¸ā§‚āĻšāĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĻā§‡āĻļāĻ—ā§āĻ˛āĻŋ āĻ˛āĻ• āĻ•āĻ°ā§‡ā§ˇ

2.3) āĻāĻ–āĻ¨ āĻāĻ•āĻŸā§ āĻŽā§āĻ¯āĻžāĻœāĻŋāĻ• %%lockres%% - āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻœāĻžāĻ¨āĻ¤ā§‡ āĻšāĻžāĻ¨ āĻ•ā§‹āĻ¨ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻ˛āĻ• āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡

āĻ†āĻŽāĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ‡ āĻœāĻžāĻ¨āĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¯ā§‡ āĻ˛āĻ•āĻŸāĻŋ āĻ•ā§‹āĻ¨ āĻ¸āĻžāĻ°āĻŋāĻ¤ā§‡ āĻ›āĻŋāĻ˛, āĻ†āĻŽāĻŋ āĻŸā§‡āĻŦāĻŋāĻ˛āĻŸāĻŋ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°ā§‡ āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻŽā§āĻ¯āĻžāĻœāĻŋāĻ• āĻšā§āĻ¯āĻžāĻļā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻ˛ā§‡ āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻ–ā§āĻāĻœāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ %% lockres%% āĻĢāĻžāĻ‚āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤
āĻĻāĻ¯āĻŧāĻž āĻ•āĻ°ā§‡ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻŦā§‡āĻ¨ āĻ¯ā§‡ āĻāĻ‡ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€āĻŸāĻŋ āĻĒā§āĻ°ā§‹ āĻŸā§‡āĻŦāĻŋāĻ˛āĻŸāĻŋ āĻ¸ā§āĻ•ā§āĻ¯āĻžāĻ¨ āĻ•āĻ°āĻŦā§‡ āĻāĻŦāĻ‚ āĻŦāĻĄāĻŧ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡ āĻāĻŸāĻŋ āĻŽā§‹āĻŸā§‡āĻ“ āĻŽāĻœāĻžāĻĻāĻžāĻ° āĻ¨āĻžāĻ“ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡:

SELECT
    *
FROM Application.Countries (NOLOCK)
WHERE %%lockres%% = '(ce52f92a058c)';
GO

āĻ†āĻŽāĻŋ NOLOCK āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĻ›āĻŋ (āĻŸā§āĻ‡āĻŸāĻžāĻ°ā§‡ āĻ•ā§āĻ˛āĻžāĻ‰āĻ¸ āĻ…ā§āĻ¯āĻžāĻļā§‡āĻ¨āĻŦā§āĻ°ā§‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļā§‡) āĻ•āĻžāĻ°āĻŖ āĻŦā§āĻ˛āĻ•ā§‡āĻœ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻ–āĻ¨ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ•ā§€ āĻ†āĻ›ā§‡ āĻ¤āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻžāĻ‡, āĻāĻŦāĻ‚ āĻ˛ā§‡āĻ¨āĻĻā§‡āĻ¨ āĻļā§āĻ°ā§ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ•ā§€ āĻ›āĻŋāĻ˛ āĻ¤āĻž āĻ¨āĻ¯āĻŧ - āĻ†āĻŽāĻŋ āĻŽāĻ¨ā§‡ āĻ•āĻ°āĻŋ āĻ¨āĻž āĻ¯ā§‡ āĻĄā§‡āĻŸāĻž āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖāĨ¤
āĻ­āĻ¯āĻŧā§‡āĻ˛āĻž, āĻ†āĻŽāĻ°āĻž āĻ¯ā§‡ āĻ°ā§‡āĻ•āĻ°ā§āĻĄā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ˛āĻĄāĻŧāĻžāĻ‡ āĻ•āĻ°ā§‡āĻ›āĻŋ!
āĻ…āĻšāĻ˛āĻžāĻŦāĻ¸ā§āĻĨāĻž āĻāĻŦāĻ‚ āĻ˛āĻ•āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ•ā§€ āĻāĻŦāĻ‚ āĻĒā§ƒāĻˇā§āĻ āĻž āĻ“āĻ¯āĻŧā§‡āĻŸāĻ°āĻŋāĻ¸ā§‹āĻ°ā§āĻ¸ āĻĄāĻŋāĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ¸ā§āĻŦā§€āĻ•ā§ƒāĻ¤āĻŋ āĻāĻŦāĻ‚ āĻ†āĻ°āĻ“ āĻĒāĻĄāĻŧāĻž

āĻ†āĻŽāĻŋ āĻŽāĻ¨ā§‡ āĻ•āĻ°āĻŋ āĻ¨āĻž āĻ¯ā§‡ āĻāĻ‡ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋāĻ° āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻĨāĻŽ āĻ•ā§‡ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°ā§‡āĻ›āĻŋāĻ˛, āĻ¤āĻŦā§‡ āĻāĻ–āĻžāĻ¨ā§‡ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻŽ āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻĻā§āĻŸāĻŋ āĻĒā§‹āĻ¸ā§āĻŸ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨