/node//results caused PDOException:
PDOException: SQLSTATE[22003]: Numeric value out of range: 1690 BIGINT UNSIGNED value is out of range in '("elms"."qnrs"."time_end" - "elms"."qnrs"."time_start")': SELECT u.name, qnrs.uid, qnrs.result_id, qnrs.score, qnrs.is_evaluated AS evaluated, qnrs.time_start as started, qnrs.time_end as finished, qnp.pass_rate, qnrs.time_end - qnrs.time_start as duration FROM {quiz_node_results} qnrs LEFT JOIN {users} u ON u.uid = qnrs.uid LEFT JOIN {quiz_node_properties} qnp ON qnrs.vid = qnp.vid WHERE qnrs.nid = :quiz_nid ; Array ( [:quiz_nid] => 19 ) in _quiz_results_mr_data_provider() (line 2055 of /***/sites/all/modules/quiz/quiz.admin.inc).
Comments
Comment #1
falcon CreditAttribution: falcon commentedDoes anyone else experience this problem?
Comment #2
pgrond CreditAttribution: pgrond commentedYep, I have the same error.
Comment #3
pgrond CreditAttribution: pgrond commentedSome more info. It happens when changing the options in the "Special filters".
Comment #4
paalj CreditAttribution: paalj commentedI am not able to reproduce this one. There must be something funny with the values in the quiz_node_results' time_start and/or time_end columns.
If anyone is able to reproduce it, could you do a query on the quiz_node_results table, and dump the relevant rows here?
Comment #5
greenwork CreditAttribution: greenwork commentedIt's in the 7.5x dev as well. I changed both options on the results filter (one after the other) finishing with the option for including quizes that are not finished. Can't get to the results page to change them back now on the account.
Ajax error popup:
An AJAX HTTP error occurred.
HTTP Result Code: 500
Debugging information follows.
Path: /system/ajax
StatusText: error
ResponseText:
Comment #6
greenwork CreditAttribution: greenwork commentedSteps to reproduce:
Let me know if you can reproduce. Questions in order:
Quiz directions
True/false question
Multiple choice question
Matching
Short answer question
Comment #7
paalj CreditAttribution: paalj commentedI have performed the steps outlined, but unfortunately I'm not able to reproduce this...
Comment #8
pingwin4egi confirm the problem in alpha11.
values of `time_end` and `time_start` are nothing special.
BUT SELECT `time_end` - `time_start` FROM `quiz_node_results` WHERE `time_end` = 0 (or ANY separate row with `time_end` = 0) results in #1690 - BIGINT UNSIGNED value is out of range.
the SOLUTION is to remove 'UNSIGNED' attribute from `time_end` and `time_start` columns in MySQL table structure.
Comment #9
Sivaji_Ganesh_Jojodae CreditAttribution: Sivaji_Ganesh_Jojodae commentedI was able to reproduce this issue in fresh drupal 7 and quiz (recent dev) install site. Removing unsigned attribute did the trick. Added hook_update_N() to fix it.
Comment #11
manu56 CreditAttribution: manu56 commentedHi,
I'm getting the same error in 7.x-4.0-alpha12 release as well. Can you guide me on how to use the hook_update_N().
Thanks
Comment #12
rickiellen CreditAttribution: rickiellen commentedI'm also getting this error in 7.x-4.0-alpha12, possibly due to a quiz indicated as being "In Progress" when I look at the user/%uid/myresults page.
Can someone explain the hook_update_N() fix, please?
Comment #13
greenwork CreditAttribution: greenwork commentedHe added the fix to the dev version I believe. That usually is a good choice to try the fix first
Comment #19
fuzzy76 CreditAttribution: fuzzy76 commentedShould this be closed since it is fixed?
Comment #20
djdevinYes. Thanks!