Server transfer causes nil pointer error #423

Closed
opened 2026-02-04 17:58:00 +03:00 by OVERLORD · 0 comments
Owner

Originally created by @QuintenQVD0 on GitHub (Sep 8, 2025).

Originally assigned to: @Boy132 on GitHub.

Current Behavior

When transferring a server from node A to node B the node B returns a panic invalid memory address or nil pointer dereference. This will cause the server not to be transferd

Expected Behavior

The server should be transferred from node A to B without a panic

Steps to Reproduce

Steps to Reproduce

  1. Create a server on node A.
  2. Try to transfer it to node B.
  3. Observe the error on the receiving node.

Debugging Notes

I have done some debugging with the Go debugger.

Summary:
The error originates here:
router_transfer.go#L70

trnsfr.Server.ID() is nil because there was an error in the logic above it.

Debug Screenshot 1

Looking further at:
router_transfer.go#L65

installer.New returns an error:

Debug Screenshot 2

Tracing the logic to get the actual error shows that the remote API is returning a 403:

Debug Screenshot 3


Manger object

Note that the token inside the manager object belongs to the receiving node:

Debug Screenshot 4


Why this may be a panel issue

  • The token logic on the panel side recently changed. No changes were made to the wings side

Panel Version

1900c04b71 (current latest)

Wings Version

c7d0905bfeffecc19610197814218374216d0d3b

Games and/or Eggs Affected

Minecraft vanilla

Docker Image

ghcr.io/parkervcp/yolks:java_21

Error Logs

wings-1  | 2025/09/08 14:21:27 [Recovery] 2025/09/08 - 14:21:27 panic recovered:
wings-1  | runtime error: invalid memory address or nil pointer dereference
wings-1  | runtime/panic.go:262 (0x4767b8)
wings-1  | runtime/signal_unix.go:917 (0x476788)
wings-1  | github.com/pelican-dev/wings/server/configuration.go:87 (0xfe446c)
wings-1  | github.com/pelican-dev/wings/server/server.go:123 (0xfef712)
wings-1  | github.com/pelican-dev/wings/router/router_transfer.go:70 (0x11538b4)

Is there an existing issue for this?

  • I have searched the existing issues before opening this issue.
  • I have provided all relevant details, including the specific game and Docker images I am using if this issue is related to running a server.
  • I have checked in the Discord server and believe this is a bug with the software, and not a configuration issue with my specific system.
Originally created by @QuintenQVD0 on GitHub (Sep 8, 2025). Originally assigned to: @Boy132 on GitHub. ### Current Behavior When transferring a server from node A to node B the node B returns a panic invalid memory address or nil pointer dereference. This will cause the server not to be transferd ### Expected Behavior The server should be transferred from node A to B without a panic ### Steps to Reproduce # Steps to Reproduce 1. Create a server on node A. 2. Try to transfer it to node B. 3. Observe the error on the receiving node. --- # Debugging Notes I have done some debugging with the Go debugger. **Summary:** The error originates here: [router_transfer.go#L70](https://github.com/pelican-dev/wings/blob/main/router/router_transfer.go#L70) `trnsfr.Server.ID()` is `nil` because there was an error in the logic above it. ![Debug Screenshot 1](https://github.com/user-attachments/assets/b1be655c-fc2b-40c9-9ae5-9f60458b076d) Looking further at: [router_transfer.go#L65](https://github.com/pelican-dev/wings/blob/main/router/router_transfer.go#L65) `installer.New` returns an error: ![Debug Screenshot 2](https://github.com/user-attachments/assets/804d20c2-53f8-4eb6-9046-b97e8bc1a7a3) Tracing the logic to get the actual error shows that the remote API is returning a `403`: ![Debug Screenshot 3](https://github.com/user-attachments/assets/d8a8e21a-ce11-40e1-a320-2a176d391bab) --- # Manger object Note that the token inside the `manager` object belongs to the **receiving node**: ![Debug Screenshot 4](https://github.com/user-attachments/assets/bfd24b97-7370-4755-b72e-0379e4903731) --- # Why this may be a panel issue - The token logic on the panel side recently changed. No changes were made to the wings side ### Panel Version 1900c04b7172961349c2461c1ecd5236ada3ef94 (current latest) ### Wings Version c7d0905bfeffecc19610197814218374216d0d3b ### Games and/or Eggs Affected Minecraft vanilla ### Docker Image ghcr.io/parkervcp/yolks:java_21 ### Error Logs ```bash wings-1 | 2025/09/08 14:21:27 [Recovery] 2025/09/08 - 14:21:27 panic recovered: wings-1 | runtime error: invalid memory address or nil pointer dereference wings-1 | runtime/panic.go:262 (0x4767b8) wings-1 | runtime/signal_unix.go:917 (0x476788) wings-1 | github.com/pelican-dev/wings/server/configuration.go:87 (0xfe446c) wings-1 | github.com/pelican-dev/wings/server/server.go:123 (0xfef712) wings-1 | github.com/pelican-dev/wings/router/router_transfer.go:70 (0x11538b4) ``` ### Is there an existing issue for this? - [x] I have searched the existing issues before opening this issue. - [x] I have provided all relevant details, including the specific game and Docker images I am using if this issue is related to running a server. - [x] I have checked in the Discord server and believe this is a bug with the software, and not a configuration issue with my specific system.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/panel#423