powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / fbtracemgr: разные мелкие вопросы
25 сообщений из 201, страница 5 из 9
fbtracemgr: разные мелкие вопросы
    #37600282
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovНу так и влепи самому себе выговор за неиспользование "DatabaseAccess=None".Подумаю над этим... :-)
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37629703
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очередной вопрос. Тем, кто знает линух :-)

Допустим, на работу приложения с большим кол-вом коннектов и большой активностью юзеров включен аудит.
Содержимое конфига аудита не оставляет сомнений, что серверу будет жарко:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<database (%[\\/](replcfg|prod_file).fdb)|(prod_alias)>
  enabled true
  log_filename /var/db/firebird/trace/prodtrace.log
  log_connections true
  log_transactions true
  log_statement_finish true
  log_trigger_start true
  log_trigger_finish true
#  print_plan true
  log_procedure_start true
  log_procedure_finish true
  print_perf true
  max_sql_length 4096
  time_threshold 0
  max_log_size 10
</database>
Половина сегодняшнего дня показала, что в каталоге /var/db/firebird/trace/ идёт очень серьёзная деятельность: каждые 5-10 сек создается файлик в 10 Мб (согласно директиве max_log_size 10).
Очевидно, что за "головной" лог (prodtrace.log - в который сейчас пытаются писать полторы сотни процессов) идёт борьба и fb_inet_server'ы выстраиваются в очередь.

ВОПРОС. Есть ли в линухе команда, выдающая "на гор а " общее кол-во процессов, зависших в очереди на запись в заданный файл ?

PS. Модераторам: прошу пока не переносить этот вопрос в Linux-раздел. Я продублирую его там, если ответа здесь не будет.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37657252
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Давно хотел спросить, да всё как-то стеснялся: а почему трейс для свипа показывает сначала start/commit, а только после этого attach/detach ?
Конфиг трейса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
enabled true
  log_context true
  log_filename zaudit.log
  log_connections true
  log_transactions true

  log_statement_start true
  log_statement_finish true

  log_trigger_start true
  log_trigger_finish true

  log_blr_requests true
  print_perf true
  print_blr true

  time_threshold 0
  max_sql_length 2000
  max_blr_length 2000
  max_dyn_length 2000
  max_log_size 0
Протокол деяний:
Код: plaintext
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.
Trace session ID 9 started
2012-02-11T17:50:13.4840 (424:020DB798) TRACE_INIT
        SESSION_9


2012-02-11T17:50:13.4840 (424:020DB798) START_TRANSACTION
        C:\1INSTALL\FIREBIRD\DATA\T1.FDB (ATT_87, SYSDBA:NONE, NONE, TCPv4:127.0.0.1)
        C:\1INSTALL\FIREBIRD\FB_2_5\bin\gfix.exe:1360
                (TRA_348, READ_COMMITTED | REC_VERSION | WAIT | READ_ONLY)

2012-02-11T17:50:14.0310 (424:020DB798) COMMIT_TRANSACTION
        C:\1INSTALL\FIREBIRD\DATA\T1.FDB (ATT_87, SYSDBA:NONE, NONE, TCPv4:127.0.0.1)
        C:\1INSTALL\FIREBIRD\FB_2_5\bin\gfix.exe:1360
                (TRA_348, READ_COMMITTED | REC_VERSION | WAIT | READ_ONLY)
      0 ms

2012-02-11T17:50:14.0620 (424:020DB798) ATTACH_DATABASE
        C:\1INSTALL\FIREBIRD\DATA\T1.FDB (ATT_87, SYSDBA:NONE, NONE, TCPv4:127.0.0.1)
        C:\1INSTALL\FIREBIRD\FB_2_5\bin\gfix.exe:1360

2012-02-11T17:50:14.0620 (424:020DB798) DETACH_DATABASE
        C:\1INSTALL\FIREBIRD\DATA\T1.FDB (ATT_87, SYSDBA:NONE, NONE, TCPv4:127.0.0.1)
        C:\1INSTALL\FIREBIRD\FB_2_5\bin\gfix.exe:1360

2012-02-11T17:50:14.0620 (424:020DB798) TRACE_FINI
        SESSION_9
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37657307
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

такова реализация свипа и трейса. Свип выполняется как часть аттача, через соответствующие тэги DPB. Т.е. начинается аттач, проверяются права, инициализируются внутренние структуры, делается свип (валидация/прочее работчающее через DPB) и только потом аттач считается завершенным. Именно в этот момент трейс и логгирует событие. Поэтому транзакция свипа оказывается в логе раньше аттача. Правильный порядок вывести затруднительно, т.к. неожиданные исключения во время свипа и т.п. будут трактоваться как неудачный аттач и его надо логгировать именно так.

Решением тут может служить разве что разбивка аттача на два события, а-ля "begin-attach" и "end-attach".
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37673297
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решил протрассировать IBE, когда он выполняет select count(*) from some_table.
Понятно, что он лезет в кучу системных таблиц (хотя надо всего лишь count(*))
Код: plaintext
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.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
Statement 9026569:
-------------------------------------------------------------------------------
select count(*) from doc

1 records fetched
    940 ms, 17497 read(s), 2053088 fetch(es)

Table                             Natural     Index    Update    Insert    Delete   Backout     Purge   Expunge
***************************************************************************************************************
DOC                               1009048

2012-02-21T19:47:03.9000 (19382:0x7f711824b448) START_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884712, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

2012-02-21T19:47:03.9010 (19382:0x7f711824b448) EXECUTE_STATEMENT_START
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884712, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026570:
-------------------------------------------------------------------------------
SELECT RDB$RELATION_ID, RDB$RELATION_NAME FROM RDB$RELATIONS
WHERE RDB$RELATION_ID IN (128)


2012-02-21T19:47:03.9020 (19382:0x7f711824b448) EXECUTE_STATEMENT_FINISH
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884712, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026570:
-------------------------------------------------------------------------------
SELECT RDB$RELATION_ID, RDB$RELATION_NAME FROM RDB$RELATIONS
WHERE RDB$RELATION_ID IN (128)

1 records fetched
      0 ms, 1 read(s), 4 fetch(es)

Table                             Natural     Index    Update    Insert    Delete   Backout     Purge   Expunge
***************************************************************************************************************
RDB$RELATIONS                                     1

2012-02-21T19:47:03.9020 (19382:0x7f711824b448) COMMIT_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884712, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)
      0 ms, 1 read(s), 1 write(s), 1 fetch(es), 1 mark(s)

2012-02-21T19:47:03.9050 (19382:0x7f711824b448) START_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884713, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

2012-02-21T19:47:03.9060 (19382:0x7f711824b448) EXECUTE_STATEMENT_START
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884713, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026571:
-------------------------------------------------------------------------------
select RDB$RELATION_NAME from RDB$RELATIONS
where (RDB$RELATION_NAME = 'DOC') and
(RDB$VIEW_BLR is NULL)


2012-02-21T19:47:03.9060 (19382:0x7f711824b448) EXECUTE_STATEMENT_FINISH
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884713, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026571:
-------------------------------------------------------------------------------
select RDB$RELATION_NAME from RDB$RELATIONS
where (RDB$RELATION_NAME = 'DOC') and
(RDB$VIEW_BLR is NULL)

1 records fetched
      0 ms, 1 read(s), 4 fetch(es)

Table                             Natural     Index    Update    Insert    Delete   Backout     Purge   Expunge
***************************************************************************************************************
RDB$RELATIONS                                     1

2012-02-21T19:47:03.9070 (19382:0x7f711824b448) COMMIT_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884713, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)
      0 ms, 1 read(s), 1 write(s), 1 fetch(es), 1 mark(s)

2012-02-21T19:47:03.9070 (19382:0x7f711824b448) START_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884714, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

2012-02-21T19:47:03.9090 (19382:0x7f711824b448) EXECUTE_STATEMENT_START
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884714, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026572:
-------------------------------------------------------------------------------
select rc.rdb$constraint_name,
iseg.rdb$field_name,
i.rdb$index_inactive
from rdb$relation_constraints rc, rdb$index_segments iseg, rdb$indices i
where (iseg.rdb$index_name = rc.rdb$index_name) and (i.rdb$index_name = rc.rdb$index_name)
and (rc.rdb$constraint_type = 'PRIMARY KEY')
and (rc.rdb$relation_name = 'DOC')
order by iseg.rdb$field_position


2012-02-21T19:47:03.9100 (19382:0x7f711824b448) EXECUTE_STATEMENT_FINISH
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884714, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026572:
-------------------------------------------------------------------------------
select rc.rdb$constraint_name,
iseg.rdb$field_name,
i.rdb$index_inactive
from rdb$relation_constraints rc, rdb$index_segments iseg, rdb$indices i
where (iseg.rdb$index_name = rc.rdb$index_name) and (i.rdb$index_name = rc.rdb$index_name)
and (rc.rdb$constraint_type = 'PRIMARY KEY')
and (rc.rdb$relation_name = 'DOC')
order by iseg.rdb$field_position

1 records fetched
      0 ms, 7 read(s), 14 fetch(es)

Table                             Natural     Index    Update    Insert    Delete   Backout     Purge   Expunge
***************************************************************************************************************
RDB$INDEX_SEGMENTS                                1
RDB$INDICES                                       1
RDB$RELATION_CONSTRAINTS                          1

2012-02-21T19:47:03.9100 (19382:0x7f711824b448) COMMIT_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884714, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)
      0 ms, 1 read(s), 1 write(s), 1 fetch(es), 1 mark(s)

2012-02-21T19:47:03.9120 (19382:0x7f711824b448) START_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884715, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

2012-02-21T19:47:03.9150 (19382:0x7f711824b448) EXECUTE_STATEMENT_START
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884715, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026573:
-------------------------------------------------------------------------------
select f.rdb$field_name,
f.rdb$field_source,
f.rdb$null_flag,
f.rdb$default_source,
fs.rdb$null_flag,
fs.rdb$field_name,
fs.rdb$field_type,
fs.rdb$field_length,
fs.rdb$field_scale,
fs.rdb$field_sub_type,
fs.rdb$segment_length,
fs.rdb$dimensions,
d.rdb$dimension,
d.rdb$lower_bound,
d.rdb$upper_bound,
fs.rdb$character_set_id,
f.rdb$collation_id,
cr.rdb$character_set_name,
co.rdb$collation_name,
f.rdb$field_position,
fs.rdb$computed_source,
fs.rdb$character_length,
fs.rdb$default_source,
f.rdb$description,
fs.rdb$collation_id
,fs.rdb$field_precision
from rdb$relation_fields f
left join rdb$fields fs on fs.rdb$field_name = f.rdb$field_source
left join rdb$field_dimensions d on d.rdb$field_name = fs.rdb$field_name
left join rdb$character_sets cr on fs.rdb$character_set_id = cr.rdb$character_set_id
left join rdb$collations co on ((f.rdb$collation_id = co.rdb$collation_id) and
(fs.rdb$character_set_id = co.rdb$character_set_id))
where f.rdb$relation_name = 'DOC'
order by f.rdb$fie...

2012-02-21T19:47:03.9170 (19382:0x7f711824b448) EXECUTE_STATEMENT_FINISH
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884715, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)

Statement 9026573:
-------------------------------------------------------------------------------
select f.rdb$field_name,
f.rdb$field_source,
f.rdb$null_flag,
f.rdb$default_source,
fs.rdb$null_flag,
fs.rdb$field_name,
fs.rdb$field_type,
fs.rdb$field_length,
fs.rdb$field_scale,
fs.rdb$field_sub_type,
fs.rdb$segment_length,
fs.rdb$dimensions,
d.rdb$dimension,
d.rdb$lower_bound,
d.rdb$upper_bound,
fs.rdb$character_set_id,
f.rdb$collation_id,
cr.rdb$character_set_name,
co.rdb$collation_name,
f.rdb$field_position,
fs.rdb$computed_source,
fs.rdb$character_length,
fs.rdb$default_source,
f.rdb$description,
fs.rdb$collation_id
,fs.rdb$field_precision
from rdb$relation_fields f
left join rdb$fields fs on fs.rdb$field_name = f.rdb$field_source
left join rdb$field_dimensions d on d.rdb$field_name = fs.rdb$field_name
left join rdb$character_sets cr on fs.rdb$character_set_id = cr.rdb$character_set_id
left join rdb$collations co on ((f.rdb$collation_id = co.rdb$collation_id) and
(fs.rdb$character_set_id = co.rdb$character_set_id))
where f.rdb$relation_name = 'DOC'
order by f.rdb$fie...
55 records fetched
      0 ms, 15 read(s), 915 fetch(es)

Table                             Natural     Index    Update    Insert    Delete   Backout     Purge   Expunge
***************************************************************************************************************
RDB$FIELDS                                       55
RDB$RELATION_FIELDS                              55
RDB$CHARACTER_SETS                                8
RDB$COLLATIONS                                    5

2012-02-21T19:47:03.9570 (19382:0x7f711824b448) COMMIT_TRANSACTION
        kmain4trace (ATT_103803, SYSDBA:NONE, WIN1251, TCPv4:192.168.43.42)
        C:\Mix\IBE\IBExpert.exe:2252
                (TRA_243884715, READ_COMMITTED | REC_VERSION | WAIT | READ_WRITE)
      0 ms, 1 read(s), 1 write(s), 1 fetch(es), 1 mark(s)
- это сейчас неважно.
Непонятно, почему после этого при прерывании трейса по Ctrl-C на консоли получил:
Код: plaintext
^CUnknown tag (4) in isc_svc_query() results

Что означает это сообщение ?
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37673300
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PS. в логе ФБ в этот момент появилось:
Код: plaintext
1.
2.
firebird        Tue Feb 21 19:48:29 2012
        Shutting down the server with 0 active connection(s) to 0 database(s), 1 active service(s)
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37673484
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидЧто означает это сообщение ?
недоработка в утилите. Можно занести в трекер, Алекс поправит.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37673607
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrМожно занести в трекер, Алекс поправит.Done. CORE-3769
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693598
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидМожно ли сделать точность выводимого времени настраиваемой (скажем, до микросекунд) ? up!
Сейчас любое время показывается до 10 мс. И есть подозрение, что оно НЕ округляется по правилам математики, а просто увеличивается до ближайшего большего "круглого" значения, т.е. 11 мс обратятся в 20 мс.
На это утверждение подталкивают неоднократные замеры по секундомеру и проверочное суммирование выведенного времени в логе трейса.
Секундомер показал, к примеру, 5.94 сек, сумма же значений времени вып-я в трейсе равна 8300 мс.
Суммировал так:
Код: plaintext
grep "[:blank:]*ms" trace_144122.txt | awk '{SUM +=$1} END {print SUM}'
- а также просто вытащил текст в эксель и проверил там для верности.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693646
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

Чтобы было что округлять, исходное значение должно быть бОльшей точности. Чего не наличиствует.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693651
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WildSeryисходное значение должно быть бОльшей точности. Чего не наличиствует.в линухе, в виндузе - везде можно получить системное время с точностью до 1 микросекунды (если не до наносек).
Почему трейс выдаёт (или получает) время в виде двух лаптей по карте ?
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693694
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

Может быть, и можно. Но Firebird не получает.
Почему же трейс должен?
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693736
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WildSeryНо Firebird не получает.ну, я как бы и намекаю: хотелка сильная выросла на получение Firebird'ом точного времени и отражение его в трейсе :-)
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693737
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
трейс работает с точностью до 1 миллисекунды. Если где-то точность меньше и/или есть округление, то это делает ОС. Слова насчет микро- и нано-секунд весьма наивны, в реальной жизни все совсем не так. Делать точность выше IMHO не имеет смысла, т.к. накладные расходы на замеры времени будут сильно искажать картину.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693759
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrтрейс работает с точностью до 1 миллисекунды. Если где-то точность меньше и/или есть округление, то это делает ОСну хорошо, если ОС "поглощает" точность, то почему бы не выводит в каких-нибудь тиках ЦПУ или еще в чём-то, лишь бы картина была более приближенная к реальности ?
dimitrнакладные расходы на замеры времени будут сильно искажать картину.А вот как-то не очень бросилось в глаза! Делал вчера тестовый рестор 46-гиговой базы с отражением текущего времени:
Код: plaintext
supertee -tn prod_restored.log gbak -rep production.fbk dummy.fdb -v
- и не было сильного увеличения, всё те же полтора часа (просто ночью всё кажется более долгим :)):

Код: plaintext
1.
2.
3.
4.
5.
6.
[firebird@firebird firebird]$ head -3 prod_restored.log; tail -3 prod_restored.log
Tue Mar  6 00:37:16 2012: gbak:opened file production.fbk
Tue Mar  6 00:37:16 2012: gbak:transportable backup -- data in XDR format
Tue Mar  6 00:37:16 2012: gbak:         backup file is compressed
Tue Mar  6 02:13:13 2012: gbak:    activating and creating deferred index DOC_FK2
Tue Mar  6 02:13:14 2012: gbak:    committing metadata
Tue Mar  6 02:14:00 2012: gbak:finishing, closing, and going home
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693778
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидну хорошо, если ОС "поглощает" точность, то почему бы не выводит в каких-нибудь тиках ЦПУ или еще в чём-то, лишь бы картина была более приближенная к реальности ?
чем тебе это поможет, если ось генерит тики раз в 30 мс, например? Ну таймер у нее так работает.

ТаблоидА вот как-то не очень бросилось в глаза!
я о другом говорю. Нафига выводить микросекунды, если стоимость их получения равна, например, 500 мкс? Что полезного тебе это даст? А пример с рестором вообще дурной, там ЦПУ почти не нагружен.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693821
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrчем тебе это поможет, если ось генерит тики раз в 30 мс, например? Ну таймер у нее так работает.это какая ось так грубо со временем обращается ? например, в винде-2000 еще на java 5 делал я какой-то штатный пример из J2SE, в котором выводилось время до наносекунд (System.nanoTime()).
Откуда оно берётся ? неужто после третьего знака рандомами нас потчуют ?
В линухе ls --full-time выдаёт таймштампы тоже с 9 знаками после запятой - значит, и линух тоже "умеет, когда захочет".
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693844
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrА пример с рестором вообще дурной, там ЦПУ почти не нагружен.Одно из 8 ядер было постоянно загружено, все полтора часа. Примерно на 50-70%.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693859
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть куча разных способов получения времени от системы. Дефолтный гап между соседними значениями последовательных "тиков" на винде - 10-15 мс, так настроен обработчик прерывания. Для трейса мы используем более точный таймер, у меня на машине его точность составляет ~0.4 мкс. На какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37693884
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrНа какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно.
Код: plaintext
1.
uname -a
Linux firebird 2.6.33.3-85.fc13.x86_64 #1 SMP Thu May 6 18:09:49 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
И вот что мне в своё время выдал наш линуксоид:
Код: plaintext
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.
  *-core
       description: Motherboard
       product: X7DB8
       vendor: Supermicro
       physical id: 0
       version: PCB Version

     *-firmware
          description: BIOS
          vendor: Phoenix Technologies LTD
          physical id: 0
          version: 6.00
          date: 12/03/2007
          size: 107KiB
          capacity: 960KiB
          capabilities: pci pnp upgrade shadowing escd cdboot bootselect edd 
                           int13floppy2880 acpi usb ls120boot zipboot biosbootspecification

     *-cpu:0
          description: CPU
          product: Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
          vendor: Intel Corp.
          physical id: 4
          bus info: cpu@0
          slot: LGA771/CPU1
          size: 2500MHz
          width: 64 bits
          capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic 
                           mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe 
                           syscall nx x86-64 constant_tsc arch_perfmon pebs bts rep_good aperfmperf 
                           pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 
                           lahf_lm tpr_shadow vnmi flexpriority
        *-cache
             description: L1 cache
             physical id: 6
             slot: L1 Cache
             size: 16KiB
             capacity: 16KiB
             capabilities: asynchronous internal write-back

etc
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37694009
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrНа какой машине ты меряешь и почему оно у тебя округляется до 10 мс, мне отсюда не видно.А мне показалось, он хочет четвёртую цифру. Это несколько меньше десятков миллисекунд. Раз в сто.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37694040
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WildSeryпоказалось, он хочет четвёртую цифру.Нет, мне достаточно третьей цифры. Если же её никак не получить, то пусть до 0.01 сек, но главное - избавиться от странного ceil'a значений до ближайшей сотой доли секунды. То есть, 0.01 сек должна отразиться как 10, но никак не 20 мс.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37694058
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидОткуда оно берётся ? неужто после третьего знака рандомами нас потчуют ?Ну есть у проца спецрегистры, ну можно их откалибровать ... И что?
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37694071
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovну можно их откалибровать ... И что?просвети, плз, что они содержат ? если на самом деле там точное время, то мне от них надо его с точностью до 0.001 сек. Всё.
...
Рейтинг: 0 / 0
fbtracemgr: разные мелкие вопросы
    #37694091
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидпросвети, плз, что они содержат ?64-разрядные монотонные счётчики.если на самом деле там точное время, то мне от них надо его с точностью до 0.001 сек. Всё.Нет там "точного времени". Есть возможность сравнить два очень коротких интервала в задачах типа: "А какой из вариантов развёртывания цикла быстрее?".

P.S. Не надо тебе миллисекундной точности.
...
Рейтинг: 0 / 0
25 сообщений из 201, страница 5 из 9
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / fbtracemgr: разные мелкие вопросы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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