Skip to content

Add support for port 0 for logging #192

Description

@andyneff

Starting multiple terra runs in quick succession can hit a race condition in the log port if each process is manually checking if a port is available.

A good solution is to just let the OS pick a port for you (via port 0). But we need to add special support for this.


I've investigated the future compatibility of this feature some.

  • Eventually, I want to use an AF_UNIX file socket, however in windows, this feature was never added to python (due to MS having half assed support for things like UDP)
  • The plan was to eliminate using INET for most use case, however there will still be many cases that will still need AF_INET
    • Windows. When using virtualenv, localhost will be acceptable, but on docker compute, we will be back to needing the actual IP, and depending on the configuration of the computer, we will need the same TERRA_RESOLVE_HOSTNAME workaround
    • Distributed computing (celery) will need AF_INET for sure.
  • WSL and Linux will should be able to use AF_UNIX

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions