-
Bug
-
Resolution: Fixed
-
Major
-
2.0.3, 2.1.1, 2.2
-
Oracle 11
-
Oracle
-
MOODLE_20_STABLE, MOODLE_21_STABLE, MOODLE_22_STABLE
-
MOODLE_20_STABLE, MOODLE_21_STABLE
-
-
On our local install of Moodle 2.0.3, with Oracle 11 as the database server, creating a simple multiple choice question leads to a critical database/PHP error, leaving the question in a broken state. This same error occurs when trying to import questions from another course (e.g. from a 2.0.2 installation), or when trying to publish questions using Respondus.
According to the stack trace, the error results from a dml_write_exception thrown from /lib/dml/moodle_database.php. In addition, the debug info seems to implicate an identifier as being too long – but it's not clear which identifier is causing the problem. See testing instructions below, stack trace is as follows:
Debug info: ORA-00972: identifier is too long
UPDATE m_question_multichoice SET question = :o_question,correctfeedback = :o_correctfeedback,partiallycorrectfeedback = :o_partiallycorrectfeedback,incorrectfeedback = :o_incorrectfeedback,answers = :o_answers,single = :o_single,answernumbering = :o_answernumbering,shuffleanswers = :o_shuffleanswers,correctfeedbackformat = :o_correctfeedbackformat,partiallycorrectfeedbackformat = :o_partiallycorrectfeedbackformat,incorrectfeedbackformat = :o_incorrectfeedbackformat WHERE id=:o_id
[array (
'o_question' => 729,
'o_correctfeedback' => '',
'o_partiallycorrectfeedback' => '',
'o_incorrectfeedback' => '',
'o_answers' => '2232,2233',
'o_single' => '1',
'o_answernumbering' => 'abc',
'o_shuffleanswers' => '1',
'o_correctfeedbackformat' => '1',
'o_partiallycorrectfeedbackformat' => '1',
'o_incorrectfeedbackformat' => '1',
'o_id' => 508,
)]
Stack trace:
line 394 of /lib/dml/moodle_database.php: dml_write_exception thrown
line 268 of /lib/dml/oci_native_moodle_database.php: call to moodle_database->query_end()
line 1285 of /lib/dml/oci_native_moodle_database.php: call to oci_native_moodle_database->query_end()
line 1318 of /lib/dml/oci_native_moodle_database.php: call to oci_native_moodle_database->update_record_raw()
line 134 of /question/type/multichoice/questiontype.php: call to oci_native_moodle_database->update_record()
line 384 of /question/type/questiontype.php: call to question_multichoice_qtype->save_question_options()
line 251 of /question/question.php: call to default_questiontype->save_question()
- has a non-specific relationship to
-
MDL-29217 Detect uses of reserved words as placeholders in developer mode
-
- Closed
-
-
MDL-36739 Separate DB table definitions from limitations of actual DB used (e.g:oracle's 28 chars) by storing table name map in MUC or some other light weight flexible NoSQL storage
-
- Closed
-
- is duplicated by
-
MDL-28299 Oracle Error ORA-00972 trying to update question_multichoice when upgrading Moodle from 1.9.12 to version 2.1
-
- Closed
-