Search Issue Tracker
By Design
Votes
0
Found in
2017.3.0a1
Issue ID
933943
Regression
Yes
Timeout error when client disconnects for the second time
How to reproduce:
1. Open the "UNET_Project" project
2. Open the "Main" scene
3. Build the project
4. Enter Play mode
5. Choose "LAN Host(H)"
6. Open the built project
7. Choose "LAN Client(C)"
8. In the client press space to disconnect
9. Choose "LAN Client(C)" again
10. Press space to disconnect again, the host will throw Timeout error
Expected result: Client disconnects and no error is thrown.
Actual result: Client disconnects and Timeout error is thrown.
Reproducible with: 2017.3.0a1, 2017.2.0b4, 2017.1.0p1, 2017.1.0f3, 2017.1.0a3, 5.6.2p4, 5.6.0f1, 5.6.0a4.
Regression introduced in: 5.6.0a4.
Not reproducible with: 5.6.0a3, 5.6.0a1, 5.5.4p1, 5.5.0b5, 5.4.5p1.
Note:
with 2017.1.0a2, 2017.1.0a1, 5.6.0b1 and 5.6.0a6 client crashes when trying to connect again (gif attached).
---
By Design:
The reason of this behavior is UNET doesn't have reliable disconnect. It means that client during disconnect sends disconnect packet only once, if packet dropped server will disconnect client by timeout. So, no difference between regular disconnect and timeout.
Comments (2)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Localization Group Rules bypasses Locale logic when SharedGroup asset provided
- UI Toolkit World UI Text Field unfocuses immediately when clicking on it using XR Controller
- Crash on CallWindowProcW when entering Play mode for the second time and running the Editor in the background while using System.Windows.Forms functions
- 2D Freeform Light shadows disappear when light center is offset from shape bounds
- Crash on MarkAllDependencies when opening scenes with Assets from the YarnSpinner package
Ladace
Nov 28, 2018 17:44
The same happens to me in the newest 2018.2.17f1 build.
The first client disconnection runs OK. The second client disconnection and disconnections after it are guaranteed to raise a timeout error on the server.