You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2018/11/17 05:16:11 UTC

[incubator-skywalking] branch 5.x updated: Update SegmentBufferManager.java (#1909)

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

wusheng pushed a commit to branch 5.x
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git


The following commit(s) were added to refs/heads/5.x by this push:
     new fd8d6bc  Update SegmentBufferManager.java (#1909)
fd8d6bc is described below

commit fd8d6bca2b76083150cd96bd391234e3e3210894
Author: cheetah012 <37...@qq.com>
AuthorDate: Sat Nov 17 13:16:07 2018 +0800

    Update SegmentBufferManager.java (#1909)
    
    * Update SegmentBufferManager.java
    
    delete buffer file
    
    * Update SegmentBufferManager.java
    
    Delete buffer file error
---
 .../provider/buffer/SegmentBufferManager.java      | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

diff --git a/apm-collector/apm-collector-analysis/analysis-segment-parser/segment-parser-provider/src/main/java/org/apache/skywalking/apm/collector/analysis/segment/parser/provider/buffer/SegmentBufferManager.java b/apm-collector/apm-collector-analysis/analysis-segment-parser/segment-parser-provider/src/main/java/org/apache/skywalking/apm/collector/analysis/segment/parser/provider/buffer/SegmentBufferManager.java
index 75f5cc6..45e09aa 100644
--- a/apm-collector/apm-collector-analysis/analysis-segment-parser/segment-parser-provider/src/main/java/org/apache/skywalking/apm/collector/analysis/segment/parser/provider/buffer/SegmentBufferManager.java
+++ b/apm-collector/apm-collector-analysis/analysis-segment-parser/segment-parser-provider/src/main/java/org/apache/skywalking/apm/collector/analysis/segment/parser/provider/buffer/SegmentBufferManager.java
@@ -20,6 +20,8 @@ package org.apache.skywalking.apm.collector.analysis.segment.parser.provider.buf
 
 import java.io.*;
 import java.nio.channels.FileLock;
+import java.util.Arrays;
+
 import org.apache.skywalking.apm.collector.core.module.ModuleManager;
 import org.apache.skywalking.apm.collector.core.util.*;
 import org.apache.skywalking.apm.network.proto.UpstreamSegment;
@@ -123,11 +125,21 @@ public enum SegmentBufferManager {
 
     private void deleteFiles() {
         File bufferDirectory = new File(BufferFileConfig.BUFFER_PATH);
-        boolean delete = bufferDirectory.delete();
-        if (delete) {
-            logger.info("Buffer directory is successfully deleted");
-        } else {
-            logger.info("Buffer directory is not deleted");
+        String[] fileList =  bufferDirectory.list();
+        if (fileList != null && fileList.length > 0) {
+            Arrays.stream(fileList).filter(fileName -> fileName.startsWith(DATA_FILE_PREFIX) || fileName.startsWith("offset")).forEach(fileName -> {
+                try {
+                    File temp = new File(BufferFileConfig.BUFFER_PATH + File.separator + fileName);
+                    boolean delete = temp.delete();
+                    if (delete) {
+                        logger.info("Buffer file {} is successfully deleted", fileName);
+                    } else {
+                        logger.info("Buffer file {} is not deleted", fileName);
+                    }
+                } catch (Exception e) {
+                    logger.info("Buffer file {} is not deleted", fileName);
+                }
+            });
         }
     }