Большое тестирование IBProvider [debug]
Привет всем.
Сегодня доехало до конца большое тестирование IBProvider v5.19. Главное отличие от предыдущих забегов — прогонялись отладочные сборки провайдера и пула подключений.
7 миллионов тестов за 42.5 дня на 10-ядерном процессоре.
Все тип-топ.
Конфигурация
- Intel 6950x [10C/20T], RAM 128GB
- База и TEMP на RAM диске (SoftPerfect)
- IBProvider v5.19.0.35449
- LCPI OLE DB Services v1.16.0.924
- LCPI Thread Pool v2.1.1.310
- Firebird v3.0.6.33294 (SS, x64, Win)
- Win10 x64 Pro 1909
Подключение к базе через собственного клиента для FB (dbclient_type=fb.direct) и TCP/IP (INET4). Без сжатия данных — не стал рисковать.
Каждый час запускалась принудительная сборка мусора.
Основные сведения из лога
Process ID: 5444 [TEST HEAP] Initialize ... OK [08.06.2020 11:21:15] [ExecuteTests] CommandLine: target\ibp_oledb_test_vc16_x64_Release.exe /thread_count 10 /log_file_prefix fb30-fb.direct-ram_w64_d3--debug /log_dir ..\_log\all\ /new_db_location "inet4://localhost/d:\database\ram\" /cn_str "provider=LCPI.IBProvider.5.Private.vc16.debug;location=inet4://localhost/d:\database\ram\ibp_test_fb30_d3_all.gdb;user id=GAMER;password=vermut;ctype=win1251;temp_file_dir=d:\database\ram\temp;dbclient_type=fb.direct;icu_library=icuuc52.dll;wchars_in_utf8_symbol=2" /oledb_svc_cmp "LCPI.OleDbServices.DataInitManager.Local.1.Private.vc16.debug" /test * [08.06.2020 11:21:15] [ExecuteTests] Test Mask : [*] [08.06.2020 11:21:15] [info] Provider DLL :lcpi.ibprovider-v5_vc16_w64_prof_d.dll [08.06.2020 11:21:15] [info] Provider Version:5.19.0.35449 [08.06.2020 11:21:15] [info] Server Name :Firebird [08.06.2020 11:21:15] [info] Server Version :3.0.6.33294 [08.06.2020 11:21:15] [info] Client Name :LCPI.IBProvider.RemoteFB [08.06.2020 11:21:15] [info] Client Version :5.19.0.35449 [08.06.2020 11:21:15] [info] Database ODS :12.0 [08.06.2020 11:21:15] [info] Database Dialect:3 [08.06.2020 11:21:15] [info] ConnectionString: provider=LCPI.IBProvider.5.Private.vc16.debug;location=inet4://localhost/d:\database\ram\ibp_test_fb30_d3_all.gdb;user id=GAMER;password=vermut;ctype=win1251;temp_file_dir=d:\database\ram\temp;dbclient_type=fb.direct;icu_library=icuuc52.dll;wchars_in_utf8_symbol=2 [08.06.2020 11:21:15] [ExecuteTests] [08.06.2020 11:21:15] [ExecuteTests] Enter [cancel] for interrupt execution [08.06.2020 11:21:15] [ExecuteTests] [08.06.2020 11:21:15] Creation 10 thread(s)... ....... [21.07.2020 04:25:36] [summary] ------------------------------------------- [SUMMARY INFORMATION] [21.07.2020 04:25:36] [summary] [TESTS] [21.07.2020 04:25:36] [summary] EXECUTED : 7055983 [21.07.2020 04:25:36] [summary] SUCCEEDED : 7055919 [21.07.2020 04:25:36] [summary] FAILED : 0 [21.07.2020 04:25:36] [summary] WITH WARNINGS : 64 [ 86 warning(s) ] [21.07.2020 04:25:36] [summary] [21.07.2020 04:25:36] [summary] - - - - - - - - - - - - - - - - - - - - - - [21.07.2020 04:25:36] [summary] [TEST TIMES] [21.07.2020 04:25:36] [summary] REAL : 368947880852117 [427 day(s)00:33:08.0852117] [21.07.2020 04:25:36] [summary] USER : 147627364843750 [170 day(s)20:45:36.4843750] [21.07.2020 04:25:36] [summary] KERNEL : 42548536562500 [49 day(s)05:54:13.6562500] [21.07.2020 04:25:36] [summary] TOTAL : 190175901406250 [220 day(s)02:39:50.1406250] [21.07.2020 04:25:37] [21.07.2020 04:25:37] [TEST HEAP] Test heap is empty [21.07.2020 04:25:37] [TEST HEAP] Validate ... OK [21.07.2020 04:25:37] [TEST HEAP] Destroy ... OK [21.07.2020 04:25:37] [21.07.2020 04:25:37] [summary] ------------------------------------------- [PROCESS INFORMATION] [21.07.2020 04:25:37] [summary] [VIRTUAL MEMORY] [21.07.2020 04:25:37] [summary] [21.07.2020 04:25:37] [summary] PRIVATE BYTES : 21192 KB [20MB 712KB] [21.07.2020 04:25:37] [summary] PEAK PRIVATE BYTES : 12980892 KB [12GB 388MB 668KB] [21.07.2020 04:25:37] [summary] VIRTUAL SIZE : 4425724 KB [4GB 225MB 1020KB] [21.07.2020 04:25:37] [summary] PAGE FAULT COUNT : 1668408736 [21.07.2020 04:25:37] [summary] [21.07.2020 04:25:37] [summary] - - - - - - - - - - - - - - - - - - - - - - [21.07.2020 04:25:37] [summary] [HANDLES] [21.07.2020 04:25:37] [summary] [21.07.2020 04:25:37] [summary] HANDLES : 176 [21.07.2020 04:25:37] [summary] [21.07.2020 04:25:37] [summary] - - - - - - - - - - - - - - - - - - - - - - [21.07.2020 04:25:37] [summary] TOTAL ERRORS : 0 [21.07.2020 04:25:37] [summary] TOTAL WARNINGS: 86 [21.07.2020 04:25:37] [summary] FULL PASSES : 1 [21.07.2020 04:25:37] [summary] GEN TESTS : 8292740
Состояние тестового процесса
Состояние сервера
Статистика базы данных
Database "D:\DATABASE\RAM\IBP_TEST_FB30_D3_ALL.GDB" Gstat execution time Tue Jul 21 07:56:34 2020 Database header page information: Flags 0 Generation 62955047 System Change Number 0 Page size 16384 ODS version 12.0 Oldest transaction 62943656 Oldest active 62943657 Oldest snapshot 62943657 Next transaction 62943657 Sequence number 0 Next attachment ID 161265 Implementation HW=AMD/Intel/x64 little-endian OS=Windows CC=MSVC Shadow count 0 Page buffers 0 Next header page 0 Database dialect 3 Creation date May 1, 2020 22:28:06 Attributes Variable header data: *END* Gstat completion time Tue Jul 21 07:56:34 2020
Итого
Это был третий по счету успешно завершенный забег.
Будем считать, что цель «получить явные гарантии стабильности IBProvider», обозначенная три года назад, достигнута.
Для полноты картины, конечно, стоит еще прогнать тесты с релизными сборками. Цена вопроса — ~25 дней.