Manticore Search 15.1.0 已发布。此维护版本包含错误修复和小幅改进。
突破性变更
MCL 升级至 9.0.0
版本 15.0.0 将 MCL(Manticore 列式库)要求更新至 9.0.0,带来重大改进:
- 非压缩浮点向量存储
- KNN 向量的块大小更改
- 非缓冲读取
⚠️ 重要:此更新更改了列式存储数据格式。旧版列式库无法读取使用 MCL 9.0.0 创建的数据,但新版仍能无问题读取您现有的列式表。Manticore Search / MCL API 版本已提升。
如果您遵循 官方安装指南 ,无需担心此问题,因为正确的 MCL 版本将自动安装。
推荐版本
- MCL:9.0.0
- Manticore Buddy:3.40.2
新功能和改进
此版本包含以下改进:
- 通过将总时间拆分为更清晰的部分,改进了磁盘块刷新日志记录
- 支持在
JOIN ON子句中使用任意过滤表达式(而不仅仅是等值比较) - 改进了
LOCK TABLES/UNLOCK TABLES的处理:写锁现在返回警告而非错误,读锁在SHOW LOCKS中正确显示 - 在记录查询请求时,修剪 JSON 负载中的多余空格和换行
- 将 Manticore Buddy 要求更新至 3.40.2,包含对
/sql端点的模糊搜索支持和各种修复
错误修复
此版本包含来自先前版本的错误修复,包括:
- 修复了回归问题:当使用自定义配置路径安装时,原生 Windows 服务无法启动
- 修复了回归问题:HTTP
/sql响应错误地使用Content-Type: text/html而非application/json - 通过跳过对空 HNSW 索引的搜索,修复了 KNN 向量搜索中的崩溃
- 修复了 KNN 过采样行为:当未请求重新评分时,不再计算重新评分的 KNN 距离
- 修复了通过
GROUP BY/FACET对使用 JSON-to-attribute 映射生成的属性进行分组时失败的问题 - 修复了 MATCH() 解析,使空组如
()不再触发错误 - 修复了 JSON 属性分面:在 FACET 子句中对 JSON 数组进行别名现在与直接对数组进行分面的行为一致
- 修复了 SQL 基源中“连接字段”的处理,使在迭代连接命中时正确设置“结束标记”
- 修复了通过
/cli_json的多查询请求中包含分号(例如组合 SQL 语句)的问题 - 增强了更新验证,检查更新的属性是否与全文字段冲突
- 修复了通过代理处理的分布式表上 HTTP UPDATE 和 DELETE 请求缺少错误信息的问题
- 修复了在自定义排名表达式中使用
knn_dist()时 KNN+MATCH 查询导致的崩溃 - 修复了表状态计数器错误标记为 "_sec"(例如
query_time_1min)的问题,使其正确报告秒而非毫秒 - 修复了
SHOW INDEX <name> STATUS的搜索时间统计,使其与查询日志计算的值匹配 - 修复了在使用
persistent_connections_limit的分布式表时的内部错误 - 修复了通过 MySQL 客户端 9 执行某些命令时查询日志中出现的“unexpected $undefined near '$$'”错误
- 更新了 mysqldump 复制模式的备份文档并修复了多个损坏的手动链接
- 更新了与支持 Logstash 9.2 相关的文档和测试
- 修复了 Windows 上的测试,使 "ubertests" 完成后不再留下 minidumps
- 修复了 Windows 构建,通过修正
binlog.cpp中的类型不匹配 - 修复了自动补全解析,使带有转义引号的查询得到正确处理
- 文档化了在计算短语/邻近/NEAR 操作符的排名因素时使用的内部 32 位掩码
兼容性
Manticore Search 15.1.0 保持 强大的向后兼容性,需注意以下事项:
- 与现有数据和查询完全兼容
- 新版 MCL 9.0.0 可无问题读取现有列式表
- MCL 9.0.0 更新了列式存储数据格式。新版仍可读取您现有的数据,但旧版 MCL 无法读取使用 MCL 9.0.0 创建的列式数据。如果您未使用列式存储,则无需担心。
升级请遵循 安装指南 。
需要帮助或想联系?
- 加入我们的 Slack
- 访问 论坛
- 在 GitHub 上报告问题或提出功能建议
- 邮件至
[email protected]
如需完整详情,请参阅 变更日志 。
