Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use SO_REUSEADDR on liveview/log view server socket #58

Open
vista- opened this issue Sep 23, 2020 · 2 comments
Open

Use SO_REUSEADDR on liveview/log view server socket #58

vista- opened this issue Sep 23, 2020 · 2 comments
Assignees

Comments

@vista-
Copy link

vista- commented Sep 23, 2020

Hey folks,

I've been trying to cobble together a small service that runs a given network job, runs a liveview server during the run and keeps the log viewer open for later usage. I'm not using Xpresso as I'd like to keep this setup as lightweight as possible; the output of the log viewer works perfectly for my use-case.

The problem is the following: if a user keeps viewing this log, their browser keeps polling the server for updates, which creates short-lived TCP connections that go into a TIME_WAIT state. Should the user want to run a different test (or rerun the current test), they'd have to restart the pyats process (which my script does), but due to the existing TCP connections stuck in a TIME_WAIT state, the process is unable to bind to the socket due to this missing socket option.

This problem would be resolved if this socket option were added to the web server sockets spawned by the liveviewer/log viewer.

@vista-
Copy link
Author

vista- commented Sep 23, 2020

I've found the --reuse-port option for the pyats logs view subcommand, but I don't think that works for the pyats job run subcommand.

@KamyarZiabari
Copy link
Contributor

Hi @vista- We are looking into your inquiry, and discussing about this improvement. I will get back to you soon on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants