From a26aa10b10d79a08786fb0212412a1c8c8d40199 Mon Sep 17 00:00:00 2001 From: Piotr Findeisen Date: Mon, 11 Mar 2019 12:49:29 +0100 Subject: [PATCH] Fix server startup when Etc directory does not exist `launcher`'s `--etc-dir` is optional and so `./etc` directory may not exist. --- .../io/prestosql/server/PrestoServer.java | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/presto-main/src/main/java/io/prestosql/server/PrestoServer.java b/presto-main/src/main/java/io/prestosql/server/PrestoServer.java index 2b5852b3567fe..b25257675cd77 100644 --- a/presto-main/src/main/java/io/prestosql/server/PrestoServer.java +++ b/presto-main/src/main/java/io/prestosql/server/PrestoServer.java @@ -47,6 +47,9 @@ import io.prestosql.sql.parser.SqlParserOptions; import org.weakref.jmx.guice.MBeanModule; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.LinkedHashSet; import java.util.List; @@ -56,6 +59,7 @@ import static io.airlift.discovery.client.ServiceAnnouncement.serviceAnnouncement; import static io.prestosql.server.PrestoSystemRequirements.verifyJvmRequirements; import static io.prestosql.server.PrestoSystemRequirements.verifySystemTimeIsReasonable; +import static java.nio.file.LinkOption.NOFOLLOW_LINKS; import static java.util.Objects.requireNonNull; public class PrestoServer @@ -115,8 +119,8 @@ public void run() try { Injector injector = app.strictConfig().initialize(); - log.info("Working directory: %s", Paths.get(".").toAbsolutePath().toRealPath()); - log.info("Etc directory: %s", Paths.get("etc").toAbsolutePath().toRealPath()); + logLocation(log, "Working directory", Paths.get(".")); + logLocation(log, "Etc directory", Paths.get("etc")); injector.getInstance(PluginManager.class).loadPlugins(); @@ -195,4 +199,20 @@ private static ServiceAnnouncement getPrestoAnnouncement(Set