You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2020/04/08 14:15:19 UTC

[incubator-iotdb] 01/01: fix concurrent modification exception

This is an automated email from the ASF dual-hosted git repository.

qiaojialin pushed a commit to branch fix_upgrade
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git

commit 74a9eef4ae415d2bfae10aa83a0ef1b5c469e20d
Author: qiaojialin <64...@qq.com>
AuthorDate: Wed Apr 8 22:15:12 2020 +0800

    fix concurrent modification exception
---
 .../iotdb/db/engine/storagegroup/StorageGroupProcessor.java       | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
index b8a342d..c0d8cef 100755
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
@@ -968,12 +968,12 @@ public class StorageGroupProcessor {
    */
   public int countUpgradeFiles() {
     int cntUpgradeFileNum = 0;
-    for (TsFileResource seqTsFileResource : sequenceFileList) {
+    for (TsFileResource seqTsFileResource : new ArrayList<>(sequenceFileList)) {
       if (UpgradeUtils.isNeedUpgrade(seqTsFileResource)) {
         cntUpgradeFileNum += 1;
       }
     }
-    for (TsFileResource unseqTsFileResource : unSequenceFileList) {
+    for (TsFileResource unseqTsFileResource : new ArrayList<>(unSequenceFileList)) {
       if (UpgradeUtils.isNeedUpgrade(unseqTsFileResource)) {
         cntUpgradeFileNum += 1;
       }
@@ -982,10 +982,10 @@ public class StorageGroupProcessor {
   }
 
   public void upgrade() {
-    for (TsFileResource seqTsFileResource : sequenceFileList) {
+    for (TsFileResource seqTsFileResource : new ArrayList<>(sequenceFileList)) {
       seqTsFileResource.doUpgrade();
     }
-    for (TsFileResource unseqTsFileResource : unSequenceFileList) {
+    for (TsFileResource unseqTsFileResource : new ArrayList<>(unSequenceFileList)) {
       unseqTsFileResource.doUpgrade();
     }
   }