powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
19 сообщений из 19, страница 1 из 1
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419425
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hi all

у кого- есть ФБ 3.х, снапшот от субботы, проверьте, плз, следующее:
1) запустите какой-нить несложный тест-молотилку, хотя бы вот такое: select count(*) from rdb$types,rdb$types,rdb$types,rdb$types,rdb$types,rdb$types;
2) запустите 4 окошка, в каждом из которых введите:
Код: sql
1.
isql -q -m -i askmon30.sql -o askmon30.log

- где входной скрипт askmon.sql есть вот эта фиговинка:
Код: 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.
set autoddl off;
set list off;
set blob on;
set width mon_user 20;
set width remote_process 30;
set width sql_txt 50;
set width remote_ip 15;
set width rn 3;
commit;
    select
      current_time dts
      -- mon$attachments:
      ,cast(row_number()over(order by mon$attachment_id) as char(3)) rn
      ,a.mon$remote_address remote_IP
      ,a.mon$attachment_id attach_id
      ,a.mon$user mon_user
      ,a.mon$stat_id       stat_id
      ,a.mon$server_pid    server_PID
      ,a.mon$remote_pid    remote_PID
      -- mon$memory_usage:
      ,u.mon$memory_used used_memory
      ,u.mon$memory_allocated alloc_by_OS
      -- mon$io_stats:
      ,i.mon$page_reads reads
      ,i.mon$page_writes writes
      ,i.mon$page_fetches fetches
      ,i.mon$page_marks marks
      -- mon$record_stats:
      ,r.mon$record_seq_reads seq_reads
      ,r.mon$record_idx_reads idx_reads
      ,r.mon$record_inserts ins_cnt
      ,r.mon$record_updates upd_cnt
      ,r.mon$record_deletes del_cnt
      ,r.mon$record_backouts bk_outs
      ,r.mon$record_purges purges
      ,r.mon$record_expunges expunges
      -- aux info:
      ,right(a.mon$remote_process,30) remote_process
      -- mon$statements:
      --,left(cast(s.mon$sql_text as varchar(32760)),50) sql_txt
    from mon$attachments a
    --left join mon$statements s on a.mon$attachment_id = s.mon$attachment_id
    left join mon$memory_usage u on a.mon$stat_id=u.mon$stat_id
    left join mon$io_stats i on a.mon$stat_id=i.mon$stat_id
    left join mon$record_stats r on a.mon$stat_id=r.mon$stat_id
    where
    --a.mon$state=1 and
    a.mon$attachment_id<>current_connection
    --order by a.mon$attachment_id
;
А затем засеките время, например делая через батник и в нём - echo %time% - когда точно "выйдут" четыре isql'я из ФБ.
У мну почему-то получается, что они все выходят... только вместе, т.е. там разница в сотые доли секунды.

У вас также ?
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419433
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

что проверить то хотел? у меня запрос из askmon.sql отработал мгновенно (молотилка при этом молотит), поэтому не могу запустить 4 окошка одновременно. Но у меня винда.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419453
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисчто проверить то хотел? у меня запрос из askmon.sql отработал мгновенно (молотилка при этом молотит), поэтому не могу запустить 4 окошка одновременно. Но у меня винда.нагрузи посильнее, дай ей (молотилке) задание не только селектить, но и МЕНЯТЬ что-нить. И запусти побольше молотилок, штук 50-70 (если твой тачка потянет).
Дай им так поработать 1-2 часа, после чего попробуй стартануть 4 батника с мон-запросами, но с интервалом 5-10 сек. Эти запросы при сильной нагрузке обязательно заткнутся на 2-3 минуты, если не больше.
А проверить надо следующее: одновременно ли они прочухаются, т.е. вернутся в ось ?
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419458
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

хорошо посмотрим

база биллинга. service ~ 10 млн. записей. На datebegin и dateend есть индексы.

update service
set datebegin = dateend,
dateend = datebegin

Посмотрим через час. Сейчас отклик mon$ запроса мгновенный.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419461
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

мда маловато оказалось

------ Performance info ------
Prepare time = 359ms
Execute time = 3m 27s 902ms
Current memory = 141 187 328
Max memory = 146 051 144
Memory buffers = 8 192
Reads from disk to cache = 133 837
Writes from cache to disk = 128 328
Fetches from cache = 75 307 401

придётся посерьезней тестик замутить
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419464
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да и на сборке мусора тоже быстро работает.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419465
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениспридётся посерьезней тестик замутитьу тебя же там была "младшая сестра" таблицы-миллиардерши ? если сохранилась, проиндексируй её и запусти 10-15 dml-окон, меняющих индексированные поля, но только на не пересекающихся диапазонах (по 20-30 млн записей чтобы в каждом было).
И через 15-20 минут уже можно будет проверять.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419469
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

дык грохнул я давно её. Надо заново создавать. Ладно как сделаю отпишусь.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419645
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал такую табличку

Код: sql
1.
2.
3.
4.
CREATE TABLE TBIG (
    FIELD_1  INTEGER,
    FIELD_2  INTEGER
);



наполнил её

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
execute block
as
declare i integer = 1;
begin
  while (i < 200000000) do
  begin
    insert into tbig(field_1, field_2)
    values(:i, -:i);
    i = i + 1;
  end
end



Проиндексировал

Код: sql
1.
2.
CREATE INDEX IDX1 ON TBIG (FIELD_1);
CREATE INDEX IDX2 ON TBIG (FIELD_2);



Запустил молотилки

Код: 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.
connect 'localhost/3051:test' user 'sysdba' password 'masterkey';
update tbig
set field_1 = field_2,
    field_2 = field_1
where field_1 between 1 and 19999999;

connect 'localhost/3051:test' user 'sysdba' password 'masterkey';
update tbig
set field_1 = field_2,
    field_2 = field_1
where field_1 between 20000000 and 39999999;

connect 'localhost/3051:test' user 'sysdba' password 'masterkey';
update tbig
set field_1 = field_2,
    field_2 = field_1
where field_1 between 40000000 and 59999999;

connect 'localhost/3051:test' user 'sysdba' password 'masterkey';
update tbig
set field_1 = field_2,
    field_2 = field_1
where field_1 between 60000000 and 79999999;

connect 'localhost/3051:test' user 'sysdba' password 'masterkey';
update tbig
set field_1 = field_2,
    field_2 = field_1
where field_1 between 80000000 and 99999999;



Подождал 20 минут, потом 30 минут. Запрос мониторинга не даёт видимой задержки. Даже если его запустить через IBE

PLAN JOIN (JOIN (JOIN (A NATURAL, U NATURAL), I NATURAL), R NATURAL)

------ Performance info ------
Prepare time = 16ms
Execute time = 15ms
Avg fetch time = 2,14 ms
Current memory = 191 981 432
Max memory = 192 022 544
Memory buffers = 8 192
Reads from disk to cache = 2
Writes from cache to disk = 17
Fetches from cache = 16 103
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419650
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм... может, от операционки как-то зависит... ладно, понаблюдаю попозже еще раз за этим.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419653
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

у меня всё таки ось под клиентские приложения выстроена - это домашний комп. Там может FB отдан не очень высокий приоритет при работе с IO поэтому у меня особых проблем нет. Ну и база у меня создана со страницей 16K. Кеш - 8K страниц.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419694
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидУ мну почему-то получается, что они все выходят... только вместе, т.е. там разница в сотые доли секунды
а что в этом удивительного? Ждут сброса данных рабочими коннектами они все вместе, потом последовательно но очень быстро создают свои снапшоты и завершаются. В этом случае данные для рабочих коннектов в них должны быть одинаковы.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419718
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrВ этом случае данные для рабочих коннектов в них должны быть одинаковы.Каждый из рабочих коннектов делает задание, по объёму отличающееся от остальных (там random-выбор числа строк, обрабатываемых командами insert/update/delete). К тому же, некоторые рабочие потоки делают только вставки, некоторые - только обновления, остальные - только удаления.
Как у них могут быть одинаковыми данные, которые они выдают для mon$-запроса ?
У мну не сохранился лог мониторных скриптов на раней стадии этого теста (а он начался в субботу утром). Есть подозрение, что эта загадочная "синхронность" наступает далеко не сразу: сейчас, к примеру, идёт почти такой же (по числу окон) тест, но ФБ работает как ClassicServer'er. Он длится менее 2 часов. И я вижу, что 4 окна с мон-скриптом работают " не синхронно".
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419727
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидсейчас, к примеру, идёт почти такой же (по числу окон) тест, но ФБ работает как ClassicServer'er. Он длится менее 2 часов.Очепятка: менее 12 (двенадцати) часов.
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419742
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

мне вот интересно чего у тебя так долго мониторинг думает, что ты успеваешь его несколько раз запустить. И почему у меня в тестах он особо не напрягается. Ось то какая?
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419749
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вопрос тут! Если некий аттач вынужден собирать много-много мусора, выполняя вот это:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
  for
     select first (:v_random_cnt) id
     from tmp t
     where t.id >= :v_random_id -- NB: диапазон записей
     order by id
  into :v_cur_id
  do begin
     ...

- то будет ли этот аттач реагировать на требования "дай инфу для мониторинга!" от других аттачей ?
(т.е. будет ли он в "промежуточной точке", до завершения этого стейтмента, выдавать статистику для mon$-запросов ?)
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419752
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисмне вот интересно чего у тебя так долго мониторинг думает, что ты успеваешь его несколько раз запустить. И почему у меня в тестах он особо не напрягается. Ось то какая?Никакого фокуса нет: я просто стартую 4 окна, в каждом тыркаю по .sh-скрипту, а тот в цикле вызывает isql с запросом к монам. А на выходе - спит секунд 30, после чего всё по-новой.
Ось:
Linux vmoel63.local 2.6.39-400.109.4.el6uek.x86_64 #1 SMP Mon Jul 22 11:44:00 PDT 2013 x86_64 x86_64 x86_64 GNU/Linux
(Oracle Enterprise Linux, правда - виртуалка).
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419760
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидКак у них могут быть одинаковыми данные, которые они выдают для mon$-запроса ?
одинаковые между разными одновременными запросами к MON$-таблицам, т.е. одинаковые снапшоты мониторинга
...
Рейтинг: 0 / 0
FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
    #38419789
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидбудет ли этот аттач реагировать на требования "дай инфу для мониторинга!" от других аттачей ?
будет
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 3.x SS, 4 окна с одинаковым запросом к mon$-таблицам завершаются СТРОГО в 1 время ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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