Uploaded image for project: 'Apache IoTDB'
  1. Apache IoTDB
  2. IOTDB-3177

[ concurrent delete dev ] NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.14.0-SNAPSHOT
    • None
    • Core/Schema Manager
    • None

    Description

      master_0510_19872aa

      问题描述:
      10用户并发delete dev.** ,有如下问题:
      2022-05-12 14:20:21,337 [pool-117-IoTDB-RPC-Client-71] ERROR o.a.i.d.u.ErrorHandlingUtils:59 - Status code: INTERNAL_SERVER_ERROR(500), operation: executeNonQueryPlan failed
      java.lang.NullPointerException: null
      at org.apache.iotdb.db.metadata.mtree.store.CachedMTreeStore$CachedMNodeIterator.readNext(CachedMTreeStore.java:535)
      at org.apache.iotdb.db.metadata.mtree.store.CachedMTreeStore$CachedMNodeIterator.hasNext(CachedMTreeStore.java:507)
      at org.apache.iotdb.db.metadata.mtree.MTreeBelowSGCachedImpl.deleteTimeseriesAndReturnEmptyStorageGroup(MTreeBelowSGCachedImpl.java:394)
      at org.apache.iotdb.db.metadata.schemaregion.SchemaRegionSchemaFileImpl.deleteOneTimeseriesUpdateStatisticsAndDropTrigger(SchemaRegionSchemaFileImpl.java:751)
      at org.apache.iotdb.db.metadata.schemaregion.SchemaRegionSchemaFileImpl.deleteSingleTimeseriesInternal(SchemaRegionSchemaFileImpl.java:728)
      at org.apache.iotdb.db.metadata.schemaregion.SchemaRegionSchemaFileImpl.deleteTimeseries(SchemaRegionSchemaFileImpl.java:704)
      at org.apache.iotdb.db.metadata.LocalSchemaProcessor.deleteTimeseries(LocalSchemaProcessor.java:364)
      at org.apache.iotdb.db.qp.executor.PlanExecutor.deleteTimeSeries(PlanExecutor.java:2067)
      at org.apache.iotdb.db.qp.executor.PlanExecutor.processNonQuery(PlanExecutor.java:334)
      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.executeNonQueryStatement(TSServiceImpl.java:1114)
      at org.apache.iotdb.db.service.thrift.impl.TSServiceImpl.executeUpdateStatement(TSServiceImpl.java:1107)
      at org.apache.iotdb.db.service.thrift.impl.TSServiceImpl.executeStatement(TSServiceImpl.java:622)
      at org.apache.iotdb.service.rpc.thrift.TSIService$Processor$executeStatement.getResult(TSIService.java:2853)
      at org.apache.iotdb.service.rpc.thrift.TSIService$Processor$executeStatement.getResult(TSIService.java:2833)
      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)
      2022-05-12 14:20:21,694 [pool-117-IoTDB-RPC-Client-63] ERROR o.a.i.d.u.ErrorHandlingUtils:59 - Status code: INTERNAL_SERVER_ERROR(500), operation: executeNonQueryPlan failed
      java.lang.NullPointerException: null

      操作流程
      1. 192.168.10.68
      使用数据备份启动数据库:/data/liuzhen_test/master_0510_19872aa/data_flush_stop_0511
      复制这个备份,不要直接使用它。

      2. 启动成功后,执行并发delete dev.**脚本
      见附件

      Attachments

        1. del_dev_test.sh
          19 kB
          刘珍

        Activity

          People

            bigreybear ZhaoXin
            刘珍 刘珍
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: