diff options
author | Valerij Fredriksen <valerijf@oath.com> | 2018-04-24 11:34:29 +0200 |
---|---|---|
committer | Valerij Fredriksen <valerijf@oath.com> | 2018-04-24 11:34:29 +0200 |
commit | f80f7a09a7cf6c99d93d9c160e3c4bb065029e04 (patch) | |
tree | aa4a1514fc3b74bdc24e967ef1d4bcf73afe317e | |
parent | 20ad31b311cc5b1dc18f1fa8d302f6d9d42edcc1 (diff) |
Log diff size
-rw-r--r-- | node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/file/Editor.java | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/file/Editor.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/file/Editor.java index 3cb7bc68059..66dbe5a7c05 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/file/Editor.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/file/Editor.java @@ -30,6 +30,7 @@ public class Editor { private final Consumer<List<String>> consumer; private final String name; private final LineEditor editor; + private int diffSize = 0; /** * Read the file which must be encoded in UTF-8, use the LineEditor to edit it, @@ -102,7 +103,7 @@ public class Editor { return false; } - String diffDescription = diffTooLarge(diff) ? ": Diff too large" : ":\n" + diff.toString(); + String diffDescription = diffTooLarge() ? ": Diff too large (" + diffSize + ")" : ":\n" + diff.toString(); logConsumer.accept("Patching file " + name + diffDescription); consumer.accept(newLines); return true; @@ -112,21 +113,25 @@ public class Editor { return this.edit(line -> context.recordSystemModification(logger, line)); } - private static void maybeAdd(StringBuilder diff, List<String> lines) { + private void maybeAdd(StringBuilder diff, List<String> lines) { for (String line : lines) { - if (!diffTooLarge(diff)) { + // 2 for '+' and '\n' + diffSize += 2 + line.length(); + if (!diffTooLarge()) { diff.append('+').append(line).append('\n'); } } } - private static void maybeRemove(StringBuilder diff, String line) { - if (!diffTooLarge(diff)) { + private void maybeRemove(StringBuilder diff, String line) { + // 2 for '-' and '\n' + diffSize += 2 + line.length(); + if (!diffTooLarge()) { diff.append('-').append(line).append('\n'); } } - private static boolean diffTooLarge(StringBuilder diff) { - return diff.length() > MAX_LENGTH; + private boolean diffTooLarge() { + return diffSize > MAX_LENGTH; } } |