You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "Yongzao Dan (Jira)" <ji...@apache.org> on 2023/03/06 07:23:00 UTC

[jira] [Assigned] (IOTDB-5519) [ confignode] ERROR o.a.i.c.m.p.PartitionManager:320 - Lacked some data partition allocation result in the response of getOrCreateDataPartition method

     [ https://issues.apache.org/jira/browse/IOTDB-5519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yongzao Dan reassigned IOTDB-5519:
----------------------------------

    Assignee: Yongzao Dan  (was: Xinyu Tan)

> [ confignode] ERROR o.a.i.c.m.p.PartitionManager:320 - Lacked some data partition allocation result in the response of getOrCreateDataPartition method
> ------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: IOTDB-5519
>                 URL: https://issues.apache.org/jira/browse/IOTDB-5519
>             Project: Apache IoTDB
>          Issue Type: Bug
>          Components: mpp-cluster
>    Affects Versions: 1.1.0-SNAPSHOT
>            Reporter: 刘珍
>            Assignee: Yongzao Dan
>            Priority: Major
>         Attachments: iotdb_5519.conf
>
>
> master_0210_8757400
> 问题描述:
> 启动3副本3C5D集群,benchmark创建元数据,写入数据。
> 设置集群为readonly (为了避免 insert + drop database 并发报错)
> drop database root.** ; 全部drop成功。
> 这时客户端还在继续写入,集群设置为running
> 应该能继续自动创建元数据,写入数据,实际是写入全部失败
> confignode报错:
> 2023-02-10 17:50:54,128 [pool-11-IoTDB-ConfigNodeRPC-Processor-33] ERROR o.a.i.c.m.p.PartitionManager:320 - Lacked some data partition allocation result in the response of getOrCreateDataPartition method
> DataNode报错:
> 2023-02-10 17:54:37,461 [pool-25-IoTDB-ClientRPC-Processor-155] WARN  o.a.i.d.u.ErrorHandlingUtils:61 - Status code: EXECUTE_STATEMENT_ERROR(301), operation: insertTablet failed
> java.lang.RuntimeException: Failed to get replicaSet of consensus group[id= TConsensusGroupId(type:DataRegion, id:14)]
>         at org.apache.iotdb.db.mpp.plan.analyze.cache.PartitionCache.getRegionReplicaSet(PartitionCache.java:419)
>         at org.apache.iotdb.db.mpp.plan.analyze.cache.PartitionCache.getTimeSlotDataPartition(PartitionCache.java:727)
>         at org.apache.iotdb.db.mpp.plan.analyze.cache.PartitionCache.getDeviceDataPartition(PartitionCache.java:695)
>         at org.apache.iotdb.db.mpp.plan.analyze.cache.PartitionCache.getStorageGroupDataPartition(PartitionCache.java:647)
>         at org.apache.iotdb.db.mpp.plan.analyze.cache.PartitionCache.getDataPartition(PartitionCache.java:607)
>         at org.apache.iotdb.db.mpp.plan.analyze.ClusterPartitionFetcher.getOrCreateDataPartition(ClusterPartitionFetcher.java:260)
>         at org.apache.iotdb.db.mpp.plan.analyze.AnalyzeVisitor.getAnalysisForWriting(AnalyzeVisitor.java:2002)
>         at org.apache.iotdb.db.mpp.plan.analyze.AnalyzeVisitor.visitInsertTablet(AnalyzeVisitor.java:1828)
>         at org.apache.iotdb.db.mpp.plan.analyze.AnalyzeVisitor.visitInsertTablet(AnalyzeVisitor.java:183)
>         at org.apache.iotdb.db.mpp.plan.statement.crud.InsertTabletStatement.accept(InsertTabletStatement.java:121)
>         at org.apache.iotdb.db.mpp.plan.statement.StatementVisitor.process(StatementVisitor.java:113)
>         at org.apache.iotdb.db.mpp.plan.analyze.Analyzer.analyze(Analyzer.java:48)
>         at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.analyze(QueryExecution.java:263)
>         at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.<init>(QueryExecution.java:147)
>         at org.apache.iotdb.db.mpp.plan.Coordinator.createQueryExecution(Coordinator.java:107)
>         at org.apache.iotdb.db.mpp.plan.Coordinator.execute(Coordinator.java:140)
>         at org.apache.iotdb.db.mpp.plan.Coordinator.execute(Coordinator.java:167)
>         at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.insertTablet(ClientRPCServiceImpl.java:1357)
>         at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$insertTablet.getResult(IClientRPCService.java:4279)
>         at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$insertTablet.getResult(IClientRPCService.java:4259)
>         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.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>         at java.base/java.lang.Thread.run(Thread.java:834)
> 测试环境 私有云1期
> 1.3副本3C5D
> 3confignode :172.16.2.23/24 /25 /data/iotdb/m_0210_8757400/logs
> 5datanode : 172.16.2.2/3/4/5/6 /data1/iotdb/m_0210_8757400/logs
> benchmark 在 172.16.2.26 /data/iotdb/benchmark_v1
> 数据库配置
> ConfigNode
> MAX_HEAP_SIZE="20G"
> MAX_DIRECT_MEMORY_SIZE="6G"
> DataNode
> MAX_HEAP_SIZE="20G"
> MAX_DIRECT_MEMORY_SIZE="6G"
> Common配置
> schema_replication_factor=3
> data_replication_factor=3
> 2. 启动benchmark 创建元数据,写入数据
> 3. 设置集群整体状态为readonly
> 4.drop database root.**
> 删除所有数据库
> 5.此时benchmark还在insert数据
> 设置集群整体状态为running,benchmark写入失败。
> 查看集群日志。



--
This message was sent by Atlassian Jira
(v8.20.10#820010)