apache / apache/iotdb

[Bug] 模糊查询 like 查询无法匹配所有满足条件的数据

Đang mở
#12,253 3 bình luận 1 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Java
Star
6.4k
Fork
1.2k
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
115

Mô tả

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar.

### Version

0.13.3

### Describe the bug and provide the minimal reproduce step

如下所示,是两个查询,第一个查询有61行数据,查询内容中满足存在 AABB的字符串有29条数据;第二个查询使用like进行模糊匹配,却只查询到一条数据。
使用正则匹配是可以全部匹配到的。
```
IoTDB> select log_info from root.fz4.userlog.s_1.** where time>1711471299000000000 and time < 1711680099000000000 and subsystem_id in(13,85,86) order by time desc align by device;
+-----------------------------------+-----------------------------------------------+--------------------------------------------------------------------------+
| Time| Device| log_info|
+-----------------------------------+-----------------------------------------------+--------------------------------------------------------------------------+
|2024-03-29T10:14:07.497227652+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据站 ,所选设备执行命令全部失败,
下发内容:停止命令|
|2024-03-29T10:13:01.245596353+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据站 ,停止命令下发错误,
下发内容:停止命令|
|2024-03-29T10:12:17.015642895+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,所选设备执行命令全部成功,
下发内容:士大夫:|
|2024-03-29T09:13:46.813319841+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行-自 测试数据 ,反馈超时,
下发内容:AABB|
|2024-03-28T17:09:56.545189930+08:00| root.fz4.userlog.s_1.userid_7| 下行,站厅-自 测试数据站 ,反馈超时,
下发内容:停止命令|
|2024-03-28T17:08:20.760339372+08:00| root.fz4.userlog.s_1.userid_7| 下行,站厅-自 测试数据 ,反馈超时,
下发内容:士大夫:|
|2024-03-28T17:07:07.184382465+08:00| root.fz4.userlog.s_1.userid_7| 下行,站厅-自 测试数据 ,反馈超时,
下发内容:士大夫:|
|2024-03-28T17:06:20.300855443+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,反馈超时,
下发内容:士大夫:|
|2024-03-28T17:03:20.280334769+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,反馈超时,
下发内容:AABB|
|2024-03-28T17:02:33.763913176+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,反馈超时,
下发内容:士大夫:|
|2024-03-28T16:29:55.205594507+08:00| root.fz4.userlog.s_1.userid_7| 创建重复时间表任务"HHMM"成功|
|2024-03-28T16:29:00.074173398+08:00| root.fz4.userlog.s_1.userid_7| 创建重复时间表任务"HHH"成功|
|2024-03-28T16:19:14.465323205+08:00| root.fz4.userlog.s_1.userid_7| CEN自检成功|
|2024-03-28T16:19:14.411137161+08:00| root.fz4.userlog.s_1.userid_7| CEN自检下发成功|
|2024-03-28T16:18:03.149670113+08:00| root.fz4.userlog.s_1.userid_7| CEN自检成功|
|2024-03-28T16:18:03.042466192+08:00| root.fz4.userlog.s_1.userid_7| CEN自检下发成功|
|2024-03-28T16:06:52.715451239+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T16:06:47.608124521+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T16:02:59.280079380+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T16:02:24.086492516+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T16:02:20.798119759+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T16:02:02.434995674+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T16:01:58.375793459+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T16:01:55.683650803+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T15:51:35.440728662+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:49:13.839724554+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:43:40.916188147+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:43:08.521880479+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:23:34.397710186+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:士大夫:|
|2024-03-28T15:22:50.226397573+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:09:36.032566710+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:07:05.573211240+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:04:32.990980908+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:01:47.436815548+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:00:56.081392780+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:58:41.836273644+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:58:37.652062127+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:55:47.337485077+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:50:09.986980347+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:48:51.860144939+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T13:35:20.873617920+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T13:34:10.621460125+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:31:22.055121872+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:30:21.719589770+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:29:07.647480558+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:26:15.395542578+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:26:10.280628758+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:25:38.972641341+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:24:47.708807802+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 编辑预录制信息"SSDFSSDDDD"成功,内容为:AABB"|
|2024-03-28T11:24:45.927589795+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| PIS下发审核成功|
|2024-03-28T10:21:10.110515722+08:00| root.fz4.userlog.s_1.userid_7| 添加预录制信息"SSDFSSDDDD"成功,内容为:实打实打算SDSD"|
|2024-03-28T10:21:08.859026440+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T16:00:10.541922724+08:00| root.fz4.userlog.s_1.userid_7| 上行-自 测试数据 ,下发错误,
下发内容:还会|
|2024-03-27T16:00:09.446654123+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:59:49.087330272+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:58:26.345968261+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:58:21.861009871+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:55:46.319377359+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:55:21.499522030+08:00| root.fz4.userlog.s_1.userid_7| 添加预录制信息"请问请问"成功,内容为:士大夫:"|
|2024-03-27T15:55:18.156974500+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
|2024-03-27T15:53:21.126669691+08:00| root.fz4.userlog.s_1.userid_7| PIS下发审核成功|
+-----------------------------------+-----------------------------------------------+--------------------------------------------------------------------------+
Total line number = 61
It costs 0.021s
IoTDB> select log_info from root.fz4.userlog.s_1.** where time>1711471299000000000 and time < 1711680099000000000 and subsystem_id in(13,85,86) and log_info like '%AABB%' order by time desc align by device;
+-----------------------------------+-----------------------------------------------+-------------------------------------------+
| Time| Device| log_info|
+-----------------------------------+-----------------------------------------------+-------------------------------------------+
|2024-03-28T11:24:47.708807802+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|编辑预录制信息"SSDFSSDDDD"成功,内容为:AABB"|
+-----------------------------------+-----------------------------------------------+-------------------------------------------+
Total line number = 1
It costs 0.012s

IoTDB> select log_info from root.fz4.userlog.s_1.** where time>1711471299000000000 and time < 1711680099000000000 and subsystem_id in(13,85,86) and log_info regexp '^*AABB*' order by time desc align by device;
+-----------------------------------+-----------------------------------------------+----------------------------------------------------+
| Time| Device| log_info|
+-----------------------------------+-----------------------------------------------+----------------------------------------------------+
|2024-03-29T09:13:46.813319841+08:00| root.fz4.userlog.s_1.userid_7| 上行,下行-自 测试数据 ,反馈超时,
下发内容:AABB|
|2024-03-28T17:03:20.280334769+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,反馈超时,
下发内容:AABB|
|2024-03-28T16:06:52.715451239+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T16:06:47.608124521+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T16:02:59.280079380+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:51:35.440728662+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:49:13.839724554+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:43:40.916188147+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:43:08.521880479+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:22:50.226397573+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:09:36.032566710+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:07:05.573211240+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:04:32.990980908+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:01:47.436815548+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T15:00:56.081392780+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:58:41.836273644+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:58:37.652062127+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:55:47.337485077+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 上行-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:50:09.986980347+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T14:48:51.860144939+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T13:35:20.873617920+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T13:34:10.621460125+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:31:22.055121872+08:00| root.fz4.userlog.s_1.userid_7|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:30:21.719589770+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:29:07.647480558+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:26:15.395542578+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:26:10.280628758+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:25:38.972641341+08:00|root.fz4.userlog.s_1.userid_1682975766379429888|上行,下行,站厅-自 测试数据 ,下发错误,
下发内容:AABB|
|2024-03-28T11:24:47.708807802+08:00|root.fz4.userlog.s_1.userid_1682975766379429888| 编辑预录制信息"SSDFSSDDDD"成功,内容为:AABB"|
+-----------------------------------+-----------------------------------------------+----------------------------------------------------+
Total line number = 29

```

### What did you expect to see?

同上

### What did you see instead?

同上

### Anything else?

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu với SQL reproducer trong issue trên IoTDB 0.13.3, so sánh các truy vấn LIKE và regexp với cùng các bộ lọc thời gian và subsystem. Truy vết đường dẫn thực thi truy vấn Java cho các vị từ LIKE trên chuỗi và thêm một regression test bằng dữ liệu tương đương; hoàn thành khi LIKE '%AABB%' trả về mọi hàng chứa AABB, khớp với kết quả regexp.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
java
Lĩnh vực
databases
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.