...his->execCommand(XS_CMD_FLUSH_LOGGING, XS_CMD_OK_LOG_FLUSHED); } catch (XSException $e) { if ($e->getCode() === XS_CMD_ERR_BUSY) { return false; } throw $e; } return true;} 强制刷新服务端当前项目的搜索日志
....php'; $xs = new XS('demo'); $docs = $xs->search->search('15'); } catch (XSException $e) { echo $e; // 直接输出异常描述 if (defined('DEBUG')) // 如果是 DEBUG 模式,则输出堆栈情况 echo "\n" . $e->getTraceAsString() . "\n"; }
...w PDO($dsn, $user, $pass); } catch (PDOException $e) { throw new XSException($e->getMessage()); }} 连接数据库 具体的每个类必须实现 makeDsn 来将参数转换为 dsn 参见 makeDsn makeDsn() 方法 abstract protected void makeDsn(array $param) $param...
[XSException] ../../..(2094): Data/Name too long(S#402) 我想问下关于讯搜的搜索语句过长的问题。 因为当搜索语句过长的时候会报错,用户体验很不好。 在哪里可以获取搜索语句的长度。或者当超过长度限制的时候在哪里可以判断。 有...
...$res === false) { $info = $this->obj->errorInfo(); throw new XSException('SQLSTATE[' . $info[0] . '] [' . $info[1] . '] ' . $info[2]); } $ret = $res->fetchAll(PDO::FETCH_ASSOC); return $ret;} 执行 SQL 语句
ERR_XAPIAN 的话你可以看一下 tmp/searchd.log 看看里面应该有相关的错误 或直接打印 XSException 的错误信息应该也有相关描述。 把错误信息提供全面一点我也看看
...this->execCommand(XS_CMD_INDEX_COMMIT, XS_CMD_OK_DB_COMMITED); } catch (XSException $e) { if ($e->getCode() === XS_CMD_ERR_BUSY || $e->getCode() === XS_CMD_ERR_RUNNING) { return false; } throw $e; } return true;} 强制刷新服务端的当前库的索引...
...w PDO($dsn, $user, $pass); } catch (PDOException $e) { throw new XSException($e->getMessage()); }} 连接数据库 具体的每个类必须实现 makeDsn 来将参数转换为 dsn
...ion __set($name, $value){ if ($this->_meta !== null) { throw new XSException('Magick property of result document is read-only'); } $this->setField($name, $value);} 魔术方法 __set 实现以对象属性方式设置文档字段值
...ypeMap[XSFieldMeta::TYPE_ID])) { if ($throw) { throw new XSException('Missing field of type ID'); } return false; } return true;} 判断该字段方案是否有效、可用 每个方案必须并且只能包含一个类型为 ID 的字段