Skip to content

feat: more logging & channel changes (relay/flush batching, disconnect handling) - #5

Open
alepaez wants to merge 1 commit into
mainfrom
santio/fix/rate-limit-disconnects-on-main
Open

alepaez wants to merge 1 commit into
mainfrom
santio/fix/rate-limit-disconnects-on-main

Conversation

@alepaez

@alepaez alepaez commented Sep 10, 2026

Copy link
Copy Markdown

Lands the last piece of the code that is already deployed in old-dev (hytale-proxy:519dcd3) onto main.

This is Santio's commit da24bf9 from santio/fix/rate-limit-disconnects, cherry-picked onto main after #1/#4 were squash-merged. Authorship is preserved; the tree is identical to that branch. The branch never had a PR, but the deployed server.jar was built from it.

Verification: building :proxy:build from this branch produces a jar whose ac.eva classes are bytecode-identical (javap diff empty) to the server.jar currently on hytale-proxy master. Without this commit, a rebuild from main would regress the deployed proxy.

What it changes:

  • HytaleConnection.relay() / flushStreams(): forwarded packets are written without flushing and flushed on channelReadComplete of the peer, instead of per-packet writeAndFlush
  • Backend closing the connection now sends the player a "Lost connection to the server" disconnect instead of a bare close
  • disconnect() falls back to closing the channel when the send future is null; close() uses closeApplicationConnection
  • Warn/error logs on invalid frame length, missing client certificate, inbound stream init failure

Follow-up: rebuild and commit server.jar in hytale-proxy from the resulting main commit so the shipped binary is traceable.

https://claude.ai/code/session_01XtwsBnpBmDn6HWnHh1kNuL

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.

2 participants