Matias Fontanini
006642cdb2
Merge pull request #237 from accelerated/buff_prod_comments
...
Added clarifications and comments to the BufferedProducer class
2020-04-18 10:56:51 -07:00
Alexander Damian
935a34238b
Added implementation for thread-aware ack monitoring
2020-03-05 14:56:36 -05:00
Alexander Damian
5a057e4c99
Wait until the ack is received without timing out.
...
wait_for_acks() should default to infinite timeout since the
original implementation was never timing out.
2020-02-16 21:06:14 -05:00
Alexander Damian
2287e0994b
Express async_flush in terms of flush since the logic is identical except for the timeout
2020-02-16 20:11:33 -05:00
Alexander Damian
92e46aa6cb
Proper implementation of flush() with timeout
2020-02-16 20:11:20 -05:00
Alexander Damian
a4532ed336
Use erase directly
...
Added revoke() member function
2020-02-09 21:25:36 -05:00
Alexander Damian
68ae525eba
Added member functions for static consumers
2020-02-08 22:34:45 -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
Alexander Damian
6e076810a0
Added ActionTerminatedException to BackoffPerformer
2019-04-26 11:12:52 -04:00
Alexander Damian
81a131ff16
Return true when RD_KAFKA_RESP_ERR__NO_OFFSET is received
2019-04-24 17:39:59 -04:00
Alexander Damian
effdf7fb95
Removed ReturnType. Throw on error from inside do_commit() as well as from perform()
2019-04-24 16:42:56 -04:00
Alexander Damian
0c1119727b
Replaced termination callback with throwing exception
2019-04-24 10:40:29 -04: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
multiprogramm
2b66fd3a22
Fix windows linker errors ( #120 )
2018-10-17 10:43:33 -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
ea9601ba1b
Changes per code review
2018-05-29 10:05:56 -04: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