dev/core#2870 Fix upgrade error with rpow installed
authorEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 27 Sep 2021 05:41:32 +0000 (18:41 +1300)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 27 Sep 2021 05:41:32 +0000 (18:41 +1300)
CRM/Core/BAO/SchemaHandler.php

index 2f41ae364c4c50b7511f4d0221b2100e627f5af6..1686e798898fcc8796dc415e1f6bb68dd62f7dcc 100644 (file)
@@ -552,9 +552,7 @@ MODIFY      {$columnName} varchar( $length )
    * @return bool TRUE if FK is found
    */
   public static function checkFKExists($table_name, $constraint_name) {
-    $config = CRM_Core_Config::singleton();
-    $dsn = CRM_Utils_SQL::autoSwitchDSN($config->dsn);
-    $dbUf = DB::parseDSN($dsn);
+    $dao = new CRM_Core_DAO();
     $query = "
       SELECT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
       WHERE TABLE_SCHEMA = %1
@@ -563,7 +561,7 @@ MODIFY      {$columnName} varchar( $length )
       AND CONSTRAINT_TYPE = 'FOREIGN KEY'
     ";
     $params = [
-      1 => [$dbUf['database'], 'String'],
+      1 => [$dao->_database, 'String'],
       2 => [$table_name, 'String'],
       3 => [$constraint_name, 'String'],
     ];