happyboy1024 commented on issue #5008:
URL: https://github.com/apache/seatunnel/issues/5008#issuecomment-1617566718

   > @happyboy1024 Is there a solution? I see this problem, too
   I analyzed the problem and found that it was in the phase of full 
synchronization history data. Since it is read in fragments, it is necessary to 
compensate after reading. During fragment compensating, an event listener is 
registered with BinaryClient, and then the End event is sent based on the 
offset of binlog. Each listener is associated with a queue to receive data 
change events, but I found that the current listener was not released after the 
compensation was completed, resulting in the queue data being unable to be GC. 
In the subsequent stages of the complete synchronization history, the binlog 
event will continue to trigger the send End event condition, placing the event 
in the queue. As for the number of MySQL connections, I found that during 
sharding reads, each shard enabled will obtain a connection to check the gtid 
status of MySQL. However, after sharding ends, this connection is not released, 
resulting in continuous connection growth. I have tried to solve this proble
 m, and I am currently testing to solve it. If possible, I will try to submit a 
pr


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