Race Condition? / Round Robin? / Seemingly Random Routing
- Dominant language
- Go
- Stars
- 942
- Forks
- 74
- Avg merge
- 20h 14m
- Merged PRs (30d)
- 15
Description
~~Connecting to the servers works as intended, however when adding each server to the server list on the multiplayer tab I've found that they share a motd and player count.~~
I previously thought that connecting to the servers worked as intended and that the motd/playercount was using a different protocol for fetching that information and that's why it was failing, but on further inspection it appears that whichever motd/playercount is displayed is the server the client will connect to, regardless of subdomain/host.
This looks a lot like a race condition. Maybe I've improperly configured my mc-router container?
`docker run -d --name minecraft-router -p 0.0.0.0:25565:25565/tcp --network=cloudbox itzg/mc-router --mapping=mc.example1.com=minecraft:25565,mc.example2.gg=minecraft-test:25565`
Where `example1.com` and `example2.com` are different TLDs.
By the logs it **_looks_** like it's working, but ¯\\_(ツ)_/¯

Refreshing the list will often leave one server with a motd and the other will timeout

On a second refresh the motd and player count display properly, but the server-icon.png displays as a black image still.

Then all subsequent refreshes will sometimes be correct and sometimes show the same errors as above.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reproducing the behavior with the supplied Docker command and two mapped hostnames, then inspect the routing and server-list metadata paths in mc-router. Compare repeated refreshes and connections for host-specific MOTD, player count, timeout behavior, and server-icon.png results; done means each hostname consistently reaches and reports the correct backend.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, go
- Domain
- backend, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100