Difference between revisions of "Изменения в версии 2.3.11"
(New page: Навигация: Главная страница/Система ejudge/Разработка/Изменения в версии 2.3.11 Исправлены н...) |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
− | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Разработка]]/[[Изменения в версии 2.3.11]] | + | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Разработка]]/[[История версий]]/[[Изменения в версии 2.3.11]] |
Исправлены несколько ошибок версии 2.3.10. Если версия 2.3.10 | Исправлены несколько ошибок версии 2.3.10. Если версия 2.3.10 | ||
Line 15: | Line 15: | ||
в конфигурационном файле serve.cfg турнира установить параметр | в конфигурационном файле serve.cfg турнира установить параметр | ||
− | + | rundb_plugin = "mysql" | |
− | Поддержка MySQL реализована с помощью плагина | + | Поддержка MySQL реализована с помощью плагина rldb_mysql.so. |
Конфигурационные параметры плагина определяются в файле | Конфигурационные параметры плагина определяются в файле | ||
ejudge.xml. Минимальные конфигурационные настройки могут | ejudge.xml. Минимальные конфигурационные настройки могут | ||
Line 56: | Line 56: | ||
базу данных MySQL программа должна вызываться со следующими | базу данных MySQL программа должна вызываться со следующими | ||
аргументами: | аргументами: | ||
− | convert- | + | convert-runs CONTEST-ID file mysql |
Плагин rldb_mysql должен быть корректно настроен (см. выше) и | Плагин rldb_mysql должен быть корректно настроен (см. выше) и | ||
требуемая база должна быть создана. | требуемая база должна быть создана. |
Latest revision as of 06:49, 10 April 2011
Навигация: Главная страница/Система 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'. Если она установлена, для соответствующей задачи отменяются ограничения безопасности.