-
Notifications
You must be signed in to change notification settings - Fork 360
Open
Labels
bugSomething isn't workingSomething isn't working
Description
actix-server runs
actix-net/actix-server/src/socket.rs
Lines 74 to 84 in 605ec25
| fn deregister(&mut self, registry: &Registry) -> io::Result<()> { | |
| match *self { | |
| MioListener::Tcp(ref mut lst) => lst.deregister(registry), | |
| #[cfg(unix)] | |
| MioListener::Uds(ref mut lst) => { | |
| let res = lst.deregister(registry); | |
| // cleanup file path | |
| if let Ok(addr) = lst.local_addr() { | |
| if let Some(path) = addr.as_pathname() { | |
| let _ = std::fs::remove_file(path); |
This deregister function can be called as part of flow control as response to Pause command
actix-net/actix-server/src/accept.rs
Lines 286 to 292 in 605ec25
| Some(WakerInterest::Pause) => { | |
| drop(guard); | |
| if !self.paused { | |
| self.paused = true; | |
| self.deregister_all(sockets); |
When resuming operations, the socket file is gone and clients can not connect to the server anymore.
The cleanup should happen only when connection is closed finally (Stop command?)
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working