我们很高兴地宣布 Manticore Search 3.1.0 的发布。下载地址为 here 和 Manticore Github 页面 。Docker 镜像可在 Docker Hub 获取。
新功能
- 复制 现在可用于实时索引,并且与过滤索引的工作方式相同。
- 现在可以在复制的 RT 索引上使用 INSERT / REPLACE / DELETE 和 UPDATE 语句。ALTER 和 ATTACH 语句的支持将在未来版本中添加,OPTIMIZE 仅在本地执行优化。
- 复制现在支持多个语句事务,之前仅支持单个语句提交。
- 引入了基于开源 ICU 库的新 形态 处理器。目前仅支持中文。中文 ICU 处理器将取代非开源的 RLP 处理器。
改进
- 我们对负责不同任务(如刷新)的线程唤醒机制进行了内部重构。新更改应导致空闲 CPU 使用率降低。
- 新增了 icu_data_dir 指令,用于在手动编译 ICU 时指定 ICU 文件。
- 引入了 LAST_INSERT_ID() 函数,返回当前会话中最后修改的文档 ID。替代地,变量 @@session.last_insert_id 也可以返回最后修改的文档 ID。
- SHOW VARIABLES
语句支持
LIKE 'pattern'子句。 - 对于过滤索引,INSERT 现在可以接受多个存储的查询文档,之前每个语句只能接受一个存储的查询文档。
- 表达时间的配置指令现在可以接受
字符串时间表达式
。例如
rt_flush_period = 3600可以重写为rt_flush_period = 60m或rt_flush_period = 1h。 - 可以通过 access_doclists 和 access_hitlists 指令使用新的 'mlock' 值来锁定文档和命中列表。
- 片段路径现在在 snippets_file_prefix 的作用域内被限制,即使路径是相对路径也是如此。
移除
- 移除了 RLP 处理器的支持。所有 rlp_* 配置指令已被移除。
- UPDATE 语句不再支持更新文档 ID 的值。
修复
此版本包含多项修复,仅举几个例子:
如需完整报告,请参阅 版本说明 。