CRM-17685 fix - CiviCRM DB Syntax Error when enabling logging
authormonishdeb <monish.deb@webaccessglobal.com>
Fri, 15 Jan 2016 14:12:01 +0000 (19:42 +0530)
committermonishdeb <monish.deb@webaccessglobal.com>
Fri, 15 Jan 2016 14:12:01 +0000 (19:42 +0530)
https://issues.civicrm.org/jira/browse/CRM-17685

CRM/Logging/Schema.php

index 0861dd468976779519b74591b76012541a17fe07..52c82160b2abc9cd48a1f119abc589a7971a1e88 100644 (file)
@@ -567,6 +567,7 @@ WHERE  table_schema IN ('{$this->db}', '{$civiDB}')";
 
     // rewrite the queries into CREATE TABLE queries for log tables:
     $cols = <<<COLS
+            ,
             log_date    TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
             log_conn_id INTEGER,
             log_user_id INTEGER,
@@ -587,7 +588,7 @@ COLS;
     // so there's no need for a default timestamp and therefore we remove such default timestamps
     // also eliminate the NOT NULL constraint, since we always copy and schema can change down the road)
     $query = self::fixTimeStampAndNotNullSQL($query);
-    $query = preg_replace("/^\) /m", "$cols\n) ", $query);
+    $query = preg_replace("/(,*\n*\) )ENGINE/m", "$cols\n) ENGINE", $query);
 
     CRM_Core_DAO::executeQuery($query, CRM_Core_DAO::$_nullArray, TRUE, NULL, FALSE, FALSE);