diff options
author | Arne Juul <arnej@yahooinc.com> | 2023-08-07 13:13:42 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahooinc.com> | 2023-08-07 13:13:42 +0000 |
commit | 8bb498f250ae221137fd7488d60c58d06d3fca95 (patch) | |
tree | f826d8e279fad04978a022a82ca50ca6681e8cba /client | |
parent | 241e9b5509d89f4442d50ae3ae3fe0baf8b879a0 (diff) |
check files from PRELOAD variable
Diffstat (limited to 'client')
-rw-r--r-- | client/go/internal/admin/jvm/env.go | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/client/go/internal/admin/jvm/env.go b/client/go/internal/admin/jvm/env.go index 7b1ce97a40a..1cbdb46648f 100644 --- a/client/go/internal/admin/jvm/env.go +++ b/client/go/internal/admin/jvm/env.go @@ -5,10 +5,12 @@ package jvm import ( "fmt" + "strings" "github.com/vespa-engine/vespa/client/go/internal/admin/defaults" "github.com/vespa-engine/vespa/client/go/internal/admin/envvars" "github.com/vespa-engine/vespa/client/go/internal/admin/prog" + "github.com/vespa-engine/vespa/client/go/internal/admin/trace" "github.com/vespa-engine/vespa/client/go/internal/util" ) @@ -29,8 +31,19 @@ func (opts *Options) exportEnvSettings(ps *prog.Spec) { ps.Setenv(envvars.LD_LIBRARY_PATH, dlp) ps.Setenv(envvars.MALLOC_ARENA_MAX, "1") if preload := ps.Getenv(envvars.PRELOAD); preload != "" { - ps.Setenv(envvars.JAVAVM_LD_PRELOAD, preload) - ps.Setenv(envvars.LD_PRELOAD, preload) + checked := []string{} + for _, fileName := range strings.Split(preload, ":") { + if util.PathExists(fileName) { + checked = append(checked, fileName) + } else { + trace.Info("File in PRELOAD missing, skipped:", fileName) + } + } + if len(checked) > 0 { + preload := strings.Join(checked, ":") + ps.Setenv(envvars.JAVAVM_LD_PRELOAD, preload) + ps.Setenv(envvars.LD_PRELOAD, preload) + } } util.OptionallyReduceTimerFrequency() c.exportExtraEnv(ps) |