Skip to content

Commit b95bdf3

Browse files
committed
cast event_info as Nvarchar(4000) to stop truncation errors
#2887 Truncation errors were occurring when executing against sys.dm_exec_input_buffer as the event_info from this dmv is an NVARCHAR(MAX) versus DBCC INPUTBUFFER which is NVARCHAR(4000). Added a cast to ensure we are always getting a max of 4000 chars.
1 parent ddf9ac5 commit b95bdf3

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

sp_BlitzWho.sql

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -674,7 +674,7 @@ BEGIN
674674
END - query_stats.statement_start_offset )
675675
/ 2 ) + 1), dest.text) AS query_text ,
676676
'+CASE
677-
WHEN @GetOuterCommand = 1 THEN N'event_info AS outer_command,'
677+
WHEN @GetOuterCommand = 1 THEN N'CAST(event_info AS NVARCHAR(4000)) AS outer_command,'
678678
ELSE N''
679679
END+N'
680680
derp.query_plan ,
@@ -891,7 +891,7 @@ IF @ProductVersionMajor >= 11
891891
END - query_stats.statement_start_offset )
892892
/ 2 ) + 1), dest.text) AS query_text ,
893893
'+CASE
894-
WHEN @GetOuterCommand = 1 THEN N'event_info AS outer_command,'
894+
WHEN @GetOuterCommand = 1 THEN N'CAST(event_info AS NVARCHAR(4000)) AS outer_command,'
895895
ELSE N''
896896
END+N'
897897
derp.query_plan ,
@@ -1071,13 +1071,14 @@ IF @ProductVersionMajor >= 11
10711071
END /* IF @ExpertMode = 1 */
10721072

10731073
SET @StringToExecute +=
1074-
N' FROM sys.dm_exec_sessions AS s
1075-
'+
1074+
N' FROM sys.dm_exec_sessions AS s'+
10761075
CASE
10771076
WHEN @GetOuterCommand = 1 THEN CASE
1078-
WHEN EXISTS(SELECT 1 FROM sys.all_objects WHERE [name] = N'dm_exec_input_buffer') THEN N'OUTER APPLY sys.dm_exec_input_buffer (s.session_id, 0) AS ib'
1079-
ELSE N'LEFT JOIN @inputbuffer ib ON s.session_id = ib.session_id'
1080-
END
1077+
WHEN EXISTS(SELECT 1 FROM sys.all_objects WHERE [name] = N'dm_exec_input_buffer') THEN N'
1078+
OUTER APPLY sys.dm_exec_input_buffer (s.session_id, 0) AS ib'
1079+
ELSE N'
1080+
LEFT JOIN @inputbuffer ib ON s.session_id = ib.session_id'
1081+
END
10811082
ELSE N''
10821083
END+N'
10831084
LEFT JOIN sys.dm_exec_requests AS r

0 commit comments

Comments
 (0)