@@ -8872,6 +8872,8 @@ internal Task TdsExecuteRPC(SqlCommand cmd, _SqlRPC[] rpcArray, int timeout, boo
88728872                        // Stream out parameters
88738873                        int parametersLength = rpcext.userParamCount + rpcext.systemParamCount;
88748874
8875+                         bool isAdvancedTraceOn = SqlClientEventSource.Log.IsAdvancedTraceOn();
8876+ 
88758877                        for (int i = (ii == startRpc) ? startParam : 0; i < parametersLength; i++)
88768878                        {
88778879                            byte options = 0;
@@ -8904,7 +8906,7 @@ internal Task TdsExecuteRPC(SqlCommand cmd, _SqlRPC[] rpcArray, int timeout, boo
89048906
89058907                            if (mt.IsNewKatmaiType)
89068908                            {
8907-                                 WriteSmiParameter(param, i, 0 != (options & TdsEnums.RPC_PARAM_DEFAULT), stateObj);
8909+                                 WriteSmiParameter(param, i, 0 != (options & TdsEnums.RPC_PARAM_DEFAULT), stateObj, isAdvancedTraceOn );
89088910                                continue;
89098911                            }
89108912
@@ -9601,7 +9603,7 @@ private void WriteParameterName(string parameterName, TdsParserStateObject state
96019603            }
96029604        }
96039605
9604-         private void WriteSmiParameter(SqlParameter param, int paramIndex, bool sendDefault, TdsParserStateObject stateObj)
9606+         private void WriteSmiParameter(SqlParameter param, int paramIndex, bool sendDefault, TdsParserStateObject stateObj, bool advancedTraceIsOn )
96059607        {
96069608            //
96079609            // Determine Metadata
@@ -9651,8 +9653,11 @@ private void WriteSmiParameter(SqlParameter param, int paramIndex, bool sendDefa
96519653                typeCode = MetaDataUtilsSmi.DetermineExtendedTypeCodeForUseWithSqlDbType(metaData.SqlDbType, metaData.IsMultiValued, value, null);
96529654            }
96539655
9654-             var sendDefaultValue = sendDefault ? 1 : 0;
9655-             SqlClientEventSource.Log.AdvancedTraceEvent("<sc.TdsParser.WriteSmiParameter|ADV> {0}, Sending parameter '{1}', default flag={2}, metadata:{3}", ObjectID, param.ParameterName, sendDefaultValue, metaData.TraceString(3));
9656+             if (advancedTraceIsOn)
9657+             {
9658+                 var sendDefaultValue = sendDefault ? 1 : 0;
9659+                 SqlClientEventSource.Log.AdvancedTraceEvent("<sc.TdsParser.WriteSmiParameter|ADV> {0}, Sending parameter '{1}', default flag={2}, metadata:{3}", ObjectID, param.ParameterName, sendDefaultValue, metaData.TraceString(3));
9660+             }
96569661
96579662            //
96589663            // Write parameter metadata
0 commit comments