wy471x opened a new pull request, #6939:
URL: https://github.com/apache/shenyu/pull/6939

   <!-- Describe your PR here; e.g. Fixes #issueNo -->
   
   <!--
   Thank you for proposing a pull request. This template will guide you through 
the essential steps necessary for a pull request.
   -->
   Make sure that:
   
   - [X] You have read the [contribution 
guidelines](https://shenyu.apache.org/community/contributor-guide).
   - [X] You submit test cases (unit or integration tests) that back your 
changes.
   - [X] Your local test passed `./mvnw clean install 
-Dmaven.javadoc.skip=true`.
   
   ## Summary
   
   ### Changes:
   
   MqttBootstrapServer (shenyu-protocol-mqtt):                                  
                                                                                
                      
                            
     - Failed-start NPE fix: start() previously swallowed InterruptedException, 
leaving future null so shutdown() threw NPE. Now bind failures are logged, 
event-loop groups are        
     disposed via shutdown(), and the interrupt flag is restored.               
                                                                                
                        
     - Null-safe shutdown: shutdown() null-checks bossGroup, workerGroup, and 
future using Objects.nonNull (checkstyle requirement).                          
                          
     - Async start: bind logic moved into CompletableFuture.runAsync(...) 
(module convention), resolving the //// todo thread start mqtt server marker; 
exceptions are handled inside   
     the task since callers can no longer observe them. Fields made volatile 
for cross-thread visibility.                                                    
                           
     - Logging: added LOG.info on successful start and LOG.error in 
init()/start() catch blocks.                                                    
                                    
                                                                                
                                                                                
                       
   ### Test Cases: 
   
   MqttBootstrapServerTest:
   
     - new MqttBootstrapServerTest with 3 cases — shutdown without start, 
port-in-use start then shutdown, free-port start (await connect) then shutdown.
   
   close [#6747](https://github.com/apache/shenyu/issues/6747)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to