Skip to content

Bug Report — Server Hang on Player Quit (ConcurrentHashMap Deadlock) #264

@MrNickax

Description

@MrNickax

The server freezes completely when a player disconnects. Paper’s watchdog detects that the main thread has stopped responding for over 40 seconds.
The thread dump consistently points to DeluxeMenus in NamedHeadHook.onPlayerQuit, where a ConcurrentHashMap.replaceNode() call blocks the main thread.

Paper Version:
git-Paper-42 (MC: 1.21.8)

DeluxeMenus Version:
1.14.2-DEV-208

Stack trace excerpt:
[Paper Watchdog Thread/ERROR]: Current Thread: Server thread
[Paper Watchdog Thread/ERROR]: at java.base/java.util.concurrent.ConcurrentHashMap.replaceNode(ConcurrentHashMap.java:1111)
[Paper Watchdog Thread/ERROR]: at java.base/java.util.concurrent.ConcurrentHashMap.remove(ConcurrentHashMap.java:1102)
[Paper Watchdog Thread/ERROR]: at com.extendedclip.deluxemenus.hooks.playerpoints.NamedHeadHook.onPlayerQuit(NamedHeadHook.java:52)
[Paper Watchdog Thread/ERROR]: at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor918.execute(Unknown Source)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions