@@ -154,8 +154,7 @@ SET @VersionDate = '20171201';
154154 database_name NVARCHAR (256 ),
155155 object_name NVARCHAR (1000 ),
156156 finding_group NVARCHAR (100 ),
157- finding NVARCHAR (4000 ),
158- query_text XML
157+ finding NVARCHAR (4000 )
159158 );
160159
161160
@@ -377,74 +376,70 @@ SET @VersionDate = '20171201';
377376 /* Begin checks based on parsed values*/
378377
379378 /* Check 1 is deadlocks by database*/
380- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
379+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
381380 SELECT 1 AS check_id,
382381 DB_NAME (dp .database_id ) AS database_name ,
383- NULL AS object_name ,
382+ ' -' AS object_name ,
384383 ' Total database locks' AS finding_group,
385384 ' This database had '
386385 + CONVERT (NVARCHAR (20 ), COUNT_BIG (DISTINCT dp .event_date ))
387- + ' deadlocks.' ,
388- NULL AS query_text
386+ + ' deadlocks.'
389387 FROM #deadlock_process AS dp
390388 GROUP BY DB_NAME (dp .database_id )
391389 OPTION ( RECOMPILE );
392390
393391 /* Check 2 is deadlocks by object*/
394392
395- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
393+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
396394 SELECT 2 AS check_id,
397395 DB_NAME (dow .database_id ) AS database_name ,
398396 dow .object_name AS object_name ,
399397 ' Total object deadlocks' AS finding_group,
400398 ' This object was involved in '
401399 + CONVERT (NVARCHAR (20 ), COUNT_BIG (DISTINCT dow .object_name ))
402- + ' deadlock(s).' ,
403- NULL AS query_text
400+ + ' deadlock(s).'
404401 FROM #deadlock_owner_waiter AS dow
405402 GROUP BY DB_NAME (dow .database_id ), dow .object_name
406403 OPTION ( RECOMPILE );
407404
408405
409406 /* Check 3 looks for Serializable locking*/
410- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
407+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
411408 SELECT 3 AS check_id,
412409 DB_NAME (dp .database_id ) AS database_name ,
413- NULL AS object_name ,
410+ ' -' AS object_name ,
414411 ' Serializable locking' AS finding_group,
415412 ' This database has had ' +
416413 CONVERT (NVARCHAR (20 ), COUNT_BIG (* )) +
417414 ' instances of serializable deadlocks.'
418- AS finding,
419- NULL AS query_text
415+ AS finding
420416 FROM #deadlock_process AS dp
421417 WHERE dp .isolation_level LIKE ' serializable%'
422418 GROUP BY DB_NAME (dp .database_id )
423419 OPTION ( RECOMPILE );
424420
425421
426422 /* Check 4 looks for Repeatable Read locking*/
427- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
423+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
428424 SELECT 4 AS check_id,
429425 DB_NAME (dp .database_id ) AS database_name ,
430- NULL AS object_name ,
426+ ' -' AS object_name ,
431427 ' Repeatable Read locking' AS finding_group,
432428 ' This database has had ' +
433429 CONVERT (NVARCHAR (20 ), COUNT_BIG (* )) +
434430 ' instances of repeatable read deadlocks.'
435- AS finding,
436- NULL AS query_text
431+ AS finding
437432 FROM #deadlock_process AS dp
438433 WHERE dp .isolation_level LIKE ' repeatable read%'
439434 GROUP BY DB_NAME (dp .database_id )
440435 OPTION ( RECOMPILE );
441436
442437
443438 /* Check 5 breaks down app, host, and login information*/
444- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
439+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
445440 SELECT 5 AS check_id,
446441 DB_NAME (dp .database_id ) AS database_name ,
447- NULL AS object_name ,
442+ ' -' AS object_name ,
448443 ' Login, App, and Host locking' AS finding_group,
449444 ' This database has had ' +
450445 CONVERT (NVARCHAR (20 ), COUNT_BIG (DISTINCT dp .id )) +
@@ -454,8 +449,7 @@ SET @VersionDate = '20171201';
454449 ISNULL (dp .client_app , ' UNKNOWN' ) +
455450 ' on host ' +
456451 ISNULL (dp .host_name , ' UNKNOWN' )
457- AS finding,
458- NULL AS query_text
452+ AS finding
459453 FROM #deadlock_process AS dp
460454 GROUP BY DB_NAME (dp .database_id ), dp .login_name , dp .client_app , dp .host_name
461455 OPTION ( RECOMPILE );
@@ -472,7 +466,7 @@ SET @VersionDate = '20171201';
472466 ON dp .id = dow .owner_id
473467 GROUP BY DB_NAME (dp .database_id ), SUBSTRING (dp .wait_resource , 1 , CHARINDEX (' :' , dp .wait_resource ) - 1 ), dow .object_name
474468 )
475- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
469+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
476470 SELECT DISTINCT 6 AS check_id,
477471 lt .database_name ,
478472 lt .object_name ,
@@ -483,14 +477,13 @@ SET @VersionDate = '20171201';
483477 WHERE lt2 .database_name = lt .database_name
484478 AND lt2 .object_name = lt .object_name
485479 FOR XML PATH (N ' ' ), TYPE ).value (N ' .[1]' , N ' NVARCHAR(MAX)' ), 1 , 1 , N ' ' )
486- + ' locks' ,
487- NULL AS query_text
480+ + ' locks'
488481 FROM lock_types AS lt
489482 OPTION ( RECOMPILE );
490483
491484
492485 /* Check 7 gives you more info queries for sp_BlitzCache */
493- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
486+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
494487 SELECT DISTINCT 7 AS check_id,
495488 DB_NAME (dow .database_id ) AS database_name ,
496489 ds .proc_name AS object_name ,
@@ -502,8 +495,7 @@ SET @VersionDate = '20171201';
502495 ELSE ' @StoredProcName = ' +
503496 QUOTENAME (ds .proc_name , ' '' ' )
504497 END +
505- ' ;' AS finding,
506- NULL AS query_text
498+ ' ;' AS finding
507499 FROM #deadlock_stack AS ds
508500 JOIN #deadlock_owner_waiter AS dow
509501 ON dow .owner_id = ds .id
@@ -519,7 +511,7 @@ SET @VersionDate = '20171201';
519511 PARSENAME (dow .object_name , 1 ) AS table_name
520512 FROM #deadlock_owner_waiter AS dow
521513 )
522- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
514+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
523515 SELECT 8 AS check_id,
524516 bi .database_name ,
525517 bi .schema_name + ' .' + bi .table_name ,
@@ -528,8 +520,7 @@ SET @VersionDate = '20171201';
528520 ' @DatabaseName = ' + QUOTENAME (bi .database_name , ' '' ' ) +
529521 ' , @SchemaName = ' + QUOTENAME (bi .schema_name , ' '' ' ) +
530522 ' , @TableName = ' + QUOTENAME (bi .table_name , ' '' ' ) +
531- ' ;' AS finding,
532- NULL AS query_text
523+ ' ;' AS finding
533524 FROM bi
534525 OPTION ( RECOMPILE );
535526
@@ -566,16 +557,15 @@ SET @VersionDate = '20171201';
566557 CONVERT (VARCHAR (20 ), DATEADD (SECOND, (s .wait_time / 1000 ), 0 ), 108 ) AS wait_time_hms
567558 FROM suey AS s
568559 )
569- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
560+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
570561 SELECT 9 AS check_id,
571562 cs .database_name ,
572563 cs .object_name ,
573564 ' Total object deadlock wait time' AS finding_group,
574565 ' This object has had '
575566 + CONVERT (VARCHAR (10 ), cs .wait_days )
576567 + ' :' + CONVERT (VARCHAR (20 ), cs .wait_time_hms , 108 )
577- + ' [d/h/m/s] of deadlock wait time.' AS finding,
578- NULL AS query_text
568+ + ' [d/h/m/s] of deadlock wait time.' AS finding
579569 FROM chopsuey AS cs
580570 WHERE cs .object_name IS NOT NULL
581571 OPTION ( RECOMPILE );
@@ -587,29 +577,27 @@ SET @VersionDate = '20171201';
587577 FROM #deadlock_process AS dp
588578 GROUP BY DB_NAME (dp .database_id )
589579 )
590- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
580+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
591581 SELECT 10 AS check_id,
592582 wt .database_name ,
593- NULL AS object_name ,
583+ ' -' AS object_name ,
594584 ' Total database deadlock wait time' AS finding_group,
595585 ' This database has had '
596586 + CONVERT (VARCHAR (10 ), (SUM (DISTINCT wt .total_wait_time_ms ) / 1000 ) / 86400 )
597587 + ' :' + CONVERT (VARCHAR (20 ), DATEADD (SECOND, (SUM (DISTINCT wt .total_wait_time_ms ) / 1000 ), 0 ), 108 )
598- + ' [d/h/m/s] of deadlock wait time.' ,
599- NULL AS query_text
588+ + ' [d/h/m/s] of deadlock wait time.'
600589 FROM wait_time AS wt
601590 GROUP BY wt .database_name
602591 OPTION ( RECOMPILE );
603592
604593
605594 /* Thank you goodnight*/
606- INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding, query_text )
595+ INSERT #deadlock_findings ( check_id, database_name , object_name , finding_group, finding )
607596 VALUES ( - 1 ,
608597 N ' sp_BlitzLock ' + CAST (CONVERT (DATETIME , @VersionDate, 102 ) AS VARCHAR (100 )),
609598 N ' SQL Server First Responder Kit' ,
610599 N ' http://FirstResponderKit.org/' ,
611- N ' To get help or add your own contributions, join us at http://FirstResponderKit.org.'
612- , NULL );
600+ N ' To get help or add your own contributions, join us at http://FirstResponderKit.org.' );
613601
614602
615603 WITH deadlocks
@@ -643,8 +631,8 @@ SET @VersionDate = '20171201';
643631 dp .process_xml .value (' (//process/inputbuf/text())[1]' , ' NVARCHAR(MAX)' ) AS inputbuf,
644632 ROW_NUMBER () OVER ( PARTITION BY dp .event_date , dp .id ORDER BY dp .event_date ) AS dn,
645633 dp .is_victim ,
646- ISNULL (dp .owner_mode , ' N/A ' ) AS owner_mode,
647- ISNULL (dp .waiter_mode , ' N/A ' ) AS waiter_mode
634+ ISNULL (dp .owner_mode , ' - ' ) AS owner_mode,
635+ ISNULL (dp .waiter_mode , ' - ' ) AS waiter_mode
648636 FROM #deadlock_process AS dp )
649637 SELECT d .event_date ,
650638 DB_NAME (d .database_id ) AS database_name ,
@@ -670,7 +658,7 @@ SET @VersionDate = '20171201';
670658
671659
672660
673- SELECT df .check_id , df .database_name , df .object_name , df .finding_group , df .finding , df . query_text
661+ SELECT df .check_id , df .database_name , df .object_name , df .finding_group , df .finding
674662 FROM #deadlock_findings AS df
675663 ORDER BY df .check_id
676664 OPTION ( RECOMPILE );
0 commit comments