wuYin opened a new pull request #394:
URL: https://github.com/apache/pulsar-client-go/pull/394


   ### Motivation
   
   Support `sendTimeout` and `blockIfQueueFull` for producer.
   
   ### Modifications
   
   - Add 2 configurations into `ProducerOptions`
   - Add sendTimeout timer goroutine to check and fail time-out pending 
messages.
   - Check `BlockIfQueueFull` before acquiring publish semaphore while sending 
messages.
   - Add `TestSendTimeout` to verify sendTimeout effective whille backlog 
exceeded on topic.
   
   ### Others
   client-go and client-java have different ways to disable `sendTimeout`
   - client-java: set `sendTimeout` to 0 explicitly, to override default 30s 
configuration.
   - client-go: set `sendTimeout` to -1, to bypass unset detection.
   
   ### Documentation
   
[configure-producer](https://pulsar.apache.org/docs/en/client-libraries-java/#configure-producer)
   
   ### Verifying this change
   
   - [ ] Make sure that the change passes the CI checks.


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

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


Reply via email to