From 0f9af7308a191659d1665c1dfe09d6782f444755 Mon Sep 17 00:00:00 2001
From: Brendan Heywood <brendan@catalyst-au.net>
Date: Fri, 27 Mar 2020 23:07:28 +1100
Subject: [PATCH] MDL-68276 admin: Skip all log tables in db_replace

---
 lib/adminlib.php | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/lib/adminlib.php b/lib/adminlib.php
index 3f0dc85ada1..f5f6d298cdb 100644
--- a/lib/adminlib.php
+++ b/lib/adminlib.php
@@ -8839,6 +8839,13 @@ function db_replace($search, $replace) {
             continue;
         }
 
+        // To be safe never replace inside a table that looks related to logging.
+        if (preg_match('/_logs?$/', $table) ||
+            preg_match('/_logs?_/', $table) ||
+            preg_match('/^logs?_/', $table)) {
+            continue;
+        }
+
         if ($columns = $DB->get_columns($table)) {
             $DB->set_debug(true);
             foreach ($columns as $column) {
-- 
2.17.1

