Skip to content

V1.0 时间倒序 order by time desc limit N; 如果limit N 大于1查询失败 #8327

@phh2008

Description

@phh2008

数据量:100万条,以时间降序序查询 order by time desc limit n; n>1查询就会报错,而以时间升序查询则正常。

IoTDB> select * from root.ln.g1.d3 order by time desc limit 1
+-----------------------------+------------------+-------------------------+--------------------+
| Time|root.ln.g1.d3.name|root.ln.g1.d3.temperature|root.ln.g1.d3.status|
+-----------------------------+------------------+-------------------------+--------------------+
|2022-06-12T21:46:39.000+08:00| tom| 37.8| false|
+-----------------------------+------------------+-------------------------+--------------------+
Total line number = 1
It costs 0.046s
IoTDB> select * from root.ln.g1.d3 order by time desc limit 2
Msg: 301: FragmentInstance 20221205_024339_88511_1.1.0 is aborted by timeout

错误日志:
2022-12-05 10:50:35,627 [pool-39-IoTDB-ClientRPC-Processor-7] WARN o.a.i.d.u.ErrorHandlingUtils:90 - Status code: 301, Query Statement: "select * from root.ln.g1.d3 order by time desc limit 2". executeStatement failed
org.apache.iotdb.commons.exception.IoTDBException: org.apache.iotdb.db.mpp.execution.schedule.FragmentInstanceAbortedException: FragmentInstance 20221205_024935_88515_1.1.0 is aborted by timeout
at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.dealWithException(QueryExecution.java:430)
at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getResult(QueryExecution.java:413)
at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getByteBufferBatchResult(QueryExecution.java:448)
at org.apache.iotdb.db.utils.QueryDataSetUtils.convertQueryResultByFetchSize(QueryDataSetUtils.java:387)
at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.lambda$static$0(ClientRPCServiceImpl.java:160)
at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementInternal(ClientRPCServiceImpl.java:236)
at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementV2(ClientRPCServiceImpl.java:390)
at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3453)
at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3433)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
at org.apache.iotdb.db.service.thrift.ProcessorWithMetrics.process(ProcessorWithMetrics.java:64)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.iotdb.db.mpp.execution.schedule.FragmentInstanceAbortedException: FragmentInstance 20221205_024935_88515_1.1.0 is aborted by timeout
at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler.clearDriverTask(DriverScheduler.java:246)
at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler.access$900(DriverScheduler.java:54)
at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler$Scheduler.toAborted(DriverScheduler.java:390)
at org.apache.iotdb.db.mpp.execution.schedule.DriverTaskTimeoutSentinelThread.execute(DriverTaskTimeoutSentinelThread.java:77)
at org.apache.iotdb.db.mpp.execution.schedule.AbstractDriverThread.run(AbstractDriverThread.java:74)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions