Невозможно выбрать вариант ответа при прохождении теста

Невозможно выбрать вариант ответа при прохождении теста

от Антон Пензев -
Количество ответов: 8

Добрый день.
При открытии теста все его варианты ответа задизейблены и в вопросах с одиночным выбором проставлены радиобаттоны на верных ответах. Также некоторые вопросы вместо вариантов имеют "Этот вариант ответа был удален после того, как попытка была начата" (таких вариантов всегда по 3, даже если оригинальных вариантов != 3).
При открытии теста через банк вопросов отображается корректно.
Это не локальная ошибка, а общая системная, тк затронула абсолютно все тесты.
Видимых предпосылок к возникновению ошибок не обнаружено. В системе работал 1 пользователь, который подготавливал новый курс. Последнее, что он делал в нём - очищал от попыток, оценок и тп.
Версия Moodle 3.5.16 (Build: 20210118)

Приложение Снимок экрана 2021-10-29 105500.png
В ответ на Антон Пензев

Re: Невозможно выбрать вариант ответа при прохождении теста

от Vadim Tabunshchik -
Изображение пользователя Developers
Это вовсе не системная ошибка, а «human error» улыбаюсь
Ваш «1 пользователь» редактировал тестовые вопросы с удалением вариантов ответов после того, как была начата попытка тестирования. Начните новый просмотр, что будет?
В ответ на Vadim Tabunshchik

Re: Невозможно выбрать вариант ответа при прохождении теста

от Антон Пензев -
Пока что слабо верится в "human error")
Это воспроизводится на всех тестах, даже на тех, которые считаются архивными и по ним не производятся никакие действия с июля.
Если завершить попытку и зайти еще раз, то будет то же самое. Причем вопрос, который в прошлой попытке был с вариантами, в новой попытке может стать с "удаленными" вариантами. Рандомное поведение.
В ответ на Антон Пензев

Re: Невозможно выбрать вариант ответа при прохождении теста

от Vadim Tabunshchik -
Изображение пользователя Developers
>> Если завершить попытку и зайти еще раз, то будет то же самое. Причем вопрос, который в прошлой попытке был с вариантами, в новой попытке может стать с "удаленными" вариантами. Рандомное поведение.
Так не бывает, потому что это будут разные вопросы: в одном - ответы есть, в другом - отсутствуют.
Похоже, проблема в базе данных, если «Рандомное поведение». Нужно разбираться, начиная с просмотра всех вопросов в режиме редактирования, каким образом они включены в тест и т. д.
А для чистоты эксперимента, все проверки в курсе нужно делать под учеткой студента
И ещё: Версия Moodle 3.5.16 (Build: 20210118) - обновить нет желания? Хотя бы до последней в ветке 3.5.18 (Build: 20210510), если на другую версию, поновее, не можете перейти.
В ответ на Vadim Tabunshchik

Re: Невозможно выбрать вариант ответа при прохождении теста

от Антон Пензев -
Еще заметил следующее
В просмотре вопроса, который открывается в отдельном окне, вопрос показывается корректно, но есть нажать "Отобразить правильные ответы", то либо варианты задизейблятся (+ правильный ответ не будет выбран), либо опять удалённые варианты.
Обычный просмотр:

После нажатия "Отобразить правильные ответы":

В ответ на Антон Пензев

Re: Невозможно выбрать вариант ответа при прохождении теста

от Антон Пензев -
Почему-то при прохождении теста в mdl_question_attempt_steps создаются 4 записи, 3 из которых принадлежат другому пользователю и дату от марта.

В ответ на Антон Пензев

Re: Невозможно выбрать вариант ответа при прохождении теста

от Vadim Tabunshchik -
Изображение пользователя Developers
В октябре не могут создаваться записи с датой Март 2021 года. Это нонсенс улыбаюсь
Другой вопрос, почему у записи от 29.10.2021 такой же `questionattemptid`, как и у записи от 10.03.2021? Вы структуру базы данных проверяли? Может ключи/индексы отсутствуют?
Проверьте в админке: /admin/tool/xmldb/
Теперь выполните запрос:
SELECT * FROM `mdl_question_attempt_step_data` WHERE `attemptstepid` IN (1711,2429,2459)
В одной из строк в колонке value будет список чисел через запятую, например: 1528,1529,1530,1531,1532. Количество чисел = количеству вариантов ответов к данному вопросу (в моем случае - 5). Сами числа - не что иное, как идентификаторы вариантов ответов из таблицы mdl_question_answers. Вот и проверьте, есть ли строки с такими ID в вашей таблице. Если некоторых нет, то вот и причина сообщения «Этот вариант ответа был удален…»
В ответ на Антон Пензев

Re: Невозможно выбрать вариант ответа при прохождении теста

от Антон Пензев -
Решилось. Проблема в "human error", но не в том контексте, в котором предположил Вадим.
При переносе платформы с одного сервера на другой в бд возникли дубли записей многих таблиц. Было принято решение оставить задублированные таблицы в оригинальном виде и создать новые. Все записи успешно перенесли, но забыли про некоторые индексы и счетчик (из-за чего новые id присваивались опять с 0). В итоге в таблице mdl_question_attempt начались дубли id, поэтому такое поведение системы. Спасибо Вадиму за наводку.