From 333c96af9a7a6104b1d0d31fd6ee5db38ae304e4 Mon Sep 17 00:00:00 2001 From: zhangxin10 Date: Thu, 12 Nov 2015 08:02:27 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3offset=E5=81=8F=E7=A7=BB?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reciever/persistance/PersistenceThread.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/skywalking-server/src/main/java/com/ai/cloud/skywalking/reciever/persistance/PersistenceThread.java b/skywalking-server/src/main/java/com/ai/cloud/skywalking/reciever/persistance/PersistenceThread.java index b02ba6e60..98ae8c0f0 100644 --- a/skywalking-server/src/main/java/com/ai/cloud/skywalking/reciever/persistance/PersistenceThread.java +++ b/skywalking-server/src/main/java/com/ai/cloud/skywalking/reciever/persistance/PersistenceThread.java @@ -16,6 +16,7 @@ public class PersistenceThread extends Thread { @Override public void run() { + int length = 0; while (true) { File file1 = getDataFiles(); if (file1 == null) { @@ -36,16 +37,15 @@ public class PersistenceThread extends Thread { char[] chars = new char[OFFSET_FILE_READ_BUFFER_SIZE]; StringBuffer data = new StringBuffer(); boolean bool = true; + length = 0; while (bool) { - if (bufferedReader.read(chars, 0, chars.length) == -1) { + if ((length = bufferedReader.read(chars, 0, chars.length)) == -1) { MemoryRegister.instance().doRegisterStatus(new FileRegisterEntry(file1.getName(), offset, FileRegisterEntry.FileRegisterEntryStatus.UNREGISTER)); break; } + offset += length; for (int i = 0; i < chars.length; i++) { - if (chars[i] != '\0'){ - offset++; - } if (chars[i] != '\n') { data.append(chars[i]); continue; @@ -57,8 +57,8 @@ public class PersistenceThread extends Thread { bufferedReader.close(); logger.info("Data in file[{}] has been successfully processed", file1.getName()); boolean deleteSuccess = false; - while(!deleteSuccess) { - deleteSuccess = FileUtils.deleteQuietly(new File(file1.getParent(),file1.getName())); + while (!deleteSuccess) { + deleteSuccess = FileUtils.deleteQuietly(new File(file1.getParent(), file1.getName())); } logger.info("Delete file[{}] {}", file1.getName(), (deleteSuccess ? "success" : "failed")); MemoryRegister.instance().unRegister(file1.getName());