Chia-Ping Tsai created KAFKA-18274: -------------------------------------- Summary: Failed to restart controller in testing due to closed socket channel Key: KAFKA-18274 URL: https://issues.apache.org/jira/browse/KAFKA-18274 Project: Kafka Issue Type: Improvement Reporter: Chia-Ping Tsai Assignee: Chia-Ping Tsai
In fact, there are three issues of restarting controller in testing. 1. we don't rebuild the metrics of `SharedServer` [0] - it causes NPE 2. we return the closed server socket [1] 3. we should return the new server socket bound with same port ``` if (socketChannel != null && socketChannel.isOpen()) { return socketChannel; } // bind the server socket with same port if (socketChannel != null) { socketAddress = new InetSocketAddress(socketAddress.getHostString(), socketChannel.socket().getLocalPort()); } ``` [0] https://github.com/apache/kafka/blob/trunk/core/src/main/scala/kafka/server/ControllerServer.scala#L161 [1] https://github.com/apache/kafka/blob/trunk/test-common/src/main/java/org/apache/kafka/common/test/PreboundSocketFactoryManager.java#L52 -- This message was sent by Atlassian Jira (v8.20.10#820010)