Изменения в версии 2.3.11
Навигация: Главная страница/Система ejudge/Разработка/Изменения в версии 2.3.11
Исправлены несколько ошибок версии 2.3.10. Если версия 2.3.10 установлена, рекомендуется произвести обновление до 2.3.11.
Исправлена проблема с падением производительности в случае использования больших номеров турниров.
Хранение посылок в MySQL
Поддерживается хранение базы посылок в базе данных MySQL. Выбор вида хранения базы посылок выполняется для каждого турнира отдельно. По умолчанию посылки хранятся в файлах. Чтобы включить хранение базы посылок в базе данных MySQL необходимо в конфигурационном файле serve.cfg турнира установить параметр
rundb_plugin = "mysql"
Поддержка MySQL реализована с помощью плагина rldb_mysql.so. Конфигурационные параметры плагина определяются в файле ejudge.xml. Минимальные конфигурационные настройки могут выглядеть следующим образом:
<plugins> <plugin type="rldb" name="mysql" load="yes"> <config> <user>ejudge</user> <password>*********</password> <database>ejudge</database> </config> </plugin> </plugins>
База данных ejudge и пользователь ejudge с полными правами работы с этой базой должны быть предварительно созданы, например, с помощью phpMyAdmin.
При работе с базой посылок турнира она полностью загружается в память при открытии турнира и не обновляется из MySQL. Однако все записи в базу посылок немедленно приводят к обновлениям в MySQL базе. Поэтому не рекомендуется изменять MySQL базу посылок в то время, когда турнир загружен. Команда "Reload contest settings" интерфейса администратора в числе прочего и перечитает базу посылок из MySQL.
Только информация о посылках хранится в таблице. Исходный код и протоколы тестирования по-прежнему хранятся в файлах.
convert-runs
Новая программа для конвертации одного формата хранения базы посылок в другой. Программа инсталлируется либо в каталог bin, либо в каталог libexec/ejudge/bin, в зависимости от опции --enable-hidden-server-bins скрипта configure. Например, для перевода базы посылок некоторого турнира из файлового формата в базу данных MySQL программа должна вызываться со следующими аргументами: convert-runs CONTEST-ID file mysql Плагин rldb_mysql должен быть корректно настроен (см. выше) и требуемая база должна быть создана.
new-server
В URL запроса допускается указание символических названий для параметра action. Например, action=reg_create_account_page.
Новая конфигурационная переменная раздела определения задачи `disable_security'. Если она установлена, для соответствующей задачи отменяются ограничения безопасности.