Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion core/src/main/scala/org/apache/spark/util/Utils.scala
Original file line number Diff line number Diff line change
Expand Up @@ -701,7 +701,7 @@ private[spark] object Utils extends Logging {
}
}

private var customHostname: Option[String] = None
private var customHostname: Option[String] = sys.env.get("SPARK_LOCAL_HOSTNAME")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is already an environment variable called SPARK_PUBLIC_DNS in the docs. This is used to override the default host name in some cases (however, confusingly, in a smaller subset of cases). I wonder if we should just fall back to SPARK_PUBLIC_DNS here and expand its scope slightly. We'd need to audit all of the cases where this is used, but that might be preferable to introducing another override. We could also just have two overrides here, and we explain that SPARK_PUBLIC_DNS takes precedence and is only used in certain cases.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW - here is how it is defined now:

  <tr>
    <td><code>SPARK_PUBLIC_DNS</code></td>
    <td>Hostname your Spark program will advertise to other machines.</td>
  </tr>

In practice though it looks like it might only be used for the UI links.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also note that SPARK_LOCAL_HOSTNAME is actually the DNS we want to advertise internally, not externally, so I don't think it's the same as SPARK_PUBLIC_DNS in DBC's case.

For instance, the external DNS is ec2-x-x-x-x.us-west-2.compute.amazonaws.com and the internal one is ip-y-y-y-y.us-west-2.compute.internal.


/**
* Allow setting a custom host name because when we run on Mesos we need to use the same
Expand Down