Permalink
Browse files

MDL-30643 - Fixing minor log output error and test cases.

  • Loading branch information...
1 parent 8646f5a commit 2da32bd6a5a0071756c29a4684c73694f0971664 Tyler Bannister committed Aug 7, 2012
Showing with 93 additions and 6 deletions.
  1. +10 −4 lib/statslib.php
  2. +83 −2 lib/tests/statslib_test.php
View
@@ -190,13 +190,19 @@ function stats_cron_daily($maxdays=1) {
break;
}
- stats_progress('0');
-
/// find out if any logs available for this day
$sql = "SELECT 'x' FROM {temp_log1} l";
$logspresent = $DB->get_records_sql($sql, null, 0, 1);
- /// process login info first
+ if ($logspresent) {
+ // Insert blank record to force Query 10 to generate additional row when no logs for
+ // the site with userid 0 exist. Added for backwards compatibility.
+ $DB->insert_record_raw('temp_log1', array('userid' => 0, 'course' => SITEID, 'action' => ''));
+ }
+
+ stats_progress('0');
+
+ /// process login info first
$sql = "INSERT INTO {temp_stats_user_daily} (stattype, timeend, courseid, userid, statsreads)
SELECT 'logins', $nextmidnight AS timeend, ".SITEID." AS courseid, userid, count(id) as statsreads
@@ -382,7 +388,6 @@ function stats_cron_daily($maxdays=1) {
SUM(CASE WHEN action $viewactionssql THEN 1 ELSE 0 END) AS statsreads,
SUM(CASE WHEN action $postactionssql THEN 1 ELSE 0 END) AS statswrites
FROM {temp_log1} l
- WHERE !(course = 0 AND userid = 0)
GROUP BY userid, courseid";
if ($logspresent and !$DB->execute($sql, array_merge($params1, $params2))) {
@@ -1573,6 +1578,7 @@ function stats_temp_table_drop() {
function stats_temp_table_fill($timestart, $timeend) {
global $DB;
+ // Note: We need to create a placeholder here to simulate the effects of old, slow unions
$sql = "INSERT INTO {temp_log1}
SELECT id, userid, course, action FROM {log} l
WHERE l.time >= $timestart AND l.time < $timeend";
@@ -237,6 +237,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -320,6 +329,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -435,6 +453,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -557,7 +584,16 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
- ),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
+ ),
),
),
array( // Test #5 - Login and view course - Tests queries 4, 6, 10, 12, 14 (read)
@@ -672,6 +708,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -794,7 +839,16 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
- ),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
+ ),
),
),
array( // Test #7 - Login and view course - Tests queries 13 (not enroled), 14 (not default)
@@ -924,6 +978,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -1022,6 +1085,15 @@ public function daily_log_provider() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
),
),
@@ -1431,6 +1503,15 @@ public function test_statslib_cron_daily_no_default_profile_id() {
'statswrites' => 0,
'stattype' => 'activity'
),
+ array( // Query 10 - default record
+ 'courseid' => SITEID,
+ 'userid' => 0,
+ 'roleid' => 0,
+ 'timeend' => $end,
+ 'statsreads' => 0,
+ 'statswrites' => 0,
+ 'stattype' => 'activity'
+ ),
),
);

0 comments on commit 2da32bd

Please sign in to comment.