zhouli11 commented on issue #1347:
URL: 
https://github.com/apache/rocketmq-clients/issues/1347#issuecomment-5506667060

   1. Make message reception non-blocking:
   
   The PushConsumer currently uses the synchronous _receive method, which 
blocks on read_future.result(). It can be replaced with the existing 
_receive_async implementation.
   
   <img width="642" height="307" alt="Image" 
src="https://github.com/user-attachments/assets/594bd248-5aa4-41b2-b93e-3eb0050d324b";
 />
   
   2. Fix related bugs
   
   I found and fixed these bugs over the past few months. I originally planned 
to submit these changes together with the new LiteSimpleConsumer feature, 
possibly in October.
   
   - The expired-queue cleanup has an inverted condition.
   
   <img width="596" height="72" alt="Image" 
src="https://github.com/user-attachments/assets/2e2d61bf-9f5e-4015-827c-693a10ddaf14";
 />
   remove Not
   
   The assignment handler starts reception for all existing queues rather than 
only the newly created ones.
   
   <img width="523" height="121" alt="Image" 
src="https://github.com/user-attachments/assets/cdf9d582-3f7b-4306-9451-6fca2082fbae";
 />
   
   do __execute_receive only with new Queues
   
   The non-FIFO consumption path misses a return after discarding a corrupted 
message.
   
   <img width="724" height="60" alt="Image" 
src="https://github.com/user-attachments/assets/9aa4d2bb-9ff4-4037-9fb3-f8e949a9e90d";
 />
   
   add Return when message is corrupted
   
   The FIFO discard path also lacks a return after its recursive retry.
   
   <img width="686" height="199" alt="Image" 
src="https://github.com/user-attachments/assets/8a528f15-964d-497c-ae37-9f1f468b7e4e";
 />
   
   Replace the recursive call with a while loop.
   
   
   Thank you for reporting these bugs,It's very helpful.If possible, could you 
also confirm whether these fixes work as expected?
   
   
   


-- 
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