Serve.cfg:global:use dir hierarchy

From EjudgeWiki

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Глобальные конфигурационные параметры/use_dir_hierarchy

Имя переменной: use_dir_hierarchy
Содержится в: global
Используется: serve
Тип содержимого: boolean
Может отсутствовать: да
Значение по умолчанию: true
Может повторяться: нет
Версия ejudge: начиная с 2.1.24

Описание. Если данная конфигурационная переменная установлена в значение true, для оптимизации доступа к архивным файлам с посылками участников турнира, судейскими протоколами тестирования и протоколами тестирования для участников они организуются в иерархическую структуру каталогов. Если же данная конфигурационная переменная установлена в false, каждая категория архивных файлов будет храниться в одном каталоге. Например, все протоколы тестирования будут размещены в каталоге var/archive/reports каталога турнира.

При иерархическом хранении файлов файлы каждой архивной категории структурируются в дерево таким образом, чтобы каталог на каждом уровне содержал не более 32 записей. Максимальное количество файлов в архиве ограничено примерно 1 миллионом, поэтому для размещения всех файлов достаточно 3 уровней подкаталогов. Например, протокол тестирования для посылки с номером 1905 будет размещён в файле var/archive/reports/0/1/R/001905. Данная оптимизация позволяет существенно увеличить скорость открытия файлов для файловых систем, в которых записи в каталоге хранятся в неупорядоченном виде (например, ext2/ext3). По умолчанию поддержка иерархической структуры архивных каталогов включена.

Старый (до версии 2.1.24) и новый форматы хранения архивных файлов совместимы снизу вверх, то есть новая версия системы ejudge будет корректно открывать архивы, созданные в системах предыдущих версий. Однако если поддержка иерархической структуры включена, то все последующие посылки уже будут сохраняться в иерархической системе каталогов и таким образом станут недоступными для системы ejudge предыдущих версий.

Пример.

use_dir_hierarchy = 0