powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
5 сообщений из 55, страница 3 из 3
ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
    #38854566
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladТем более, что снапшот 31541 уже замещён более свежим 31543Вот два дампа, по нынешнему снапшоту:

https://yadi.sk/d/WuHBlXTidyDiv

(один для нулевой нагрузки ЦПУ и диска, второй - для средней).
...
Рейтинг: 0 / 0
ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
    #38857966
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заполняя в одиночном аттаче базу, получил опять этот "феномен". ФБ в какие-то моменты *ничего* не делает около 10 сек. То есть, именно так: ничего . Не грузит ЦПУ, не пишет и не читает ничего с диска.

Исходные данные:
SuperClassic, база в fw=off, page_size=4096, одна таблица.
Цель скрипта - довести PP этой таблицы до 64К.

Гляньте в аттач, плз: вот что можно было "не делать" в течение почти 10 сек ?

(про пики в reads при том, что в скрипте только insert'ы, уже выяснил: кое-кто из Светил дал подсказ, что это чтение метаданных, и раз там всё больше и больше PP, то и пики всё круче и выше).

ЗЫ.
Скрипт (его однократный вызов добавляет в таблицу 1000000 строк и на столько же увеличивает генератор `g`; когда этот генератоо достигнет значения 10'000'000'000, скрипт выдаст 'stop!' - флаг для остановки батника):
file = `add1packet.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.
recreate sequence g; commit;
recreate table t(id bigint, s01 varchar(8), s02 varchar(8));
commit;

select current_timestamp, 'start packet' msg, gen_id(g,0) curr_gen from rdb$database;
select p.rdb$page_type, count(*) pg_cnt_before from rdb$pages p natural join rdb$relations r where r.rdb$relation_name='T' group by 1;
set stat on;
set term ^;
execute block as
  declare n bigint =  1000000 ;
  declare v_base bigint;
  declare i bigint = 0;
begin
  v_base = gen_id(g, 0);
  while (i<n) do begin

     insert into t(id,s01,s02)
     values( :v_base + :i,
             rpad('', 8, uuid_to_char(gen_uuid())),
             rpad('', 8, uuid_to_char(gen_uuid()))
            );
     i=i+1;
  end
  i = gen_id(g, :n);
end ^
set term ;^
set stat off;
select p.rdb$page_type, count(*) pg_cnt_after from rdb$pages p natural join rdb$relations r where r.rdb$relation_name='T' group by 1;
select current_timestamp dts, 'finish packet' msg, gen_id(g,0) curr_gen from rdb$database;
set stat on;
set echo on;
commit;
set stat off;
set echo off;
select current_timestamp dts, 'done commit' msg, iif(gen_id(g,0) >  10000000000 , ' stop !', 'go-on' ) flag  from rdb$database;
Батник:
`addpackets.bat`
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
@echo off
cls
del addpackets.log 2>nul
@rem echo recreate sequence g; recreate table t(id bigint, s01 varchar(8), s02 varchar(8)); commit;|C:\1INSTALL\FB30SNAP\isql.exe localhost/3330:E:\data\HUGE_CORE_4384.FDB
:m1
  echo.| mtee /t /+ addpackets.log
  echo ..................................................................................
  echo.| mtee /t /+ addpackets.log
  pslist -m 2>nul | findstr /i /c:"name" | mtee /t /+ addpackets.log
  pslist -m 2>nul | findstr /i /c:"firebird" | mtee /t /+ addpackets.log
  type add1packet.sql | C:\1INSTALL\FB30SNAP\isql.exe -n localhost/3330:E:\data\HUGE_CORE_4384.FDB | mtee add1packet.tmp
  type add1packet.tmp >> addpackets.log
  set enough=1
  findstr /i /c:"stop!" add1packet.tmp  > nul
  if errorlevel 1 set enough=0
  echo enough=%enough%
  del add1packet.tmp 2>nul
  if  .%enough%. == .1. (
    goto end
  )
goto m1
:end
echo BYE-BYE...
(требует наличия утилит mtee.exe & pslist.exe и включения их каталогов в PATH-список; логирует в файл с именем `addpackets.log`).
...
Рейтинг: 0 / 0
ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
    #38858095
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидЦель скрипта - довести PP этой таблицы до 64К.

ЕМНИП это удалось сделать Коваленко.
...
Рейтинг: 0 / 0
ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
    #38858103
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисТаблоидЦель скрипта - довести PP этой таблицы до 64К.ЕМНИП это удалось сделать Коваленко.Насколько я понял из текста core-4384, Коваленко предупреждал о проблеме. А ДЕ там недавно сказал, что типа всё должно быть пучком, но неплохо бы проверить.

Вот я и решил это сделать... :-)

У тебя есть диск с 300 гб и более (хотя бы на простой рабочей станции, не обязательно на серваке) ?
Попробуй, может это у меня только такие "артефакты" лезут после 2.2 млрд добавленных записей. Подождать, конечно, придется, часов 10-12, но оно того ст о ит :-)
...
Рейтинг: 0 / 0
ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
    #38858111
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидНасколько я понял из текста core-4384, Коваленко предупреждал о проблеме.
он не предупреждал. Он её и обнаружил. http://firebirder.ru/bolshoe-testirovanie-3

ТаблоидУ тебя есть диск с 300 гб и более
диск то у меня есть, вот только места там нету
...
Рейтинг: 0 / 0
5 сообщений из 55, страница 3 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ProcessExplorer для FB-3 показывает "горы с равнинами", синхронно для CPU & HDD
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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