org.apache.iotdb.commons.exception.IoTDBException: java.lang.IndexOutOfBoundsException: Invalid position 186 and length -139 in page with 47 positions
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
Línea de trabajo
Start by reproducing the reported window query and trace execution from TableWindowOperator.java through Partition.java to TsBlock.getRegion(TsBlock.java:147). Compare the partition positions with the 47-position block shown in the exception. Done means the query completes without the IndexOutOfBoundsException and the regression is covered by a test.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
2026-09-15 10:12:30,278 [pool-57-IoTDB-ClientRPC-Processor-8] WARN o.a.i.d.u.ErrorHandlingUtils:127 - Status code: 301, Query Statement: "SELECT time, patient_id, device_id, session_id, frame_id, package_sequence,
battery, rssi, resp_rate, heart_rate, pulse_rate, spo2, temperature,
error_code, systolic_pressure, diastolic_pressure, mean_pressure, nurse_call, nasal_resp_rate, flow,
o2_content, co2_content, gas_flow
FROM (
SELECT time, patient_id, device_id, session_id, frame_id, package_sequence,
battery, rssi, resp_rate, heart_rate, pulse_rate, spo2, temperature,
error_code, systolic_pressure, diastolic_pressure, mean_pressure, nurse_call, nasal_resp_rate, flow,
o2_content, co2_content, gas_flow,
ROW_NUMBER() OVER (
PARTITION BY date_bin(1800s, time)
ORDER BY time ASC
) AS replay_row_num
FROM vital_sign
WHERE patient_id = 'da9a4ea1b3e64b3b9834f85baf15a1c9'
AND time >= 1789351946499
AND time < 1789438346499
) replay_source
WHERE replay_row_num = 1 OR error_code > 0
ORDER BY time ASC". executeStatement failed because Invalid position 186 and length -139 in page with 47 positions
org.apache.iotdb.commons.exception.IoTDBException: java.lang.IndexOutOfBoundsException: Invalid position 186 and length -139 in page with 47 positions
at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.dealWithException(QueryExecution.java:479)
at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.getResult(QueryExecution.java:452)
at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.getByteBufferBatchResult(QueryExecution.java:498)
at org.apache.iotdb.db.utils.QueryDataSetUtils.convertQueryResultByFetchSize(QueryDataSetUtils.java:619)
at org.apache.iotdb.db.protocol.thrift.impl.ClientRPCServiceImpl.lambda$static$0(ClientRPCServiceImpl.java:284)
at org.apache.iotdb.db.protocol.thrift.impl.ClientRPCServiceImpl.executeStatementInternal(ClientRPCServiceImpl.java:430)
at org.apache.iotdb.db.protocol.thrift.impl.ClientRPCServiceImpl.executeStatementV2(ClientRPCServiceImpl.java:923)
at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:4164)
at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:4144)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
at org.apache.iotdb.db.protocol.thrift.ProcessorWithMetrics.process(ProcessorWithMetrics.java:64)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IndexOutOfBoundsException: Invalid position 186 and length -139 in page with 47 positions
at org.apache.tsfile.read.common.block.TsBlock.getRegion(TsBlock.java:147)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.partition.Partition.(Partition.java:41)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.partition.PartitionExecutor.(PartitionExecutor.java:73)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.TableWindowOperator.next(TableWindowOperator.java:178)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.FilterAndProjectOperator.next(FilterAndProjectOperator.java:126)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.FilterAndProjectOperator.next(FilterAndProjectOperator.java:126)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.SortOperator.next(SortOperator.java:61)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.sink.IdentitySinkOperator.next(IdentitySinkOperator.java:106)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.processInternal(Driver.java:241)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.lambda$processFor$1(Driver.java:152)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.tryWithLock(Driver.java:337)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.processFor(Driver.java:133)
at org.apache.iotdb.db.queryengine.execution.schedule.DriverTaskThread.execute(DriverTaskThread.java:83)
at org.apache.iotdb.db.queryengine.execution.schedule.AbstractDriverThread.run(AbstractDriverThread.java:79)
2026-09-15 10:12:31,280 [pool-50-IoTDB-MPP-Coordinator-Scheduled-Executor-1] WARN o.a.i.d.q.e.f.FragmentInstanceContext:442 - [Unknown exception]:
java.lang.IndexOutOfBoundsException: Invalid position 186 and length -139 in page with 47 positions
at org.apache.tsfile.read.common.block.TsBlock.getRegion(TsBlock.java:147)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.partition.Partition.(Partition.java:41)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.partition.PartitionExecutor.(PartitionExecutor.java:73)
at org.apache.iotdb.db.queryengine.execution.operator.process.window.TableWindowOperator.next(TableWindowOperator.java:178)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.FilterAndProjectOperator.next(FilterAndProjectOperator.java:126)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.FilterAndProjectOperator.next(FilterAndProjectOperator.java:126)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.process.SortOperator.next(SortOperator.java:61)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.operator.sink.IdentitySinkOperator.next(IdentitySinkOperator.java:106)
at org.apache.iotdb.db.queryengine.execution.operator.Operator.nextWithTimer(Operator.java:48)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.processInternal(Driver.java:241)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.lambda$processFor$1(Driver.java:152)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.tryWithLock(Driver.java:337)
at org.apache.iotdb.db.queryengine.execution.driver.Driver.processFor(Driver.java:133)
at org.apache.iotdb.db.queryengine.execution.schedule.DriverTaskThread.execute(DriverTaskThread.java:83)
at org.apache.iotdb.db.queryengine.execution.schedule.AbstractDriverThread.run(AbstractDriverThread.java:79)
- Lenguaje dominante
- Java
- Estrellas
- 6.4k
- Forks
- 1.2k
- Merge medio
- 1 d 8 h
- PR fusionados (30 d)
- 129
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/iotdb
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
IoTDB Edge: stop-edge.sh does not stop its own process when IOTDB_HOME is set, and reports success Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
[Bug] 执行start-all.sh后无法启动集群问题 Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
[Bug] findColumn throws NullPointerException instead of SQLException for an unknown column name Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Todos los issues de apache/iotdb
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
elastic/gradle-plugins#157 ·
-
enhancement Tools
Dificultad 1/5 Menos de una hora Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
apache/rocketmq-dashboard#5008 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
DETECT_PARAMETER_NAMES=false silently disables @ConstructorProperties-based Creator detection too Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
FasterXML/jackson-databind#6229 ·