apache / apache/iotdb

[Bug] 特定场景 SELECT last * from 语句报错

Open
#16,249 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
6.4k
Forks
1.2k
Avg merge
1d 23h
Merged PRs (30d)
115

Description

### Search before asking

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

### Version

2.0.5

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

SELECT last * from root.xx.yy where Time < 1756080000000 and Time > 1755910000000
时能正常查到数据
SELECT last * from root.xx.yy where Time < 1756080000000 and Time > 1755010000000
时间范围变化后,报错:
SQL 错误 [301]: 301: null

类似的
select last `y1`.*,y2.*
from root.xx where Time >= 1756080000000
能查到数据
select last `y1`.*,y2.*
from root.xx
不带条件报错:
SQL 错误 [305] [[INTERNAL_SERVER_ERROR(305)] Exception occurred: "select last `y1`.*,y2.*
from root.xx ". executeStatement failed. Index 4 out of bounds for length 4]: 305: [INTERNAL_SERVER_ERROR(305)] Exception occurred: "select last `y1`.*,y2.*
from root.xx ". executeStatement failed. Index 4 out of bounds for length 4

### What did you expect to see?

无论条件如何,语法没错,不应该报错。另外2.0.2版本没发现这个问题

### What did you see instead?

SQL 错误 [301]
SQL 错误 [305]

### Anything else?

_No response_

### Are you willing to submit a PR?

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

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the two SELECT last queries on IoTDB 2.0.5, then compare their behavior with version 2.0.2. Trace the query path that produces errors 301 and 305, including the reported index-out-of-bounds failure; done means both query forms execute successfully across the stated time ranges and without conditions.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, sql
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.