Прошу помочь в тестировании key-value движка MDBX. Хватит даже полудохлой (в разумных пределах) виртуалки с установленным компилятором C++, make и компрессором lz4 для логов.
Достаточно клонировать репозиторий и запустить «на выходные» скрипт, т.е. выполнить три команды:
git clone https://github.com/leo-yuriev/libmdbx
cd libmdbx
./test/long_stochastic.sh
ВАЖНО: будет почищен каталог /dev/shm !!! Поэтому, если у вас работает какой-нибудь postgresql, то его следует остановить. Как вариант - закомментировать в скрипте соответствующую строку.
Немного пояснений:
- тест стохастический «от легкого к тяжелому».
- тест работает в памяти, потому нагрузит memory bandwidth и CPU, но не диск.
- тест сам подстроится под размер ОЗУ.
- тест можно считать «бесконечным» и прервать/перезапустить когда он станет мешать.
- чем больше (суммарно) отработает тест, тем тщательнее будет проверка.
В случае сбоя нужно быть готовым предоставить инфу:
- «последний экран» вывода в терминал и lz4-файл из /dev/shm.
- минимальную информацию о системе (версию компилятора и т.п.)
- технически это лучше делать через заведение issue на github, а остальные варианты обсуждать здесь.
На всякий:
- комбинаторная сложность возможных состояний БД и последовательности операций такова, что примерно невозможно проверить все варианты.
- в такой ситуации стохастический тест (со случайным поведением) является разумным компромиссом.
- соответственно, «коллективное стохастическое тестирование» будет плюсом к собственным тестам (которые периодически прогоняются по нескольку сотен часов).
Всем добра.