oliverzgy opened a new issue, #12966: URL: https://github.com/apache/iotdb/issues/12966
### Search before asking - [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar. ### Version 1.3.2 ### Describe the bug and provide the minimal reproduce step Insert data via restful api, the request payload is as below: `{ "time": "2024-07-18T11:14:37.669158+00:00", "msg": "action_template_rendered", "meta": { "trace_tag": "QUERY_RENDER", "rule_trigger_ts": [ 1721301277619 ], "rule_ids": [ "rule_9f32_duplication" ], "result": { "url": "{http,{8,130,129,18},18080,\"/rest/v2/insertTablet\"}", "timeout": 30000, "port": 18080, "path": "/rest/v2/insertTablet", "method": "post", "host": "8.130.129.18", "headers": { "Content-type": "application/json", "Authorization": "******" }, "body": "{\"is_aligned\":false,\"device\":\"mock_client_15\",\"data_types\":[\"FLOAT\",\"FLOAT\",\"FLOAT\",\"FLOAT\",\"FLOAT\",\"FLOAT\",\"FLOAT\",\"FLOAT\",\"TEXT\"],\"measurements\":[\"temperature\",\"humidity\",\"volume\",\"PM10\",\"pm25\",\"SO2\",\"NO2\",\"CO\",\"area\"],\"timestamps\":[1721301277657,1721301277657,1721301277657,1721301277657,1721301277657,1721301277657,1721301277657,1721301277657,1721301277657],\"values\":[[36.62,null,null,null,null,null,null,null,null],[null,78.38,null,null,null,null,null,null,null],[null,null,134.72,null,null,null,null,null,null],[null,null,null,203.57,null,null,null,null,null],[null,null,null,null,28.1,null,null,null,null],[null,null,null,null,null,16.15,null,null,null],[null,null,null,null,null,null,2.1,null,null],[null,null,null,null,null,null,null,29.68,null],[null,null,null,null,null,null,null,null,\"77\"]]}" }, "client_ids": [ "mock_client_15" ], "action_info": { "type": "iotdb", "name": "IoTDB" } }, "level": "debug" }` response from restfule api: `{ "time": "2024-07-18T11:14:37.678849+00:00", "msg": "action_failed", "meta": { "trace_tag": "ACTION", "rule_trigger_ts": [ 1721301277619 ], "rule_id": "rule_9f32_duplication", "reason": { "message": "An error occurred when executing getDeviceToStorageGroup():root is not a legal path", "code": 507 }, "clientid": "mock_client_15", "action_info": { "type": "iotdb", "name": "IoTDB" } }, "level": "debug" } ` Server logs `iotdb-service | org.apache.iotdb.db.exception.sql.StatementAnalyzeException: An error occurred when executing getDeviceToStorageGroup():root is not a legal path iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.cache.partition.PartitionCache.getStorageGroupCacheResult(PartitionCache.java:369) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.cache.partition.PartitionCache.getStorageGroupToDevice(PartitionCache.java:143) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.ClusterPartitionFetcher.getOrCreateSchemaPartition(ClusterPartitionFetcher.java:134) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitInternalCreateTimeseries(AnalyzeVisitor.java:2422) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitInternalCreateTimeseries(AnalyzeVisitor.java:198) iotdb-service | at org.apache.iotdb.db.queryengine.plan.statement.internal.InternalCreateTimeSeriesStatement.accept(InternalCreateTimeSeriesStatement.java:110) iotdb-service | at org.apache.iotdb.db.queryengine.plan.statement.StatementVisitor.process(StatementVisitor.java:135) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.Analyzer.analyze(Analyzer.java:47) iotdb-service | at org.apache.iotdb.db.queryengine.plan.planner.TreeModelPlanner.analyze(TreeModelPlanner.java:94) iotdb-service | at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.analyze(QueryExecution.java:253) iotdb-service | at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.<init>(QueryExecution.java:121) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.createQueryExecutionForTreeModel(Coordinator.java:211) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.lambda$executeForTreeModel$0(Coordinator.java:175) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.execution(Coordinator.java:127) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.executeForTreeModel(Coordinator.java:170) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.AutoCreateSchemaExecutor.executeStatement(AutoCreateSchemaExecutor.java:86) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.AutoCreateSchemaExecutor.executeInternalCreateTimeseriesStatement(AutoCreateSchemaExecutor.java:508) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.AutoCreateSchemaExecutor.internalCreateTimeSeries(AutoCreateSchemaExecutor.java:472) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.AutoCreateSchemaExecutor.autoCreateTimeSeries(AutoCreateSchemaExecutor.java:130) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.NormalSchemaFetcher.processNormalTimeSeries(NormalSchemaFetcher.java:179) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.ClusterSchemaFetcher.fetchAndComputeSchemaWithAutoCreate(ClusterSchemaFetcher.java:177) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.schema.SchemaValidator.validate(SchemaValidator.java:48) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.validateSchema(AnalyzeVisitor.java:2694) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitInsertTablet(AnalyzeVisitor.java:2513) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitInsertTablet(AnalyzeVisitor.java:198) iotdb-service | at org.apache.iotdb.db.queryengine.plan.statement.crud.InsertTabletStatement.accept(InsertTabletStatement.java:137) iotdb-service | at org.apache.iotdb.db.queryengine.plan.statement.StatementVisitor.process(StatementVisitor.java:135) iotdb-service | at org.apache.iotdb.db.queryengine.plan.analyze.Analyzer.analyze(Analyzer.java:47) iotdb-service | at org.apache.iotdb.db.queryengine.plan.planner.TreeModelPlanner.analyze(TreeModelPlanner.java:94) iotdb-service | at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.analyze(QueryExecution.java:253) iotdb-service | at org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.<init>(QueryExecution.java:121) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.createQueryExecutionForTreeModel(Coordinator.java:211) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.lambda$executeForTreeModel$0(Coordinator.java:175) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.execution(Coordinator.java:127) iotdb-service | at org.apache.iotdb.db.queryengine.plan.Coordinator.executeForTreeModel(Coordinator.java:170) iotdb-service | at org.apache.iotdb.db.protocol.rest.v2.impl.RestApiServiceImpl.insertTablet(RestApiServiceImpl.java:244) iotdb-service | at org.apache.iotdb.db.protocol.rest.v2.RestApi.insertTablet(RestApi.java:115) iotdb-service | at jdk.internal.reflect.GeneratedMethodAccessor14.invoke(Unknown Source) iotdb-service | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) iotdb-service | at java.base/java.lang.reflect.Method.invoke(Unknown Source) iotdb-service | at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52) iotdb-service | at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:146) iotdb-service | at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:189) iotdb-service | at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:176) iotdb-service | at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:93) iotdb-service | at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:478) iotdb-service | at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:400) iotdb-service | at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81) iotdb-service | at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:256) iotdb-service | at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248) iotdb-service | at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244) iotdb-service | at org.glassfish.jersey.internal.Errors.process(Errors.java:292) iotdb-service | at org.glassfish.jersey.internal.Errors.process(Errors.java:274) iotdb-service | at org.glassfish.jersey.internal.Errors.process(Errors.java:244) iotdb-service | at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265) iotdb-service | at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:235) iotdb-service | at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:684) iotdb-service | at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394) iotdb-service | at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346) iotdb-service | at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358) iotdb-service | at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:311) iotdb-service | at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205) iotdb-service | at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799) iotdb-service | at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1656) iotdb-service | at org.apache.iotdb.db.protocol.rest.filter.ApiOriginFilter.doFilter(ApiOriginFilter.java:37) iotdb-service | at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) iotdb-service | at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1626) iotdb-service | at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:552) iotdb-service | at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) iotdb-service | at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440) iotdb-service | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) iotdb-service | at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:505) iotdb-service | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) iotdb-service | at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355) iotdb-service | at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) iotdb-service | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) iotdb-service | at org.eclipse.jetty.server.Server.handle(Server.java:516) iotdb-service | at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487) iotdb-service | at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732) iotdb-service | at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479) iotdb-service | at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277) iotdb-service | at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) iotdb-service | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) iotdb-service | at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) iotdb-service | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338) iotdb-service | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315) iotdb-service | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173) iotdb-service | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131) iotdb-service | at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409) iotdb-service | at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) iotdb-service | at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) iotdb-service | at java.base/java.lang.Thread.run(Unknown Source) ` ### What did you expect to see? Data inserted successfully ### What did you see instead? An error happended: 2024-07-18 10:59:47,463 [qtp1038651236-54] WARN o.a.i.d.p.r.v.h.ExceptionHandler:84 - An error occurred when executing getDeviceToStorageGroup():root is not a legal path ### Anything else? _No response_ ### Are you willing to submit a PR? - [ ] I'm willing to submit a PR! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
