powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / trace rowcounts
8 сообщений из 8, страница 1 из 1
trace rowcounts
    #39755930
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа такой вопрос:

Пару раз сталкивался с поведением трассировки/сессии XE при событиях SP:StmtCompleted/sp_statement_completed SQL:StmtCompleted / sql_statement_completed что столбец RowCounts который отражает кол-во обработанных строк той или иной инструкцией бывает пустым.

При этом инструкции отражаемые по трассировке по которым было видно такое поведение dml т.е. реальные insert/delete из таблиц. число чтений было не нулевое, а вот rowcounts просто становился пустым, я думал что это глючит сама трасса, но в тот же момент времени на процесс навесил сессию XE и там тоже значения rowcounts отсутствовали.

Вот не могу воспроизвести такое поведение (а главное хотелось бы узнать какие факторы влияют на то что стобец перестает показывать данные).

Есть идеи из-за чего такое может происходить?
...
Рейтинг: 0 / 0
trace rowcounts
    #39756151
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот пожалуйста пример:

что заметил, такое поведение только у одной сессии, если запустить трассу по нескольким то rowcounts нормально отражается по большинству, а вот по некотором встречается такое поведение.

пробовал и с set nocount поиграться, но что то не получается добиться такого эффекта принудительно.
...
Рейтинг: 0 / 0
trace rowcounts
    #39756157
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такой эффект будет, если, например, у SP:Completed RowCounts включить, а у SP:StmtCompleted выключить.
...
Рейтинг: 0 / 0
trace rowcounts
    #39756163
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm,

Включен.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
/****************************************************/
/* Created by: SQL Server 2017 Profiler          */
/* Date: 05/01/2019  19:10:24         */
/****************************************************/


-- Create a Queue
declare @rc int
declare @TraceID int
declare @maxfilesize bigint
set @maxfilesize = 5 

exec @rc = sp_trace_create @TraceID output, 0, N'C:\temp\trc01.trc', @maxfilesize, NULL 
if (@rc != 0) goto error

-- Client side File and Table cannot be scripted

-- Set the events
declare @on bit
set @on = 1
exec sp_trace_setevent @TraceID, 33, 1, @on
exec sp_trace_setevent @TraceID, 33, 11, @on
exec sp_trace_setevent @TraceID, 33, 8, @on
exec sp_trace_setevent @TraceID, 33, 10, @on
exec sp_trace_setevent @TraceID, 33, 12, @on
exec sp_trace_setevent @TraceID, 33, 51, @on
exec sp_trace_setevent @TraceID, 162, 1, @on
exec sp_trace_setevent @TraceID, 162, 11, @on
exec sp_trace_setevent @TraceID, 162, 8, @on
exec sp_trace_setevent @TraceID, 162, 10, @on
exec sp_trace_setevent @TraceID, 162, 12, @on
exec sp_trace_setevent @TraceID, 162, 51, @on
exec sp_trace_setevent @TraceID, 45, 1, @on
exec sp_trace_setevent @TraceID, 45, 9, @on
exec sp_trace_setevent @TraceID, 45, 5, @on
exec sp_trace_setevent @TraceID, 45, 8, @on
exec sp_trace_setevent @TraceID, 45, 10, @on
exec sp_trace_setevent @TraceID, 45, 11, @on
exec sp_trace_setevent @TraceID, 45, 12, @on
exec sp_trace_setevent @TraceID, 45, 13, @on
exec sp_trace_setevent @TraceID, 45, 16, @on
exec sp_trace_setevent @TraceID, 45, 17, @on
exec sp_trace_setevent @TraceID, 45, 26, @on
exec sp_trace_setevent @TraceID, 45, 29, @on
exec sp_trace_setevent @TraceID, 45, 34, @on
exec sp_trace_setevent @TraceID, 45, 35, @on
exec sp_trace_setevent @TraceID, 45, 48, @on
exec sp_trace_setevent @TraceID, 45, 51, @on
exec sp_trace_setevent @TraceID, 45, 64, @on
exec sp_trace_setevent @TraceID, 12, 1, @on
exec sp_trace_setevent @TraceID, 12, 9, @on
exec sp_trace_setevent @TraceID, 12, 11, @on
exec sp_trace_setevent @TraceID, 12, 8, @on
exec sp_trace_setevent @TraceID, 12, 10, @on
exec sp_trace_setevent @TraceID, 12, 12, @on
exec sp_trace_setevent @TraceID, 12, 13, @on
exec sp_trace_setevent @TraceID, 12, 16, @on
exec sp_trace_setevent @TraceID, 12, 17, @on
exec sp_trace_setevent @TraceID, 12, 26, @on
exec sp_trace_setevent @TraceID, 12, 35, @on
exec sp_trace_setevent @TraceID, 12, 48, @on
exec sp_trace_setevent @TraceID, 12, 51, @on
exec sp_trace_setevent @TraceID, 12, 64, @on
exec sp_trace_setevent @TraceID, 41, 1, @on
exec sp_trace_setevent @TraceID, 41, 9, @on
exec sp_trace_setevent @TraceID, 41, 5, @on
exec sp_trace_setevent @TraceID, 41, 8, @on
exec sp_trace_setevent @TraceID, 41, 10, @on
exec sp_trace_setevent @TraceID, 41, 11, @on
exec sp_trace_setevent @TraceID, 41, 12, @on
exec sp_trace_setevent @TraceID, 41, 13, @on
exec sp_trace_setevent @TraceID, 41, 16, @on
exec sp_trace_setevent @TraceID, 41, 17, @on
exec sp_trace_setevent @TraceID, 41, 26, @on
exec sp_trace_setevent @TraceID, 41, 29, @on
exec sp_trace_setevent @TraceID, 41, 35, @on
exec sp_trace_setevent @TraceID, 41, 48, @on
exec sp_trace_setevent @TraceID, 41, 51, @on
exec sp_trace_setevent @TraceID, 41, 64, @on


-- Set the Filters
declare @intfilter int
declare @bigintfilter bigint

exec sp_trace_setfilter @TraceID, 10, 0, 7, N'%IntelliSense%'
exec sp_trace_setfilter @TraceID, 10, 0, 7, N'Приложение SQL Server Profiler - 0d1e7ca7-5047-48c3-9184-4064ecf365ad'
exec sp_trace_setfilter @TraceID, 34, 0, 7, N'SetAPIProcessID'
exec sp_trace_setfilter @TraceID, 34, 0, 7, N'GetAPIProcessID'
-- Set the trace status to start
exec sp_trace_setstatus @TraceID, 1

-- display trace id for future references
select TraceID=@TraceID
goto finish

error: 
select ErrorCode=@rc

finish: 
go




У трассы добавлены следующие события:
Exception
UserErrorMessage
SP:StmtCompleted
SQL:BatchCompleted
SQL:StmtCompleted

у последних трех колонка rowcounts включена
...
Рейтинг: 0 / 0
trace rowcounts
    #39756168
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при этом заметьте если колонку в событие не включать, но она присутствует у других событий она в профайлере будет для этого события пустая желтого цвета.

а у меня они белые, то есть для событий реально отлавливаются, и для других сессий там есть значения, я просто не очень удобно скриншот подобрал.
...
Рейтинг: 0 / 0
trace rowcounts
    #39756189
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
felix_ff,

Тогда, видимо, это баговина...
...
Рейтинг: 0 / 0
trace rowcounts
    #39756203
felix_ff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm,

походу да, это просто край какой то :(

подумал что может сам профайлер глючит - но нет. серверная трасса в файл дает такой же результат время от времени для некоторых сессий он начинает null писать в это поле.

если что:
Microsoft SQL Server 2016 (SP2) (KB4052908) - 13.0.5026.0 (X64)
Mar 18 2018 09:11:49
Copyright (c) Microsoft Corporation
Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: )
...
Рейтинг: 0 / 0
trace rowcounts
    #39756213
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
felix_ff,

Попробуйте последний CU, может поможет.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / trace rowcounts
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]