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

Windows port binding #27

Open
stormherz opened this issue Sep 13, 2018 · 5 comments
Open

Windows port binding #27

stormherz opened this issue Sep 13, 2018 · 5 comments

Comments

@stormherz
Copy link

I'm trying to run overseer-based application on windows server 2016 and getting

[overseer] disabled. run failed: Failed to retreive fd for: 127.0.0.1:92 (file tcp 127.0.0.1:92: not supported by windows)
...
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x0 pc=0x639c3d]

No matter what port I use (I've tried several from different ranges) - the error is the same.
On mac os the same application works just fine.

Any hints on this? That was quite unexpected.

@jpillora
Copy link
Owner

Paging @tgulacsi, any ideas?

@tgulacsi
Copy link
Contributor

https://golang.org/pkg/net/#pkg-note-BUG says
"On JS, NaCl and Windows, the File method of TCPConn and TCPListener is not implemented.".

So this does not work on Windows.

What are these listeners used for? Why are they acquired by the master?

@dustin-decker
Copy link

dustin-decker commented Dec 11, 2020

If you don't set Address or Addresses then this feature will not be enabled.

If I recall correctly, this listener can be used to keep connections intact between upgrades.

Maybe it should be feature flagged so it doesn't even attempt to run on Windows.

@oliverpool
Copy link

Even using the workaround commented here to retrieve some file descriptor golang/go#10350 (comment), it does not work, since windows does not support os/exec.Command.ExtraFiles: golang/go#26182

@oliverpool
Copy link

oliverpool commented Jul 4, 2022

For anyone interested, I am making a package to support windows port transfer.

It is inspired by overseer for the handling logic (one parent process and some children), but the code has been written from scratch.

Feel free to have a look and let me know if it works for you: https://code.pfad.fr/risefront

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

5 participants