Revert "MDL-63466 core_message: removed get_last_message_time_created_cache_key"
authorAndrew Nicols <andrew@nicols.co.uk>
Fri, 26 Oct 2018 06:53:58 +0000 (14:53 +0800)
committerAndrew Nicols <andrew@nicols.co.uk>
Fri, 26 Oct 2018 06:53:58 +0000 (14:53 +0800)
lib/messagelib.php
message/classes/api.php
message/classes/helper.php

index 3fcaa94..deca4e6 100644 (file)
@@ -295,7 +295,8 @@ function message_send(\core\message\message $eventdata) {
         if (!empty($eventdata->convid)) {
             // Cache the timecreated value of the last message in this conversation.
             $cache = cache::make('core', 'message_time_last_message_in_conversation');
-            $cache->set($eventdata->convid, $tabledata->timecreated);
+            $key = \core_message\helper::get_last_message_time_created_cache_key($eventdata->convid);
+            $cache->set($key, $tabledata->timecreated);
         }
     }
 
index 78e5968..57619cf 100644 (file)
@@ -630,8 +630,9 @@ class api {
             }
 
             // Check the cache to see if we even need to do a DB query.
-            $cache = \cache::make('core', 'message_time_last_message_in_conversation');
-            $lastcreated = $cache->get($conversationid);
+            $cache = \cache::make('core', 'message_time_last_message_between_users');
+            $key = helper::get_last_message_time_created_cache_key($conversationid);
+            $lastcreated = $cache->get($key);
 
             // The last known message time is earlier than the one being requested so we can
             // just return an empty result set rather than having to query the DB.
@@ -667,7 +668,8 @@ class api {
         if (!empty($timefrom)) {
             // Check the cache to see if we even need to do a DB query.
             $cache = \cache::make('core', 'message_time_last_message_in_conversation');
-            $lastcreated = $cache->get($convid);
+            $key = helper::get_last_message_time_created_cache_key($convid);
+            $lastcreated = $cache->get($key);
 
             // The last known message time is earlier than the one being requested so we can
             // just return an empty result set rather than having to query the DB.
index 89619f8..3b09075 100644 (file)
@@ -440,6 +440,16 @@ class helper {
         return sha1(implode('-', $userids));
     }
 
+    /**
+     * Returns the cache key for the time created value of the last message of this conversation.
+     *
+     * @param int $convid The conversation identifier.
+     * @return string The key.
+     */
+    public static function get_last_message_time_created_cache_key(int $convid) {
+        return $convid;
+    }
+
     /**
      * Checks if legacy messages exist for a given user.
      *