Skip to content

use outbound only queueing when reentering configuration#1747

Open
ZECHEESELORD wants to merge 1 commit intoPaperMC:dev/3.0.0from
ZECHEESELORD:fix/1723-reenter-configuration-phase
Open

use outbound only queueing when reentering configuration#1747
ZECHEESELORD wants to merge 1 commit intoPaperMC:dev/3.0.0from
ZECHEESELORD:fix/1723-reenter-configuration-phase

Conversation

@ZECHEESELORD
Copy link

@ZECHEESELORD ZECHEESELORD commented Mar 20, 2026

Related to #1723

The issue report points at queued play traffic being replayed after the server sends the client back to configuration. On the connected PLAY -> CONFIG path, Velocity was still treating the transition too much like a normal play connection. That left two problems:

  • it could queue serverbound play traffic and replay it after the handoff
  • it could still forward generic/unknown client packets even when the backend was no longer actually in PLAY

these changes do three things:

  • use outbound only queueing for connected PLAY -> CONFIG reconfiguration
  • only forward generic/unknown client packets when the backend is open, phase complete, and actually in PLAY
  • only forward keepalives when client and backend states match, and only in CONFIG or PLAY

It should be noted that while testing this, I found a second bug on the backend side in Paper where the keepalive tracker survives listener handoff from PLAY to CONFIG, which can leave a stale PLAY expectation alive in the configuration listener under latency.

That fix is separate- with both patches applied, I have not been able to reproduce the full failure anymore.

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

Successfully merging this pull request may close these issues.

1 participant