summaryrefslogtreecommitdiff
path: root/classes/Memcached_DataObject.php
diff options
context:
space:
mode:
Diffstat (limited to 'classes/Memcached_DataObject.php')
-rw-r--r--classes/Memcached_DataObject.php17
1 files changed, 12 insertions, 5 deletions
diff --git a/classes/Memcached_DataObject.php b/classes/Memcached_DataObject.php
index e1d58dd70..674de9bc5 100644
--- a/classes/Memcached_DataObject.php
+++ b/classes/Memcached_DataObject.php
@@ -171,15 +171,22 @@ class Memcached_DataObject extends DB_DataObject
}
function getSearchEngine($table) {
- require_once INSTALLDIR.'/classes/SearchEngines.php';
+ require_once INSTALLDIR.'/lib/search_engines.php';
static $search_engine;
if (!isset($search_engine)) {
+ $connected = false;
if (common_config('sphinx', 'enabled')) {
$search_engine = new SphinxSearch($this, $table);
- } elseif ('mysql' === common_config('db', 'type')) {
- $search_engine = new MySQLSearch($this, $table);
- } else {
- $search_engine = new PGSearch($this, $table);
+ $connected = $search_engine->is_connected();
+ }
+
+ // unable to connect to sphinx' search daemon
+ if (!$connected) {
+ if ('mysql' === common_config('db', 'type')) {
+ $search_engine = new MySQLSearch($this, $table);
+ } else {
+ $search_engine = new PGSearch($this, $table);
+ }
}
}
return $search_engine;