blog-post

Manticore Search 13.6.7: OR运算符支持、分布式表连接和错误修复

我们很高兴发布 Manticore Search 13.6.7 ,其中包括我们在2025年7月完成的工作。此版本增加了在搜索查询中对明确的OR运算符支持、分布式表连接功能,以及多个提高集成兼容性的错误修复


明确的OR运算符支持

Manticore Search 13.6.7增加了PHRASE、PROXIMITY和QUORUM运算符中的明确|(OR)运算符支持。这允许:

  • 在短语和接近搜索中使用|语法
  • 更灵活的查询构建选项
  • 在复杂查询中对术语匹配的改进控制

此功能满足了用户对高级搜索运算符中更明确的OR语法的请求。

示例:

mysql> SELECT * FROM phrase_or_demo WHERE MATCH('"(happy | sad | angry) customer"');
--------------
SELECT * FROM phrase_or_demo WHERE MATCH('"(happy | sad | angry) customer"')
--------------

+------+---------------------------+---------------------------------------------------+------------+
| id   | title                     | content                                           | category   |
+------+---------------------------+---------------------------------------------------+------------+
|    2 | Sad Customer Feedback     | I am a very sad customer with poor experience     | reviews    |
|    4 | Angry Customer Complaint  | I am an angry customer demanding refund           | complaints |
|    1 | Happy Customer Review     | I am a very happy customer with excellent service | reviews    |
|   10 | Customer Happy Experience | The happy customer left positive feedback         | feedback   |
+------+---------------------------+---------------------------------------------------+------------+
4 rows in set (0.00 sec)

分布式表连接

版本13.6.7增加了对本地分布式表连接的支持

  • 连接操作现在可以与本地分布式表一起使用
  • 在分布式配置中支持多表查询
  • 在分布式设置中启用跨表操作

此功能允许具有分布式表配置的用户执行先前不支持的连接操作。

示例:

mysql> desc all_orders;
--------------
desc all_orders
--------------

+--------------+-------+
| Agent        | Type  |
+--------------+-------+
| orders_north | local |
| orders_south | local |
+--------------+-------+
2 rows in set (0.00 sec)

mysql> desc all_customers;
--------------
desc all_customers
--------------

+-----------------+-------+
| Agent           | Type  |
+-----------------+-------+
| customers_north | local |
| customers_south | local |
+-----------------+-------+
2 rows in set (0.00 sec)

mysql> SELECT all_customers.name, all_customers.email, SUM(amount) total_spent, COUNT(*) order_count FROM all_orders INNER JOIN all_customers ON all_orders.customer_id = all_customers.id WHERE amount > 50 GROUP BY all_customers.id, all_customers.name, all_customers.email HAVING total_spent > 200 ORDER BY total_spent DESC
--------------

+--------------------+---------------------+-------------+-------------+
| all_customers.name | all_customers.email | total_spent | order_count |
+--------------------+---------------------+-------------+-------------+
| Alice Johnson      | alice@email.com     | 1224.989990 |           3 |
| Carol Davis        | carol@email.com     |  419.989990 |           2 |
| David Wilson       | david@email.com     |  350.000000 |           1 |
+--------------------+---------------------+-------------+-------------+
3 rows in set (0.00 sec)

错误修复和改进

此次发布包括超过15个错误修复,解决了各种问题:

集成改进

  • 修复了与Sequel AceDBeaver的兼容性问题(解决了“未知sysvar”错误)
  • 改进了对数据库管理工具和第三方集成的支持

核心搜索修复

  • 修复了短语搜索中括号关键字丢失的问题
  • 为全文解析添加了模糊测试,并解决了许多可能导致内存泄漏或崩溃的问题

向量搜索修复

  • 修复了与KNN数据相关的OPTIMIZE TABLE挂起问题
  • 在添加float_vector列时修复了索引损坏

其他修复

  • 修复了复杂布尔过滤器中高亮显示的崩溃问题
  • 修复了分布式表和复制集群交互问题
  • 修复了长标记和正则表达式模式的处理

兼容性说明

此发布保持与现有安装的完全向后兼容性

  • 没有破坏性更改,适用于标准用例
  • 无缝升级至之前的13.x版本
  • 自动依赖更新,遵循官方安装指南时

所有新功能旨在与现有功能无缝协作。


升级信息

要升级到Manticore Search 13.6.7,请按照 安装说明 进行操作。

需要帮助或想分享反馈?

有关所有更改的完整详细信息,请查看 完整变更日志

安装Manticore Search

安装Manticore Search