刘珍 created IOTDB-3332:
-------------------------

             Summary: [ ConfigNode ] Internal error processing 
getOrCreateSchemaPartition : NPE
                 Key: IOTDB-3332
                 URL: https://issues.apache.org/jira/browse/IOTDB-3332
             Project: Apache IoTDB
          Issue Type: Bug
          Components: mpp-cluster
    Affects Versions: 0.14.0-SNAPSHOT
            Reporter: 刘珍
            Assignee: Yongzao Dan
         Attachments: ip62_confignode_log_error.log, 
ip62_iotdb-confignode.properties, ip62_iotdb-engine.properties, 
ip62_log_error.log, ip66_iotdb-confignode.properties, 
ip66_iotdb-engine.properties, ip68_bm_config.properties, 
ip68_iotdb-confignode.properties, ip68_iotdb-engine.properties

master_0530_95884ad
3confignode,3datanode
并发创建schema,confignode抛异常:
2022-05-30 17:00:13,873 [pool-2-IoTDB-ConfigNodeRPC-Client-56] ERROR 
o.a.t.ProcessFunction:47 - Internal error processing getOrCreateSchemaPartition
java.lang.NullPointerException: null
        at java.util.Collections.shuffle(Collections.java:457)
        at java.util.Collections.shuffle(Collections.java:427)
        at 
org.apache.iotdb.confignode.manager.load.balancer.allocator.CopySetRegionAllocator.genWeightedRandomRegion(CopySetRegionAllocator.java:114)
        at 
org.apache.iotdb.confignode.manager.load.balancer.allocator.CopySetRegionAllocator.allocateRegion(CopySetRegionAllocator.java:65)
        at 
org.apache.iotdb.confignode.manager.load.balancer.RegionBalancer.genRegionsAllocationPlan(RegionBalancer.java:87)
        at 
org.apache.iotdb.confignode.manager.load.LoadManager.initializeRegions(LoadManager.java:92)
        at 
org.apache.iotdb.confignode.manager.PartitionManager.checkAndAllocateRegionsIfNecessary(PartitionManager.java:315)
        at 
org.apache.iotdb.confignode.manager.PartitionManager.getOrCreateSchemaPartition(PartitionManager.java:122)
        at 
org.apache.iotdb.confignode.manager.ConfigManager.getOrCreateSchemaPartition(ConfigManager.java:367)
        at 
org.apache.iotdb.confignode.service.thrift.ConfigNodeRPCServiceProcessor.getOrCreateSchemaPartition(ConfigNodeRPCServiceProcessor.java:260)
        at 
org.apache.iotdb.confignode.rpc.thrift.ConfigIService$Processor$getOrCreateSchemaPartition.getResult(ConfigIService.java:1775)
        at 
org.apache.iotdb.confignode.rpc.thrift.ConfigIService$Processor$getOrCreateSchemaPartition.getResult(ConfigIService.java:1755)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:38)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

先看到datanode的异常,又去找confignode的日志的,datanode的异常:
2022-05-30 17:00:13,884 [pool-20-IoTDB-RPC-Client-54] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:65 - level-0 Exception class 
org.apache.thrift.TException, message Fail to connect to any config node. 
Please check server it
2022-05-30 17:00:13,884 [pool-20-IoTDB-RPC-Client-47] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:65 - level-0 Exception class 
org.apache.thrift.TException, message Fail to connect to any config node. 
Please check server it
2022-05-30 17:00:13,884 [pool-20-IoTDB-RPC-Client-34] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:65 - level-0 Exception class 
org.apache.thrift.TException, message Fail to connect to any config node. 
Please check server it
2022-05-30 17:00:13,884 [pool-20-IoTDB-RPC-Client-38] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:65 - level-0 Exception class 
org.apache.thrift.TException, message Fail to connect to any config node. 
Please check server it
2022-05-30 17:00:13,886 [pool-20-IoTDB-RPC-Client-48] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:65 - level-0 Exception class 
org.apache.thrift.TException, message Fail to connect to any config node. 
Please check server it
2022-05-30 17:00:13,888 [pool-20-IoTDB-RPC-Client-34] ERROR 
o.a.i.c.c.s.SyncThriftClientWithErrorHandler:80 - root cause message Fail to 
connect to any config node. Please check server it, LocalizedMessage Fail to 
connect to any config node. Please check server it,
org.apache.thrift.TException: Fail to connect to any config node. Please check 
server it
        at 
org.apache.iotdb.db.client.ConfigNodeClient.getOrCreateSchemaPartition(ConfigNodeClient.java:444)
        at 
org.apache.iotdb.db.client.ConfigNodeClient$$EnhancerByCGLIB$$7d184669.CGLIB$getOrCreateSchemaPartition$17(<generated>)
        at 
org.apache.iotdb.db.client.ConfigNodeClient$$EnhancerByCGLIB$$7d184669$$FastClassByCGLIB$$e4527cc5.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
        at 
org.apache.iotdb.commons.client.sync.SyncThriftClientWithErrorHandler.intercept(SyncThriftClientWithErrorHandler.java:55)
        at 
org.apache.iotdb.db.client.ConfigNodeClient$$EnhancerByCGLIB$$7d184669.getOrCreateSchemaPartition(<generated>)
        at 
org.apache.iotdb.db.mpp.plan.analyze.ClusterPartitionFetcher.getOrCreateSchemaPartition(ClusterPartitionFetcher.java:138)
        at 
org.apache.iotdb.db.mpp.plan.analyze.Analyzer$AnalyzeVisitor.visitCreateMultiTimeseries(Analyzer.java:997)
        at 
org.apache.iotdb.db.mpp.plan.analyze.Analyzer$AnalyzeVisitor.visitCreateMultiTimeseries(Analyzer.java:128)
        at 
org.apache.iotdb.db.mpp.plan.statement.metadata.CreateMultiTimeSeriesStatement.accept(CreateMultiTimeSeriesStatement.java:122)
        at 
org.apache.iotdb.db.mpp.plan.statement.StatementVisitor.process(StatementVisitor.java:66)
        at 
org.apache.iotdb.db.mpp.plan.analyze.Analyzer.analyze(Analyzer.java:120)
        at 
org.apache.iotdb.db.mpp.plan.execution.QueryExecution.analyze(QueryExecution.java:182)
        at 
org.apache.iotdb.db.mpp.plan.execution.QueryExecution.<init>(QueryExecution.java:121)
        at 
org.apache.iotdb.db.mpp.plan.Coordinator.createQueryExecution(Coordinator.java:110)
        at 
org.apache.iotdb.db.mpp.plan.Coordinator.execute(Coordinator.java:130)
        at 
org.apache.iotdb.db.service.thrift.impl.DataNodeTSIServiceImpl.createMultiTimeseries(DataNodeTSIServiceImpl.java:455)
        at 
org.apache.iotdb.service.rpc.thrift.TSIService$Processor$createMultiTimeseries.getResult(TSIService.java:3203)
        at 
org.apache.iotdb.service.rpc.thrift.TSIService$Processor$createMultiTimeseries.getResult(TSIService.java:3183)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
        at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:38)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

复现流程:
1. 192.168.10.62/66/68  均为72C256G
启动顺序:confignode 62/66/68
datanode 62/66/68
2. 68机器的bm运行附件中的配置文件
/data/benchmark/weekly_shell/bm_0527_e7b23aa




--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to