Skip to content

Comments

Reduce likelihood of endpoint errors due to certain external environments#672

Merged
gpauloski merged 6 commits intomainfrom
issue-670
Mar 6, 2025
Merged

Reduce likelihood of endpoint errors due to certain external environments#672
gpauloski merged 6 commits intomainfrom
issue-670

Conversation

@gpauloski
Copy link
Collaborator

@gpauloski gpauloski commented Mar 6, 2025

Description

There are a few scenarios that are not that uncommon that users may run into that are annoying or non-obvious how to fix:

  • The user accidentally starts the same endpoint on two different login nodes. This would cause the two endpoints to constantly unregister each other in an endless loop. Now, the first endpoint will terminate and raise an error that another endpoint with the same ID was started.
  • All endpoints have the same default port which made it easy for multiple users (or one users with multiple endpoints) on the same node to fail to bind to an already taken port when starting. Now endpoint configuration defaults to a random port.
  • Endpoint client requests now explicitly ignore HTTP proxies. Endpoint clients should be on the local network, so there is no need for HTTP proxies that would otherwise fail to resolve the IP address. We also default endpoint hostnames to the FQDN now.

Two other small fixes:

  • A pytest configuration warning.
  • PID files not deleted when the endpoint is started with --no-detach AND the endpoint exits with an error.

Fixes

Also addresses a comment in #663.

Type of Change

  • Breaking Change (fix or enhancement which changes existing semantics of the public interface)
  • Enhancement (new features or improvements to existing functionality)
  • Bug (fixes for a bug or issue)
  • Internal (refactoring, style changes, testing, optimizations)
  • Documentation update (changes to documentation or examples)
  • Package (dependencies, versions, package metadata)
  • Development (CI workflows, pre-commit, linters, templates)
  • Security (security related changes)

Testing

  • Add some new tests.
  • Tested duplicate registration with a local relay and starting two endpoints with the same UUID.
  • Tested client connections with FQDN hostnames on my personal machine.
  • Tested client connection with FQDN, IP, and HTTP proxies set on polaris.

Pull Request Checklist

Please confirm the PR meets the following requirements.

  • Tags added to PR (e.g., breaking, bug, enhancement, internal, documentation, package, development, security).
  • Code changes pass pre-commit (e.g., mypy, ruff, etc.).
  • Tests have been added to show the fix is effective or that the new feature works.
  • New and existing unit tests pass locally with the changes.
  • Docs have been updated and reviewed if relevant.

@gpauloski gpauloski merged commit 7daa724 into main Mar 6, 2025
12 checks passed
@gpauloski gpauloski deleted the issue-670 branch March 6, 2025 04:36
@gpauloski gpauloski added the bug Error, flaw, or fault that causes unexpected behavior label Apr 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Error, flaw, or fault that causes unexpected behavior

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use FQDN for endpoint hosts to work with HTTP proxies Log relay disconnect reason in endpoint

1 participant