Изменения в версии 2.3.21

From EjudgeWiki
Revision as of 05:20, 4 April 2012 by Cher (talk | contribs) (ej-contests)

Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 2.3.21

ejudge.xml

Поддерживается новый элемент <hosts_options>, который позволяет определять дополнительные параметры работы системы ejudge в зависимости от хоста, на котором запущен ejudge.

contest.xml

Добавлен атрибут old_run_managed элемента <contest>. Если значение атрибута равно yes, то тестирование решений участников для этого турнира выполняется в режиме совместимости с предыдущими версиями с помощью программы ej-run.

Атрибут run_managed теперь указывает, что решения участников данного турнира тестируются с помощью программы ej-super-run. Таким образом, при переходе от предыдущих версий к текущей тестирование решений участников будет проводится с помощью новой программы ej-super-run, если только в турнире не будет явно установлен атрибут old_run_managed.

serve.cfg

В турнирах по системе KIROV поддерживается плавное изменение штрафа за посылку в конфигурационной переменной date_penalty.

В спецификации тестеров поддерживается значение dll32 для конфигурационной переменной secure_exec_type для включения безопасного режима у 32-битных приложений на 64-битной системе.

ej-compile

Вывод компилятора сохраняется даже в случае, когда компиляция была успешной.

ej-contests

Исправлена ошибка при интерпретации операции преобразования типов в выражении фильтра посылок.

Исправлено неправильное отображение максимального времени выполнения при просмотре протокола проверки.

Исправлена ошибка при преобразовании файлов в кодировке UTF-16 с BOM-маркером в файлы в кодировке UTF-8.

Корректно обрабатываются недопустимые идентификаторы судей в списке сообщений (вопросы участников судьям и ответы судей).

В случае, когда турнир не может быть загружен из-за ошибки в конфигурационных файлах турнира, на странице "Contest is not available" отображается фрагмент лог-файла с диагностикой ошибки.

В турнирах по системе KIROV поддерживается плавное изменение штрафа за посылку в зависимости от времени сдачи. Для этого расширен синтаксис описания штрафов в конфигурационной переменной date_penalty.

Пакет запроса на тестирование, передаваемый программе ej-run или ej-super-run имеет текстовый формат, аналогичный конфигурационным файлам.

ejudge-control

Поддерживается запуск нескольких процессов ej-super-run параллельно в зависимости от значения опции parallelism настроек хоста в файле ejudge.xml.

Например во фрагменте конфигурационного файла ejudge.xml:

  <hosts_options>
    <host name="192.168.10.100">
      <option name="parallelism" value="2" />
    </host>
  </hosts_options>

Задается, что на хосте с IP-адресом 192.168.10.100 должно параллельно запускаться два экземпляра процесса ej-super-run, таким образом, может параллельно тестироваться два решения участников.

ej-normalize

Новая программа, которая выполняет преобразование файлов с тестами. В предыдущих версиях ejudge преобразование тестов было встроено в программу ej-super-server. Начиная с данной версии, если у турнира установлен режим advanced_layout, то генерируется Makefile, в котором используется ej-normalize.

ej-super-run

Новая программа, предназначенная для замены программы ej-run. Программа ej-super-run запускается в режиме демона при запуске ejudge и управляет запуском на тестирование и проверкой ответов всех турниров. Программа ej-super-run может запускаться в нескольких экземплярах на одной системе для организации тестирования на многоядерных процессорах.

ej-super-run-control

Новая программа, предназначенная для управления программой ej-super-run.

cmp_file

Добавлена проверка на нулевой байт (\0) с соответствующей диагностикой.

Исправлена ошибка, которая в редких случаях приводила к неправильному сравнению.