В рамках тестирования следующей версии IBProvider v5.12 была создана пара UBER таблиц c 4096-ю колонок в каждой, которые добили прямолинейные алгоритмы тестирования схем метаданных «schema.002.*» основной тестовой системы.
Их там три штуки. Тот, который грузит схемы без кэширования, до последнего времени работал 6 часов. После появления вышеобозначенной сладкой парочки — 2 дня и 19 часов. То есть 67 часов.
Это означает, что после завершения всех остальных тестов, компьютер еще кучу времени тупил в одно ядро над одним тестом. 9 ядер простаивали.
Страшно думать, сколько бы оно тупило с отладочной сборкой провайдера. Сто пудов — не меньше недели …(далее…)
Решил сам для себя изложить суть текущей проблемы 🙂
С начала недели на отстое стоит незакоммиченный код c поддержкой IDENTITY-колонок FB3.
Задача простая — для всех колонок результирующего множества, напрямую отображаемых на таблицы базы данных, нужно выполнить запрос:
select <индекс колонки> from rdb$relation_fields where rdb$relation_name=’<имя таблицы>‘ and rdb$field_name=’<имя колонки>‘ and rdb$identity_type is NOT NULL
Казалось бы, что тут может быть сложного? (далее…)
Сегодня, выехав на финишную прямую с реализацией поддержки автоинкрементных колонок FB3, я чего-то задумался и решил посмотреть — «а когда, собственно говоря, был обозначен этот вопрос в трекере задач проекта?»
Похоже сегодня обязательно нужно допилить эту штуку 🙂
На сайт загружена тестовая сборка IBProvider (5.11.0.33464), в которой реализована поддержка сжатия данных подключения собственным клиентом для Firebird.
Чтобы задействовать эту фичу достаточно указать в строке подключения «remote:wire_compression=enabled».