diff --git a/webserver/websocket/pom.xml b/webserver/websocket/pom.xml
index e81bd0bf3db..35ce6a67a75 100644
--- a/webserver/websocket/pom.xml
+++ b/webserver/websocket/pom.xml
@@ -29,6 +29,10 @@
helidon-webserver-websocket
Helidon WebServer WebSocket
+
+ -Dio.netty.leakDetectionLevel=paranoid
+
+
io.helidon.webserver
diff --git a/webserver/websocket/src/main/java/io/helidon/webserver/websocket/WebSocketHandler.java b/webserver/websocket/src/main/java/io/helidon/webserver/websocket/WebSocketHandler.java
index 971aa2d6b42..951d3ddb6b9 100644
--- a/webserver/websocket/src/main/java/io/helidon/webserver/websocket/WebSocketHandler.java
+++ b/webserver/websocket/src/main/java/io/helidon/webserver/websocket/WebSocketHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2022 Oracle and/or its affiliates.
+ * Copyright (c) 2022, 2023 Oracle and/or its affiliates.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,23 +15,10 @@
*/
package io.helidon.webserver.websocket;
-import java.io.IOException;
-import java.net.URI;
-import java.nio.ByteBuffer;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.CompletableFuture;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-import java.util.stream.Collectors;
-
import io.helidon.common.http.Parameters;
import io.helidon.common.http.UriComponent;
import io.helidon.common.reactive.BufferedEmittingPublisher;
import io.helidon.common.reactive.Multi;
-
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import io.netty.channel.ChannelFutureListener;
@@ -39,6 +26,7 @@
import io.netty.channel.SimpleChannelInboundHandler;
import io.netty.handler.codec.http.FullHttpRequest;
import io.netty.handler.codec.http.HttpHeaders;
+import io.netty.util.ReferenceCountUtil;
import jakarta.websocket.CloseReason;
import jakarta.websocket.DeploymentException;
import jakarta.websocket.Extension;
@@ -52,6 +40,18 @@
import org.glassfish.tyrus.spi.WebSocketEngine;
import org.glassfish.tyrus.spi.Writer;
+import java.io.IOException;
+import java.net.URI;
+import java.nio.ByteBuffer;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.CompletableFuture;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.util.stream.Collectors;
+
import static jakarta.websocket.CloseReason.CloseCodes.UNEXPECTED_CONDITION;
class WebSocketHandler extends SimpleChannelInboundHandler