Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0af49ed

Browse files
Will show cached params for
1 parent 1c8d7e6 commit 0af49ed

File tree

2 files changed

+28
-10
lines changed

2 files changed

+28
-10
lines changed

‎sp_BlitzCache.sql‎

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2937,6 +2937,7 @@ RAISERROR(N'Getting information about implicit conversions and stored proc param
29372937
WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
29382938
,
29392939
parameterization_type AS (
2940+
--WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
29402941
SELECT
29412942
qp.n.value('@StatementParameterizationType', 'INT') AS StatementParameterizationType,
29422943
qp.n.value('@StatementOptmLevel', 'VARCHAR(100)') AS StatementOptmLevel,
@@ -2962,8 +2963,7 @@ AS (
29622963
JOIN ##bou_BlitzCacheProcs AS b
29632964
ON b.QueryHash = qp.QueryHash
29642965
CROSS APPLY qp.query_plan.nodes('//p:QueryPlan/p:ParameterList/p:ColumnReference') AS q(n)
2965-
WHERE b.implicit_conversions = 1
2966-
AND b.SPID = @@SPID ),
2966+
WHERE b.SPID = @@SPID ),
29672967
convert_implicit
29682968
AS (
29692969
--WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
@@ -3067,7 +3067,7 @@ SELECT DISTINCT
30673067
ci.StatementParameterizationType,
30683068
ci.StatementOptmLevel
30693069
FROM variables_types AS vt
3070-
RIGHT JOIN convert_implicit AS ci
3070+
FULL JOIN convert_implicit AS ci
30713071
ON (ci.variable_name = vt.variable_name
30723072
AND ci.QueryHash = vt.QueryHash)
30733073
OPTION(RECOMPILE);
@@ -3080,7 +3080,15 @@ SET s.variable_datatype = CASE WHEN s.variable_datatype LIKE '%(%)%' THEN
30803080
s.converted_to = CASE WHEN s.converted_to LIKE '%(%)%' THEN
30813081
LEFT(s.converted_to, CHARINDEX('(', s.converted_to) - 1)
30823082
ELSE s.converted_to
3083-
END
3083+
END,
3084+
s.compile_time_value = CASE WHEN s.compile_time_value LIKE '%(%)%' THEN
3085+
SUBSTRING(s.compile_time_value,
3086+
CHARINDEX('(', s.compile_time_value) + 1,
3087+
CHARINDEX(')', s.compile_time_value) - 1
3088+
- CHARINDEX('(', s.compile_time_value)
3089+
)
3090+
ELSE s.compile_time_value
3091+
END
30843092
FROM #stored_proc_info AS s;
30853093

30863094

@@ -3179,7 +3187,7 @@ FROM ##bou_BlitzCacheProcs AS b
31793187
JOIN precheck pk
31803188
ON pk.SqlHandle = b.SqlHandle
31813189
AND pk.SPID = b.SPID
3182-
AND b.implicit_conversions = 1
3190+
AND (b.implicit_conversions = 1 ORb.QueryType<>'Statement')
31833191
OPTION(RECOMPILE);
31843192

31853193
END; --End implicit conversion information gathering

‎sp_BlitzQueryStore.sql‎

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2812,7 +2812,9 @@ IF EXISTS ( SELECT 1
28122812

28132813
WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
28142814
, parameterization_type
2815-
AS ( SELECT qp.n.value('@StatementParameterizationType', 'INT') AS StatementParameterizationType,
2815+
AS (
2816+
--WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
2817+
SELECT qp.n.value('@StatementParameterizationType', 'INT') AS StatementParameterizationType,
28162818
qp.n.value('@StatementOptmLevel', 'VARCHAR(100)') AS StatementOptmLevel,
28172819
wm.query_hash
28182820
FROM #working_plan_text AS b
@@ -2833,7 +2835,7 @@ IF EXISTS ( SELECT 1
28332835
JOIN #working_warnings AS b
28342836
ON b.query_hash = qp.query_hash
28352837
CROSS APPLY qp.query_plan.nodes('//p:QueryPlan/p:ParameterList/p:ColumnReference') AS q(n)
2836-
WHEREb.implicit_conversions=1),
2838+
),
28372839
convert_implicit
28382840
AS (
28392841
--WITH XMLNAMESPACES ( 'http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS p )
@@ -2927,7 +2929,7 @@ IF EXISTS ( SELECT 1
29272929
ci.StatementParameterizationType,
29282930
ci.StatementOptmLevel
29292931
FROM variables_types AS vt
2930-
RIGHT JOIN convert_implicit AS ci
2932+
FULL JOIN convert_implicit AS ci
29312933
ON ( ci.variable_name = vt.variable_name
29322934
AND ci.query_hash = vt.query_hash )
29332935
OPTION ( RECOMPILE );
@@ -2940,7 +2942,15 @@ IF EXISTS ( SELECT 1
29402942
s.converted_to = CASE WHEN s.converted_to LIKE '%(%)%' THEN
29412943
LEFT(s.converted_to, CHARINDEX('(', s.converted_to) - 1)
29422944
ELSE s.converted_to
2943-
END
2945+
END,
2946+
s.compile_time_value = CASE WHEN s.compile_time_value LIKE '%(%)%' THEN
2947+
SUBSTRING(s.compile_time_value,
2948+
CHARINDEX('(', s.compile_time_value) + 1,
2949+
CHARINDEX(')', s.compile_time_value) - 1
2950+
- CHARINDEX('(', s.compile_time_value)
2951+
)
2952+
ELSE s.compile_time_value
2953+
END
29442954
FROM #stored_proc_info AS s;
29452955

29462956

@@ -3033,7 +3043,7 @@ IF EXISTS ( SELECT 1
30333043
FROM #working_warnings AS b
30343044
JOIN precheck AS pk
30353045
ON pk.sql_handle = b.sql_handle
3036-
AND b.implicit_conversions = 1
3046+
AND (b.implicit_conversions = 1ORb.proc_or_function_name<>'Statement')
30373047
OPTION ( RECOMPILE );
30383048

30393049
END; --End implicit conversion information gathering

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /