刘珍 created IOTDB-3121:
-------------------------

             Summary: [ ICachedMNodeContainer.java ] 
MNodeContainers$EmptyContainer cannot be cast to 
org.apache.iotdb.db.metadata.mtree.store.disk.ICachedMNodeContainer
                 Key: IOTDB-3121
                 URL: https://issues.apache.org/jira/browse/IOTDB-3121
             Project: Apache IoTDB
          Issue Type: Bug
          Components: Core/Schema Manager
    Affects Versions: 0.14.0-SNAPSHOT
            Reporter: 刘珍
            Assignee: ZhaoXin
         Attachments: config.properties.1, config.properties.2

master_0509_bc6c4af
问题描述:
    2用户并发创建schema :
2022-05-09 11:20:55,548 [pool-16-IoTDB-RPC-Client-4] WARN  
o.a.i.d.u.ErrorHandlingUtils:61 - Status code: INTERNAL_SERVER_ERROR(500), 
operation: executeNonQueryPlan failed
java.lang.ClassCastException: 
org.apache.iotdb.db.metadata.mnode.container.MNodeContainers$EmptyContainer 
cannot be cast to 
org.apache.iotdb.db.metadata.mtree.store.disk.ICachedMNodeContainer
        at 
org.apache.iotdb.db.metadata.mtree.store.disk.ICachedMNodeContainer.getBelongedContainer(ICachedMNodeContainer.java:78)
        at 
org.apache.iotdb.db.metadata.mtree.store.disk.cache.CacheManager.updateCacheStatusAfterAppend(CacheManager.java:124)
        at 
org.apache.iotdb.db.metadata.mtree.store.CachedMTreeStore.addChild(CachedMTreeStore.java:201)
        at 
org.apache.iotdb.db.metadata.mtree.MTreeBelowSGCachedImpl.createTimeseriesWithPinnedReturn(MTreeBelowSGCachedImpl.java:225)
        at 
org.apache.iotdb.db.metadata.schemaregion.SchemaRegionSchemaFileImpl.createTimeseries(SchemaRegionSchemaFileImpl.java:466)
        at 
org.apache.iotdb.db.metadata.LocalSchemaProcessor.createTimeseries(LocalSchemaProcessor.java:290)
        at 
org.apache.iotdb.db.metadata.LocalSchemaProcessor.createTimeseries(LocalSchemaProcessor.java:285)
        at 
org.apache.iotdb.db.qp.executor.PlanExecutor.createTimeSeries(PlanExecutor.java:1995)
        at 
org.apache.iotdb.db.qp.executor.PlanExecutor.createMultiTimeSeries(PlanExecutor.java:2034)
        at 
org.apache.iotdb.db.qp.executor.PlanExecutor.processNonQuery(PlanExecutor.java:339)
        at 
org.apache.iotdb.db.service.basic.StandaloneServiceProvider.executeNonQuery(StandaloneServiceProvider.java:53)
        at 
org.apache.iotdb.db.service.thrift.impl.TSServiceImpl.executeNonQueryPlan(TSServiceImpl.java:2066)
        at 
org.apache.iotdb.db.service.thrift.impl.TSServiceImpl.createMultiTimeseries(TSServiceImpl.java:1858)
        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. 机器
fit 192.168.130.1 (8C32G)  /home/iotdb/db/master_0509_bc6c4af
MAX_HEAP_SIZE="20G"
MAX_DIRECT_MEMORY_SIZE="6G"
schema_engine_mode=Schema_File

fit 192.168.130.2 /home/benchmark/bm_20220322

2. bm 配置文件
放在/home/benchmark/bm_20220322/conf

3. 启动iotdb 
4. 运行bm
/home/benchmark/bm_20220322下运行run.sh
 cat run.sh
#!/bin/bash

time1=`date +%s`
cp -rp conf/config.properties.1 conf/config.properties
./benchmark.sh > 1.out &
cp -rp conf/config.properties.2 conf/config.properties
./benchmark.sh > 2.out &
wait
time2=`date +%s`
time=$(($time2-$time1))
echo "bing fa run : ${time} seconds." >> time_res.txt





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

Reply via email to