Alexander Damian
92e46aa6cb
Proper implementation of flush() with timeout
2020-02-16 20:11:20 -05:00
Alexander Damian
e401e97b40
Added clarifications and comments to the BufferedProducer class
2020-02-08 21:24:12 -05:00
Alexander Damian
fbbd5bc5a6
Changed int to size_t
2020-02-03 22:04:50 -05:00
Alexander Damian
bda2f4156d
Fix tracker promise from throwing when set multiple times
2020-02-03 16:46:28 -05:00
accelerated
ace18d5d7b
Added wait_for_acks(0) when calling async_flush
2019-02-21 15:21:16 -05:00
demin80
755e9f10c2
added missing return
2019-01-18 16:58:03 -05:00
demin80
5a34955fae
added type conversion to avoid signed-vs-unsigned-comparison warning
2019-01-16 10:52:14 -05:00
demin80
93c2edf6ba
refactored by adding retry_mutex_ and replacing bools with enums; fixed formatting issues
2019-01-10 14:37:46 -05:00
demin80
71c4e02143
Revised the implementation based on the reviewers' response
2019-01-08 13:48:26 -05:00
demin80
00370c981d
Fixed spacing issues
2019-01-07 14:42:32 -05:00
demin80
97229ebfd9
Added a high-priority queue to BufferedProducer to avoid message re-ordering
2019-01-07 14:39:09 -05:00
accelerated
4a6b6779ad
Updated callback description
2019-01-06 17:40:39 -05:00
accelerated
97d1bb9434
Added queue full notify callback
2019-01-06 17:35:55 -05:00
accelerated
ed81ce446d
Added queue full notification
2019-01-06 16:59:00 -05:00
Matias Fontanini
f14a4b9e8c
Merge pull request #150 from accelerated/flush_bug
...
Bug with message leak in BufferedProducer::flush(timeout)
2018-12-16 09:45:35 -08:00
accelerated
8b431c5421
changed rbegin to begin
2018-12-14 16:33:20 -05:00
accelerated
4a24971d3f
Fixed bug with message leak in BufferedProducer::flush(timeout)
2018-12-14 16:08:57 -05:00
accelerated
8dd5428c49
Added similar logic for ProduceTerminationCallback
2018-12-13 15:04:12 -05:00
accelerated
0b9b7bab11
Added flush termination callback
2018-12-13 10:43:29 -05:00
Alex Damian
ad9a1e4a49
If timeout is 0, the function should at least run once ( #123 )
2018-10-22 07:55:29 -07:00
Alex Damian
9af4330c6d
Allocators ( #118 )
...
* Added allocator support for consumers and buffered producer
* Changed MessageList back to std::vector<Message> for consistency with the allocator API
2018-10-16 08:57:11 -07:00
Alex Damian
d77e7466b8
changed assert with if statement ( #116 )
2018-10-06 09:28:45 -07:00
Matias Fontanini
6158d932c0
Example fixes ( #96 )
...
* Add example for kafka buffered producer
* Add notes regarding bool returned in produce failure callback
* Fix example names
2018-06-25 19:19:23 -07:00
Alex Damian
eb46b8808e
Bug fixes for sync flush and add_tracker ( #91 )
...
* fixes for sync flush and also add_tracker
* added flag for flush
2018-06-18 14:46:31 -07:00
accelerated
3c72eb5752
Added timeout to flush and wait_for_acks
2018-06-14 11:43:12 -04:00
accelerated
f220062e40
Changed purge to async_flush
2018-06-12 10:23:48 -04:00
accelerated
7530b9f9e4
added method to empty the buffer when max limit is reached
2018-06-12 09:21:55 -04:00
accelerated
3cf9bb53e9
Added purge (aka async_flush) functionality
2018-06-12 09:17:41 -04:00
accelerated
972a008aa4
Changed test to produce twice the same MessageBuilder
2018-06-11 15:45:41 -04:00
accelerated
a4eefacaa1
concurrency issues in MessageBuilder internal data
2018-06-10 18:48:51 -04:00
accelerated
23810654ab
Removed dependency on Producer and dr_callback_proxy
2018-06-10 13:00:56 -04:00
accelerated
f746653841
Added logic to conditionally enable internal data
2018-06-10 13:00:56 -04:00
accelerated
71e6e2e4e5
added retry logic for producers
2018-06-10 13:00:55 -04:00
Matias Fontanini
f15b59cb13
Fix compacted topic processor test
...
* Use buffered producer on compacted topic processor test
* Add include directives for callback invoker where missing
* Consume until EOF on compacted topic processor test
2018-06-09 14:49:50 -07:00
Alex Damian
5cad740aea
Added access to the internal Consumer in the backoff committer ( #75 )
...
* Added access to the internal Consumer and provided non-default constructor for BackoffPerformer
* added sync_produce and deleted the value constructor
* removed sync_produce methods
* removed value constructor in backoff_performer class
2018-06-04 11:48:20 -07:00
Alex Damian
9714bec5bf
Callback invoker to sink all thrown exceptions ( #74 )
2018-06-01 16:35:56 -07:00
accelerated
ffc64b9a5a
Remove valgrind warning
2018-05-29 10:05:56 -04:00
accelerated
556f15a43f
Allow access to the user-supplied delivery callback.
2018-05-29 09:59:19 -04:00
Alex Damian
429ec92369
Buffered producer thread safe ( #72 )
...
* Thread safe buffered producer
* Using single mutex version
* Changed based on feedback
* Changes based on latest review
* Added flush counter
2018-05-28 18:33:36 -07:00
Alex Damian
841e632fbd
Allow access to the user-supplied delivery callback. ( #66 )
...
* Allow access to the user-supplied delivery callback.
* Remove valgrind warning
* Added buffer size watermark
* added ability to produce a message directly
* Updated on_delivery_report function
2018-05-24 20:59:41 -07:00
Matias Fontanini
17da880854
Persist message's user data when retrying on buffered producer
2017-09-17 15:46:23 -07:00
Matias Fontanini
d0c794b978
Increase expected acks on buffered producer after producing
2017-08-24 15:04:54 -07:00
Matias Fontanini
2340046544
Clear messages acked/expected acks on buffered producer
2017-07-11 10:17:58 -07:00
Matias Fontanini
08815e97c0
Add CPPKAFKA_API to utils classes
2017-07-04 18:09:06 -07:00
Matias Fontanini
9594ddced3
Update license
2017-05-06 08:27:47 -07:00
Matias Fontanini
bb900f21cb
Allow clearing buffered messages on buffered producer
2017-04-24 20:08:26 -07:00
Matias Fontanini
5e84da2458
Change logic to reset messages acked count on buffered producer
2017-04-23 14:55:33 -07:00
Matias Fontanini
b5a7c70993
Expand description of BufferedProducer
2017-04-23 14:12:00 -07:00
Matias Fontanini
aab182c4ea
Allow producing messages without buffering them in buffered producer
2017-04-23 11:23:37 -07:00
Matias Fontanini
35cf6fd0bf
Catch flush timeout exception on buffered producer
2017-04-23 11:06:49 -07:00