MDL-25910 custom socket location for postgresql driver, improved config-dist.php...
authorPetr Skoda <commits@skodak.org>
Fri, 14 Jan 2011 11:11:49 +0000 (12:11 +0100)
committerPetr Skoda <commits@skodak.org>
Fri, 14 Jan 2011 11:11:49 +0000 (12:11 +0100)
config-dist.php
lib/dml/pgsql_native_moodle_database.php

index 66f6bad..f9909be 100644 (file)
@@ -50,9 +50,12 @@ $CFG->dboptions = array(
                                 //  used? set to 'false' for the most stable
                                 //  setting, 'true' can improve performance
                                 //  sometimes
-    'dbsocket'  => false,       // should connection via UNIX socket be
-                                //  used? if you set it to 'true' here,
-                                //  set dbhost to 'localhost'
+    'dbsocket'  => false,       // should connection via UNIX socket be used?
+                                //  if you set it to 'true' or custom path
+                                //  here set dbhost to 'localhost',
+                                //  (please note mysql is always using socket
+                                //  if dbhost is 'localhost' - if you need
+                                //  local port connection use '127.0.0.1')
     'dbport'    => '',          // the TCP port number to use when connecting
                                 //  to the server. keep empty string for the
                                 //  default port
index d78bf57..030e954 100644 (file)
@@ -138,8 +138,11 @@ class pgsql_native_moodle_database extends moodle_database {
         // Unix socket connections should have lower overhead
         if (!empty($this->dboptions['dbsocket']) and ($this->dbhost === 'localhost' or $this->dbhost === '127.0.0.1')) {
             $connection = "user='$this->dbuser' password='$pass' dbname='$this->dbname'";
+            if (strpos($this->dboptions['dbsocket'], '/') !== false) {
+                $connection = $connection." host='".$this->dboptions['dbsocket']."'";
+            }
         } else {
-            $this->dboptions['dbsocket'] = 0;
+            $this->dboptions['dbsocket'] = '';
             if (empty($this->dbname)) {
                 // probably old style socket connection - do not add port
                 $port = "";