You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by "Xiangdong Huang (Jira)" <ji...@apache.org> on 2020/01/07 12:51:01 UTC

[jira] [Created] (IOTDB-407) NullPoint in ActiveTimeSeriesCounter

Xiangdong Huang created IOTDB-407:
-------------------------------------

             Summary: NullPoint in ActiveTimeSeriesCounter 
                 Key: IOTDB-407
                 URL: https://issues.apache.org/jira/browse/IOTDB-407
             Project: Apache IoTDB
          Issue Type: Bug
            Reporter: Xiangdong Huang


Hi, if you read the log in tests. You can find a null pointer exception.

[https://travis-ci.org/apache/incubator-iotdb/jobs/633305973?utm_medium=notification&utm_source=github_status]

  

What will happen if the  activeTimeSeriesNumMap has no a given storage group and therefore we skip the method of `offer()`?

 

14:32:55.358 [IoTDB-MultiFileLogNodeManager-Force-Thread] DEBUG org.apache.iotdb.db.writelog.node.ExclusiveWriteLogNode - Log node root.sg1-1578321174624-101-0.tsfile ends sync.
 14:32:55.358 [pool-9-IoTDB-JDBC-Client-thread-1] DEBUG org.apache.iotdb.db.engine.storagegroup.TsFileProcessor - storage group root.sg1 async flush a memtable when async close
 14:32:55.374 [pool-9-IoTDB-JDBC-Client-thread-1] DEBUG org.apache.iotdb.db.writelog.node.ExclusiveWriteLogNode - Log node root.sg1-1578321174624-101-0.tsfile closed successfully
 14:32:55.374 [pool-9-IoTDB-JDBC-Client-thread-1] INFO org.apache.iotdb.db.engine.flush.FlushManager - storage group root.sg1 begin to submit a flush thread, flushing memtable size: 1
 14:32:55.374 [pool-9-IoTDB-JDBC-Client-thread-1] INFO org.apache.iotdb.db.engine.storagegroup.StorageGroupProcessor - close a sequence tsfile processor root.sg1
 14:32:55.374 [pool-13-IoTDB-Flush-ServerServiceImpl-thread-1] INFO org.apache.iotdb.db.engine.storagegroup.TsFileProcessor - storage group root.sg1 starts to flush a memtable in a flush thread
 14:32:55.374 [pool-13-IoTDB-Flush-ServerServiceImpl-thread-1] DEBUG org.apache.iotdb.db.engine.flush.MemTableFlushTask - flush task of Storage group root.sg1 memtable 106 is created 
 14:32:55.374 [pool-12-IoTDB-Flush-SubTask-ServerServiceImpl-thread-2] DEBUG org.apache.iotdb.db.engine.flush.MemTableFlushTask - Storage group root.sg1 memtable 106, start io.
 14:32:55.374 [pool-13-IoTDB-Flush-ServerServiceImpl-thread-1] ERROR org.apache.iotdb.db.conf.adapter.ActiveTimeSeriesCounter - Storage group root.sg1 registers active time series root.sg1.d1.s3 failed
 java.lang.NullPointerException: null
 at org.apache.iotdb.db.conf.adapter.ActiveTimeSeriesCounter.offer(ActiveTimeSeriesCounter.java:65)
 at org.apache.iotdb.db.engine.flush.MemTableFlushTask.syncFlushMemTable(MemTableFlushTask.java:87)
 at org.apache.iotdb.db.engine.storagegroup.TsFileProcessor.flushOneMemTable(TsFileProcessor.java:448)
 at org.apache.iotdb.db.engine.flush.FlushManager$FlushThread.run(FlushManager.java:89)
 at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
 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)
 14:32:55.374 [pool-13-IoTDB-Flush-ServerServiceImpl-thread-1] ERROR org.apache.iotdb.db.conf.adapter.ActiveTimeSeriesCounter - Update root.sg1 active ratio failed
 java.lang.NullPointerException: null
 at org.apache.iotdb.db.conf.adapter.ActiveTimeSeriesCounter.updateActiveRatio(ActiveTimeSeriesCounter.java:79)
 at org.apache.iotdb.db.engine.flush.MemTableFlushTask.syncFlushMemTable(MemTableFlushTask.java:91)
 at org.apache.iotdb.db.engine.storagegroup.TsFileProcessor.flushOneMemTable(TsFileProcessor.java:448)
 at org.apache.iotdb.db.engine.flush.FlushManager$FlushThread.run(FlushManager.java:89)
 at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
 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)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)