Commit Graph

223 Commits

Author SHA1 Message Date
Alex Damian
46c396f729 Pause/resume a consumer by topic (#67)
* Pause a consumer by topic

* Changes per review comments

* convert rvalue to value

* Refactored code to provide a more generic way of getting partition subsets

* Changes per code review and added test cases

* Modified loop to use binary search instead of linear

* Simplify find_matches test cases
2018-05-23 13:03:47 -07:00
amirshavit
ee71b3979a Add yield (#64)
Simply calls rd_kafka_yield; allows consumers and producers to abort the
current callback dispatcher.
2018-05-23 09:26:09 -07:00
Alex Damian
d9feb5c3db Added retry limit for the backoff performer class (#70) 2018-05-23 09:16:12 -07:00
Azat Khuzhin
2451c74c4f Avoid SIGSEGV during destructing KafkaHandleBase (with set_log_callback()) (#68)
Configuration should exist for logging, since it contains the copy of
the callback.
2018-05-19 13:24:57 -07:00
Alex Damian
ae74814791 Log error in case consumer destructor throws (#61) 2018-04-27 07:03:47 -07:00
Matias Fontanini
ee0c0829a4 Remove extra line at the end of cppkafka.h 2018-04-23 19:23:09 -07:00
Matias Fontanini
59d8adc4a4 Sort header files before generating cppkafka.h 2018-04-23 19:22:41 -07:00
Alex Damian
30b3652a94 auto-gen main header file (#59) 2018-04-24 02:32:43 +01:00
Alex Damian
83a963c1db Added commit for current assignment and message state checks (#53) 2018-04-20 23:51:44 +01:00
Matias Fontanini
eee60407fa Use CPPKAFKA_API for friends and free functions 2018-04-11 10:47:53 -07:00
Matias Fontanini
df12b5fd5c Fix linking issues on Windows
Relates to #10
2018-03-20 08:12:04 -07:00
arvidn
a1dc9d115e fix typo in consumer documentation 2017-10-25 20:26:35 +02:00
Matias Fontanini
5889c322c2 Fix link issues when building in clang 2017-10-02 10:31:02 -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
86d4bc8037 Make BasicConsumerDispatcher::Pauser a template type 2017-08-21 14:47:06 -07:00
Matias Fontanini
0d4b9ef2f6 Don't keep looping on NO_OFFSET error on backoff committer 2017-08-03 09:33:09 -07:00
Matias Fontanini
1582f6156d Allow consuming message batches
Fixes #3
2017-07-17 19:17:57 -07:00
Matias Fontanini
2340046544 Clear messages acked/expected acks on buffered producer 2017-07-11 10:17:58 -07:00
Matias Fontanini
b7a0dce710 Add a generic "event" event on ConsumerDispatcher 2017-07-04 18:23:42 -07:00
Matias Fontanini
08815e97c0 Add CPPKAFKA_API to utils classes 2017-07-04 18:09:06 -07:00
Matias Fontanini
9e6315fcc2 Make ConsumerDispatcher a template class 2017-07-04 18:07:22 -07:00
Matias Fontanini
191956b4ca Pause/resume consumption on throttle 2017-06-17 09:39:50 -07:00
Matias Fontanini
4af48ff0e7 Allow throttling on ConsumerDispatcher 2017-06-17 08:52:48 -07:00
Matias Fontanini
556dac7015 Add backoff performer class 2017-06-16 19:27:18 -07:00
Matias Fontanini
4cd03aea3c Cleanup ConsumerDispatcher code 2017-06-11 14:35:33 -07:00
Matias Fontanini
52822fdb61 Move some small functions into header files 2017-06-10 19:15:53 -07:00
Matias Fontanini
bb5fb490ce Check if all callbacks match a signature on ConsumerDispatcher 2017-06-10 17:55:17 -07:00
Matias Fontanini
4369b75695 Use tags on EOF and timeout callbacks on ConsumerDispatcher 2017-06-10 17:39:23 -07:00
Matias Fontanini
f0ec0bfb10 Add ConsumerDispatcher class 2017-06-10 15:25:28 -07:00
Matias Fontanini
b79a1ae6da Move endianness.h file into detail folder 2017-06-05 19:36:22 -07:00
Matias Fontanini
acbae757d8 Remove all references to Partition class 2017-06-04 10:57:28 -07:00
Matias Fontanini
895a983d17 Allow constructing Buffers from std::vector 2017-06-04 08:32:19 -07:00
Matias Fontanini
d88e2d9ed4 Fix build issue on Windows 2017-06-03 12:38:54 -07:00
Matias Fontanini
2f9170e32a Fix build errors/warnings on Windows 2017-06-03 12:23:06 -07:00
Matias Fontanini
9c9d1e494d Add BackoffCommitter class 2017-05-07 11:37:07 -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
7ec3252a86 Minor documentation improvements 2017-04-23 14:24:06 -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
Matias Fontanini
e7db3df966 Change internals of BufferedProducer 2017-04-23 11:01:21 -07:00
Matias Fontanini
dbb547889b Allow getting consumer group information 2017-04-16 19:45:03 -07:00
Matias Fontanini
6c47b1a190 Allow setting timestamp on produced messages 2017-04-16 15:22:17 -07:00
Matias Fontanini
9ecad71be1 Remove Partition class 2017-04-16 14:51:06 -07:00
Matias Fontanini
f5c8c7c3c8 Require rdkafka v0.9.4 to build 2017-04-16 10:29:15 -07:00
Matias Fontanini
f924eb68e7 Allow making no key/payload copies in BufferedProducer 2017-04-16 10:14:12 -07:00
Matias Fontanini
f781afe5cf Allow using generic message builders not tied to Buffer class 2017-04-16 10:14:12 -07:00