Issues

Open Issues

Creating a Separate Server for continuing education

We decided against it

User ID mapping

The delivery and development server have different databases. When we add an instructor to the delivery server the id (primary key) in the user table maybe 7001. When we add the same instructor to the development server the id (primary key) in the user table might be 612.

On the development server, the instructor adds questions, assignments, etc. In most Moodle tables, there are fields for last modified by and time modified. On the moodle development server, the id in the last modified by field would be 612 for this instructor. When we backup and restore the course to the delivery server, these records are moved as well. Unfortunately, the id (primary key) of 612 in the user table is not associated with the instructor of the course. It could be associated with another instructor or student.

https://courses.cehd.tamu.edu/course/view.php?id=303

https://moodle.cehd.tamu.edu/course/view.php?id=519

Found more than one record in fetch

3/16/2011 found during load testing. After some heavy load testing by jmeter, we get this error. After this, we cannot log into the quiz even by manual operation. This error is removed by

SELECT courseid, itemtype, count(*) FROM mdl_grade_items group by courseid, itemtype having itemtype='course' and count(*)>1; -- which will give us the id to delete delete from mdl_grade_items where id=3456;

This happens from this code:

lib/grade/grade_object.php

mysql> SELECT * FROM mdl_grade_items WHERE courseid = '173' AND itemtype = 'course' ORDER BY id;
| id   | courseid | categoryid | itemname | itemtype | itemmodule | iteminstance | itemnumber | iteminfo | idnumber | calculation | gradetype | grademax  | grademin | scaleid | outcomeid | gradepass | multfactor | plusfactor | aggregationcoef | sortorder | display | decimals | hidden | locked | locktime | needsupdate | timecreated | timemodified |
| 1877 |      173 |       NULL | NULL     | course   | NULL       |          276 |       NULL | NULL     | NULL     | NULL        |         1 | 100.00000 |  0.00000 |    NULL |      NULL |   0.00000 |    1.00000 |    0.00000 |         0.00000 |         1 |       0 |     NULL |      0 |      0 |        0 |           1 |  1285191864 |   1285192113 |
| 3456 |      173 |       NULL | NULL     | course   | NULL       |          276 |       NULL | NULL     | NULL     | NULL        |         1 | 100.00000 |  0.00000 |    NULL |      NULL |   0.00000 |    1.00000 |    0.00000 |         0.00000 |         1 |       0 |     NULL |      0 |      0 |        0 |           1 |  1300302903 |   1300302903 |
2 rows in set (0.00 sec)


mysql> select iteminstance,courseid, itemtype, count(*) from mdl_grade_items  group by iteminstance, courseid, itemtype having count(*)>1;
+--------------+----------+----------+----------+
| iteminstance | courseid | itemtype | count(*) |
+--------------+----------+----------+----------+
|         NULL |       81 | manual   |        2 |
|         NULL |       99 | manual   |        2 |
|         NULL |      133 | manual   |        2 |
|         NULL |      142 | manual   |       39 |
|         NULL |      145 | manual   |        4 |
|         NULL |      146 | manual   |        3 |
|         NULL |      206 | manual   |       39 |
|         NULL |      235 | manual   |       39 |
|         NULL |      244 | manual   |        5 |
|           20 |      186 | mod      |        2 |
|          276 |      173 | course   |        2 |
|          672 |      151 | mod      |        2 |
|          695 |      103 | mod      |        2 |
|          718 |      162 | mod      |        2 |
|          720 |      162 | mod      |        2 |
|          724 |      162 | mod      |        2 |
|          737 |      163 | mod      |        2 |
|          739 |      163 | mod      |        2 |
|          743 |      163 | mod      |        2 |
|         1115 |      205 | mod      |        2 |
|         1116 |      205 | mod      |        2 |
|         1240 |      216 | mod      |        2 |
+--------------+----------+----------+----------+
22 rows in set (0.02 sec)

So far we didn't see a problem like this so I guess it's specific to this combination (173, course).

mysql> delete from mdl_grade_items where id=3456;

Deleting the latter record of mdl_grade_items fixed the problem.

When this happens, there is a non-zero count of this record.

SELECT courseid, itemtype, count(*) FROM mdl_grade_items group by courseid, itemtype having itemtype='course' and count(*)>1;

Another occurrence

SELECT * FROM mdl_grade_items WHERE itemtype = 'mod' AND itemmodule = 'quiz' AND iteminstance = '794' AND itemnumber = '0' AND courseid = '173' ORDER BY id  ;

Also after load testing.

| id   | courseid | categoryid | itemname     | itemtype | itemmodule | iteminstance | itemnumber | iteminfo | idnumber | calculation | gradetype | grademax  | grademin | scaleid | outcomeid | gradepass | multfactor | plusfactor | aggregationcoef | sortorder | display | decimals | hidden     | locked | locktime | needsupdate | timecreated | timemodified |

| 3440 |      173 |        276 | Midterm Exam | mod      | quiz       |          794 |          0 | NULL     | M        | NULL        |         1 | 100.00000 |  0.00000 |    NULL |      NULL |   0.00000 |    1.00000 |    0.00000 |         0.00000 |         3 |       0 |     NULL | 1301540400 |      0 |        0 |           0 |  1299599753 |   1300130633 | 
| 3471 |      173 |        276 | Midterm Exam | mod      | quiz       |          794 |          0 | NULL     | NULL     | NULL        |         1 | 100.00000 |  0.00000 |    NULL |      NULL |   0.00000 |    1.00000 |    0.00000 |         0.00000 |         4 |       0 |     NULL | 1301540400 |      0 |        0 |           0 |  1301232495 |   1308241231 |

TODO

We need to find which code is inserting this record.

Closed Issues

mdl_log, disk full

3/16/2011

We saw a number of this error while testing today, and since I couldn't find a readily applicable solution, I deleted 40K+ records added by our load testing from courses11's mdl_log table (and moved them into mdl_log_bak table).

create table mdl_log_bak like mdl_log;
insert into mdl_log_bak select * from mdl_log where ip='165.91.232.54';
delete from  mdl_log where ip='165.91.232.54';

The disk was not full, and disk full is not the cause of this problem.

Insert into log table failed at Wednesday 16th of March 2011 12:38:04 PM.  It is possible that your disk is full.

  The failed SQL is:
  
  INSERT INTO mdl_log (time, userid, course, ip, module, cmid, action, url, info)
  VALUES ('1300297084', '6784', '173', '165.91.232.54', 'quiz',
   '20122', 'continue attemp', 'review.php?attempt=51720', '794')

The problem is because jmeter (load test tool) script was sending multiple requests too fast. The above sql assumes that the set of (time, userid, course, ip, module, cmid, action, url, info) is unique. But with jmeter testing, it's not unique. So the insert fails, but "It is possible that your disk is full." is definitely the wrong advice.

This error is not harmful. Also, this situation is unlikely to happen in real testing, where all students use different machines.

2011-1-26 If course format is changed to social format, screen goes blank

In line 2 of course/format/social/format.php, there was an extraneous, orphaned $Id$ string. Removed.

forum posts do not send out emails

http://moodle.org/mod/forum/discuss.php?d=73279

The problem was cron was not running correctly. Check by going to the https://courses.cehd.tamu.edu/admin/cron.php page manually.

This is correct:

 0 * * * * /usr/bin/wget -q --no-check-certificate -O /tmp/courses-cron.log 'https://courses.cehd.tamu.edu/admin/cron.php'

This is not correct:

 0 * * * * /usr/bin/wget -q -O /tmp/courses-cron.log 'https://courses.cehd.tamu.edu/admin/cron.php'

The problem is that we are using a shared certificate.

[root@courses11 ~]# /usr/bin/wget 'https://courses.cehd.tamu.edu/admin/cron.php'
--2010-10-01 10:35:23--  https://courses.cehd.tamu.edu/admin/cron.php
Resolving courses.cehd.tamu.edu... 165.91.232.58
Connecting to courses.cehd.tamu.edu|165.91.232.58|:443... connected.
ERROR: certificate common name `publicweb.cehd.tamu.edu' doesn't match requested host name `courses.cehd.tamu.edu'.
To connect to courses.cehd.tamu.edu insecurely, use `--no-check-certificate'.
Unable to establish SSL connection.

quiz/itestwin.html

There are 404 errors from this file. The solution is changing:

   var testwindow = window.open('itestwin.html', , 'width=1,height=1,left=0,top=0,               scrollbars=no');

to

   var testwindow = window.open(, , 'width=1,height=1,left=0,top=0,scrollbars=no');

in lib/javascript-static.js file.

Or, simply do "touch .../quiz/itestwin.html". But this is adding another file, so it's better to modify the lib/javascript-static.js file.

http://tracker.moodle.org/browse/MDL-10128

Taxonomy: