powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / trace при коннекте к отсутств. базе: странные пропуски действий для каждой 4-й попытки
2 сообщений из 2, страница 1 из 1
trace при коннекте к отсутств. базе: странные пропуски действий для каждой 4-й попытки
    #38849733
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hi all

Дано:
i. WI-T3.0.0.31529 Firebird 3.0, слушает порт 3333
ii. команда isql localhost/3333:c:\temp\a.fdb -i qq, где:
ii.a 'c:\temp\a.fdb' - файл, которого точно нет на машине;
ii.b 'qq' - тривиальный скрипт вида 'quit;', чтобы ISQL не застревал "внутри себя" при обломе коннекта
iii. батник, выводящий в лог текущее время и стартующий трейс, вывод которого также дублируется в лог:
Код: plaintext
1.
2.
3.
4.
5.
6.
@echo off
set log=%1
if .%1.==.. set log=%~n0.log
echo intro batch at %time% | mtee %log%
@echo on
C:\1INSTALL\FIREBIRD\FB30SNAP\fbtracemgr -sta -c %~n0.conf -se localhost/3333:service_mgr -user sysdba -pas masterke | mtee /+ %log%
iv. конфиг трейса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
  enabled = true
  log_errors = true
  time_threshold = 0
  log_connections = true
  log_transactions = true
  log_statement_finish = true
  print_perf = true
  max_sql_length = 16384
  max_log_size = 9999999999


Далее делаю несколько раз один и тот же "прогон":

1. Запуск батника с трейсом, жду ~10 секунд, пока в трейсе не вылезет сообщение об отсоединении от sec3.fdb:
sample
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
intro batch at 13: 53:02 .35 
Trace session ID 1 started
2015-01-07T13: 53:12 .6250 (3080:01803748) TRACE_INIT

        SESSION_1  

        



2015-01-07T13:53:12.6250 (3080:01803748) DETACH_DATABASE

        C:\1INSTALL\FIREBIRD\FB30SNAP\SECURITY3.FDB (ATT_227, SYSDBA:NONE, NONE, <internal>)



2015-01-07T13:53:12.6250 (3080:01803748) TRACE_FINI

        SESSION_1  
2. Только после появления такого сообщения ввожу в другом окне команду isql localhost/3333:c:\temp\a.fdb -i qq, которая вызывает в трейсе появление всякой ругани про отсутствующий файл, "синтаксическую ошибку 123" и проч.
3. Дальше - опять жду 10 сек, пока в трейсе снова не появится сообщение об отсоединении от sec3.fdb.
4. После этого - завершаю трейс и копирую его лог в файлик вида trc_NN.log, где NN - номер прогона.
5. Жду ещё не менее 60 секунд , прежде чем начать прогон NN+1. Это вызвано тем, что в ФБ-3 база security3.fdb имеет настройку linger = 60 sec и остаётся открытой после завершения последнего коннекта. Короче, я дожидаюсь, чтобы она была снова закрытой.

Делаю восемь таких "прогонов". А затем смотрю внимательно на размеры логов:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
dir /-c trc_a_0?.log | findstr /c:.log
 5738 trc_a_01.log
 5738 trc_a_02.log
 5738 trc_a_03.log
  3757 trc_a_04.log 
 5738 trc_a_05.log
 5738 trc_a_06.log
 5738 trc_a_07.log
  3757 trc_a_08.log 

Логи 4 и 8 имеют размер на ~2000 байт меньше остальных.
Сначала я подумкал, что не выдержал 60 сек после 3-го и 7-го прогонов.

Однако эта гипотеза не взлетела
timing 1) прогон-3 завершился в 13:56:24:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
2015-01-07T13:56:24.5150 (3080:01803748) DETACH_DATABASE

        C:\1INSTALL\FIREBIRD\FB30SNAP\SECURITY3.FDB (ATT_234, SYSDBA:NONE, NONE, <internal>)

2015-01-07T13: 56:24 .5150 (3080:01803748) TRACE_FINI

        SESSION_1  

- а прогон-4 начался через 67 сек после этого:
Код: plaintext
1.
2.
3.
4.
intro batch at 13: 57:31 .29 
Trace session ID 2 started
2015-01-07T13:57:41.4370 (3080:01803748) TRACE_INIT

        SESSION_2  
(см в аттаче файлы trc_a_03.log и trc_a_04.log)

2) прогон-7 завершился в 14:28:11
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
2015-01-07T14:28:11.8590 (3640:01803748) DETACH_DATABASE

        C:\1INSTALL\FIREBIRD\FB30SNAP\SECURITY3.FDB (ATT_250, SYSDBA:NONE, NONE, <internal>)



2015-01-07T14:28:11.8590 (3640:01803748) TRACE_FINI

        SESSION_1  

- а прогон-8 начался через 63 сек после этого:
Код: plaintext
1.
2.
3.
4.
5.
intro batch at 14:29:14.20 
Trace session ID 2 started
2015-01-07T14:29:24.3590 (3640:01803748) TRACE_INIT

        SESSION_2  
(см в аттаче файлы trc_a_07.log и trc_a_07.log)


Что тогда послужило причиной "укорачивания" списка выполненных д-вий в прогонах 4 и 8 ?

PS. В аттаче - логи трейса.
...
Рейтинг: 0 / 0
trace при коннекте к отсутств. базе: странные пропуски действий для каждой 4-й попытки
    #38849741
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще неоднократно видел следующее: в трейсе при каких-то фазах Меркурия может быть так, что финальный дисконнект (от sec3.fdb) происходит не через 10, а через 60 сек.
Закономерность установить не смог, нерегулярно как-то (см аттач).
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / trace при коннекте к отсутств. базе: странные пропуски действий для каждой 4-й попытки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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