Разрешение/запрет трассировки выполняемых запросов.
::=
::=
::=
::=
Максимальная длина <символьного литерала>
в опции MESSAGE равна 255 байтов.
Параметр <ключ>
задает параметр трассировки. Его значения аналогичны
значениям ключа /trace, задаваемого при старте ядра СУБД ЛИНТЕР (см. документ «СУБД ЛИНТЕР. Запуск и останов СУБД ЛИНТЕР в среде ОС Windows»). Значения ключа необходимо указывать без пробелов:
/TRACE=DECOMP=FULL; /TRACE=DECOMP=DELAY[=<тики>]
Например,
set trace on ('/trace=decomp=full'); set trace on ('/trace=decomp= delay=50)');
Использование фразы /TRACE
в тексте ключа является обязательным. В
противном случае (например, при выполнении команды SET TRACE ON ('DECOMP=FULL');
) на
консоль ядра СУБД ЛИНТЕР и в файл linter.out
будет выдано сообщение вида:
«INFO: Incorrect argument 'DECOMP=FULL' for TRACE command. Ignored.».
Если параметр <ключ>
не задан, команда по действию аналогична запуску ядра
СУБД с ключом /trace=decomp
set trace on;
Трассировка выполняется в файл lintrace.log
, создаваемый в каталоге БД ЛИНТЕР.
Если файл lintrace.log
уже существует, трассировочная информация добавляется в конец файла.
Если опция FOR CONNECTION
не задана, то устанавливаемый режим трассировки
распространяется на все соединения с БД, в противном случае
устанавливаемый режим относится только к тому соединению, по которому подана
команда.
Установленный режим начинает действовать с момента выполнения команды и распространяется только на вновь открываемые соединения (для текущих открытых соединений режим трассировки не меняется).
Опция MESSAGE
определяет пользовательский текст (например, имя
трассируемого клиентского приложения), который добавляется в трассировочный
файл в начало каждого трассировочного сообщения.
В трассировочный файл <символьный литерал>
опции MESSAGE
записывается в
кодировке ASCII (для ОС типа Windows) и КОИ-8 (в ОС типа UNIX).
При повторном выполнении команды SET TRACE ON
без отключения трассировки с
новыми значениями параметров старые параметры трассировки будут заменены
новыми, а сам файл lintracel.log
переоткрыт не будет.
set trace on ('/trace=decomp=(full)'); select count(*) from auto where personid <= 21; Трассировочная информация: C#3 QUERY: SELECT COUNT(*) FROM <TABLE "SYSTEM"."AUTO" AS T_0> WHERE T_0."PERSONID" <= 21; C#3 DECOMP.C (Start_Cur_Dec): Now computing derived set #0. C#3 OBRSTRAT.C (OBRSTRAT): Start set: TABLE("SYSTEM"."AUTO" AS T_0). Set included 1461 rows. List of predicates: Predicate [strategy #2(one index)]: T_0."PERSONID" <= 21 C#3 PROZA.C (PROZA): Strategy: #2(by indexes). C#3 ODINKL.C (ODINKL): Snap_Bv: 21 rows. Predicate [strategy #2(one index)]: T_0."PERSONID" <= 21 C#3 DECOMP.C (Compute_Group): Get answer from start set. Start set: TABLE("SYSTEM"."AUTO" AS T_0). Rows count: 21. C#3 DECOMP.C (End_Dekart): Derived set #0 is computed, Rows count: 1. C#3 FORMOTW.C (FORMOTW): Read: 5 blocks, write: 3 blocks. Additional statistics for read blocks: converter 1,index 2,data 1,work 0,sorting 0,blob 0,other 0. C#3 FORMOTW.C (FORMOTW): Read logical: 22 blocks, write logical: 0 blocks. C#3 FORMOTW.C (FORMOTW): Journal read: 1 blocks, written: 3 blocks. C#3 FORMOTW.C (FORMOTW): Time of query execution: 00:00:00:00.10