summaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorHÃ¥kon Hallingstad <hakon.hallingstad@gmail.com>2022-05-06 11:41:49 +0200
committerGitHub <noreply@github.com>2022-05-06 11:41:49 +0200
commita25044da1709e47a124834c0131434c0b14ee818 (patch)
tree80acac0ea8d4ca096147b5b7ade0a91f5ee4c9bd /node-admin
parent81b2c3cc619b46541337565611de3bfb263ad251 (diff)
parentce90e0cbb5928c51a77a01dd134a3a792f26aebb (diff)
Merge pull request #22490 from vespa-engine/freva/set-correct-owner
Set correct user on container crash path
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandler.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandler.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandler.java
index 2271991fa15..ab4c993bab9 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandler.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/maintenance/coredump/CoredumpHandler.java
@@ -9,6 +9,7 @@ import com.yahoo.vespa.hosted.node.admin.nodeadmin.ConvergenceException;
import com.yahoo.vespa.hosted.node.admin.nodeagent.NodeAgentContext;
import com.yahoo.vespa.hosted.node.admin.task.util.file.FileFinder;
import com.yahoo.vespa.hosted.node.admin.task.util.file.UnixPath;
+import com.yahoo.vespa.hosted.node.admin.task.util.file.UnixUser;
import com.yahoo.vespa.hosted.node.admin.task.util.fs.ContainerPath;
import com.yahoo.vespa.hosted.node.admin.task.util.process.Terminal;
@@ -84,9 +85,15 @@ public class CoredumpHandler {
public void converge(NodeAgentContext context, Supplier<Map<String, Object>> nodeAttributesSupplier, boolean throwIfCoreBeingWritten) {
- ContainerPath containerCrashPath = context.paths().of(crashPatchInContainer);
+ ContainerPath containerCrashPath = context.paths().of(crashPatchInContainer, context.users().vespa());
ContainerPath containerProcessingPath = containerCrashPath.resolve(PROCESSING_DIRECTORY_NAME);
+ // TODO (freva): Remove after 7.584
+ UnixUser vespaUser = context.users().vespa();
+ UnixPath processingPath = new UnixPath(containerProcessingPath);
+ if (processingPath.getOwnerId() != vespaUser.uid()) processingPath.setOwnerId(vespaUser.uid());
+ if (processingPath.getGroupId() != vespaUser.gid()) processingPath.setGroupId(vespaUser.gid());
+
updateMetrics(context, containerCrashPath);
if (throwIfCoreBeingWritten) {