Merge pull request #18868 from sunilpawar/logging_date
authorEileen McNaughton <emcnaughton@wikimedia.org>
Fri, 6 Nov 2020 02:47:57 +0000 (15:47 +1300)
committerGitHub <noreply@github.com>
Fri, 6 Nov 2020 02:47:57 +0000 (15:47 +1300)
get log date from tables available in query with data instead of last table

CRM/Logging/Differ.php

index 76fc9eb5c6c3c4a727cf7f85ca9e572d63cfac3d..b6040c7bbac6aa531bcb12ae1efd75adec8c0492 100644 (file)
@@ -435,7 +435,8 @@ ORDER BY log_date
     $dao = CRM_Core_DAO::executeQuery($sql, $params);
     while ($dao->fetch()) {
       if (empty($this->log_date)) {
-        $this->log_date = CRM_Core_DAO::singleValueQuery("SELECT log_date FROM {$this->db}.log_{$table} WHERE log_conn_id = %1 LIMIT 1", $params);
+        // look for available table in above query instead of looking for last table. this will avoid multiple loops
+        $this->log_date = CRM_Core_DAO::singleValueQuery("SELECT log_date FROM {$this->db}.log_{$dao->table_name} WHERE log_conn_id = %1 LIMIT 1", $params);
       }
       $diffs = array_merge($diffs, $this->diffsInTableForId($dao->table_name, $dao->id));
     }