Регистрация пользователей на контест с MySQL

Обсуждение вопросов, связанных с системой проведения турниров ejudge.
Post Reply
apathism
Posts:64
Joined:09 January 2009, 22:54
Location:Мытищи, Россия
Регистрация пользователей на контест с MySQL

Post by apathism » 17 October 2012, 00:00

Добрый вечер.

До использования MySQL я мог добавлять пользователей в контест вручную,
при этом у них автоматически заполнялось поле Name. После перехода
на MySQL оно перестало заполняться само и теперь приходится делать это
через запросы к БД. Можно ли как-то вернуть старое поведение? (Или я что-то
делаю совсем не так?)

Пробовал добавлять как через web-интерфейс new-master (add by login,
add by id), так и через ejudge-edit-users.

ejudge: 2.3.24
MySQL: 5.5.28
Кодировка в ejudge: UTF-8

Заранее спасибо за ответ.
Корябкин Иван

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Регистрация пользователей на контест с MySQL

Post by cher » 18 October 2012, 22:21

что значит "перестало заполняться само"?

apathism
Posts:64
Joined:09 January 2009, 22:54
Location:Мытищи, Россия

Re: Регистрация пользователей на контест с MySQL

Post by apathism » 19 October 2012, 12:25

cher wrote:что значит "перестало заполняться само"?
Ну, насколько я понимаю, у каждого пользователя есть что-то вроде глобальных
учетных данных (запись в таблице users с contest_id == 0) и локальных для
каждого контеста. Раньше, когда я добавлял пользователя в контест глобальные
данные (и, в частности, поле username) копировалось в новую локальную запись.
Теперь же это поле содержит NULL. И в таблице результатов, и в интерфейсе
пользователь отображается по своему логину. Поэтому приходится регистрировать
пользователей через MySQL-запрос.

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Регистрация пользователей на контест с MySQL

Post by cher » 19 October 2012, 23:18

С Mysql глобальных данных больше нет. Но можно копировать данные из одного турнира в другой. Для этого есть средства как в веб интерфейсе, так и в консольном интерфейсе, и прямым доступом к БД пользоваться не обязательно.

apathism
Posts:64
Joined:09 January 2009, 22:54
Location:Мытищи, Россия

Re: Регистрация пользователей на контест с MySQL

Post by apathism » 25 October 2012, 00:02

Спасибо, не сразу нашел.

P.S. Я правильно понимаю, что с MySQL «Merge runs» в мастере поломался в 2.3.24?


apathism
Posts:64
Joined:09 January 2009, 22:54
Location:Мытищи, Россия

Re: Регистрация пользователей на контест с MySQL

Post by apathism » 25 October 2012, 20:53

Гм. Не знаю, попробовал сегодня сделать так с один контестом. new-master сказал, что все ок, но случилась следующая вещь: новых посылок не добавилось, а у существующих могли поменяться исходники.

Повторять боюсь, но попробую с тестовым контестом в ближайшее время.
Может быть, дело в том, что раньше этот тур был не-MySQL?

Делал merge следующим образом: взял один контест, выбрал «Write runs in XML internal format with source», сохранил XML, вырезал из него только те run'ы, что мне нужны, сделал merge в другом контесте.

apathism
Posts:64
Joined:09 January 2009, 22:54
Location:Мытищи, Россия

Re: Регистрация пользователей на контест с MySQL

Post by apathism » 27 October 2012, 15:57

У меня происходит нечто необъяснимое при Merge runs. Ну, во всяком случае, я не понимаю, что происходит.
Я создал тестовый турнир, в котором одна задача и два пользователя (ejudge и обычный пользователь «saharov»).
После этого я в пустой турнир делаю Merge файла saharov1.xml. Тут все происходит нормально.
А вот при втором Merge файла saharov2.xml происходит какая-то ерунда. Новые посылки не добавляются в базу
MySQL и не видны в master, но в var/archive/runs новые run'ы добавляются успешно.

Я не уверен, что я все делаю корректно, но у меня оно воспроизводится без каких-либо проблем.

serve.cfg: http://pastebin.com/bkpVkHfq
saharov1.xml: http://pastebin.com/THs4xFee
saharov2.xml: http://pastebin.com/iTTf2Gmj

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Регистрация пользователей на контест с MySQL

Post by cher » 27 October 2012, 17:01

лучше пришлите архив на почту, пожалуйста

cher
Posts:1153
Joined:13 March 2004, 17:00
Contact:

Re: Регистрация пользователей на контест с MySQL

Post by cher » 03 November 2012, 22:23

Спасибо, исправлено.

Post Reply