aboutsummaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@oath.com>2018-08-09 13:12:32 +0200
committerValerij Fredriksen <valerijf@oath.com>2018-08-09 13:12:32 +0200
commit263eb0049dfe46958ace787690af71252da329d0 (patch)
treeca93681b99fde32c5dc0d45d8532c55d81b32532 /node-admin
parent45be1b993a3c4e0731d0c78352295d17b4d8a8af (diff)
Use non-vespa LZ4 and GDB
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java12
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java7
2 files changed, 8 insertions, 11 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
index b7856b2dd08..9830d03240a 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollector.java
@@ -17,16 +17,14 @@ import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import static com.yahoo.vespa.defaults.Defaults.getDefaults;
-
/**
* Takes in a compressed (lz4) or uncompressed core dump and collects relevant metadata.
*
* @author freva
*/
class CoreCollector {
- private static final String GDB_PATH = getDefaults().underVespaHome("bin64/gdb");
- private static final String LZ4_PATH = getDefaults().underVespaHome("bin64/lz4");
+ static final String GDB_PATH = "/usr/bin/gdb";
+ private static final String LZ4_PATH = "/usr/bin/lz4";
private static final Pattern CORE_GENERATOR_PATH_PATTERN = Pattern.compile("^Core was generated by `(?<path>.*?)'.$");
private static final Pattern EXECFN_PATH_PATTERN = Pattern.compile("^.* execfn: '(?<path>.*?)'");
private static final Pattern FROM_PATH_PATTERN = Pattern.compile("^.* from '(?<path>.*?)'");
@@ -41,7 +39,7 @@ class CoreCollector {
Path readBinPathFallback(Path coredumpPath) throws IOException {
String command = GDB_PATH + " -n -batch -core " + coredumpPath + " | grep \'^Core was generated by\'";
- String[] wrappedCommand = new String[] {"/bin/sh", "-c", command};
+ String[] wrappedCommand = {"/bin/sh", "-c", command};
Pair<Integer, String> result = processExecuter.exec(wrappedCommand);
Matcher matcher = CORE_GENERATOR_PATH_PATTERN.matcher(result.getSecond());
@@ -53,7 +51,7 @@ class CoreCollector {
}
Path readBinPath(Path coredumpPath) throws IOException {
- String[] command = new String[] {"file", coredumpPath.toString()};
+ String[] command = {"file", coredumpPath.toString()};
try {
Pair<Integer, String> result = processExecuter.exec(command);
@@ -80,7 +78,7 @@ class CoreCollector {
List<String> readBacktrace(Path coredumpPath, Path binPath, boolean allThreads) throws IOException {
String threads = allThreads ? "thread apply all bt" : "bt";
- String[] command = new String[]{GDB_PATH, "-n", "-ex", threads, "-batch", binPath.toString(), coredumpPath.toString()};
+ String[] command = {GDB_PATH, "-n", "-ex", threads, "-batch", binPath.toString(), coredumpPath.toString()};
Pair<Integer, String> result = processExecuter.exec(command);
if (result.getFirst() != 0) {
throw new RuntimeException("Failed to read backtrace " + result + ", Command: " + Arrays.toString(command));
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
index a3116af2aa5..8920f4a506a 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoreCollectorTest.java
@@ -20,7 +20,7 @@ import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
-import static com.yahoo.vespa.defaults.Defaults.getDefaults;
+import static com.yahoo.vespa.hosted.node.admin.maintenance.coredump.CoreCollector.GDB_PATH;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
import static org.mockito.Mockito.mock;
@@ -33,7 +33,6 @@ public class CoreCollectorTest {
private final ProcessExecuter processExecuter = mock(ProcessExecuter.class);
private final CoreCollector coreCollector = new CoreCollector(processExecuter);
- private final String GDB_PATH = getDefaults().underVespaHome("bin64/gdb");
private final Path TEST_CORE_PATH = Paths.get("/tmp/core.1234");
private final Path TEST_BIN_PATH = Paths.get("/usr/bin/program");
private final List<String> GDB_BACKTRACE = Arrays.asList("[New Thread 2703]",
@@ -103,7 +102,7 @@ public class CoreCollectorTest {
fail("Expected not to be able to get bin path");
} catch (RuntimeException e) {
assertEquals("Failed to extract binary path from GDB, result: (1,Error 123), command: " +
- "[/bin/sh, -c, /opt/vespa/bin64/gdb -n -batch -core /tmp/core.1234 | grep '^Core was generated by']", e.getMessage());
+ "[/bin/sh, -c, /usr/bin/gdb -n -batch -core /tmp/core.1234 | grep '^Core was generated by']", e.getMessage());
}
}
@@ -120,7 +119,7 @@ public class CoreCollectorTest {
fail("Expected not to be able to read backtrace");
} catch (RuntimeException e) {
assertEquals("Failed to read backtrace (1,Failure), Command: " +
- "[/opt/vespa/bin64/gdb, -n, -ex, bt, -batch, /usr/bin/program, /tmp/core.1234]", e.getMessage());
+ "[/usr/bin/gdb, -n, -ex, bt, -batch, /usr/bin/program, /tmp/core.1234]", e.getMessage());
}
}