Pavel Pimenov
5bfc047263
Fix detected by PVS-Studio ( #167 )
...
* Fix PVS-Studio
V591 Non-void function should return a value.
V519 The 'new_item' variable is assigned values twice successively.
2019-02-20 18:30:48 -08:00
accelerated
e19d84b839
Added compile time check for store_offsets() api
2019-02-06 17:47:02 -05:00
accelerated
4f4c9e9c91
Changes per code review
2019-02-06 13:01:57 -05:00
accelerated
284e1c57a9
Changed store_offsets() to use the actual position from the assignment
2019-02-04 14:23:59 -05:00
accelerated
7bc03185a8
Added legacy offset store API
2019-02-04 12:26:04 -05:00
accelerated
dc732445f7
Fixes #158
2019-01-16 15:09:27 -05:00
accelerated
93e066a1c1
* Added asserts when building a HeaderList and removed checks for handle
...
validity.
* Removed explicit move semantic when cloning a MessageBuilder.
* Renamed clone() to try_clone() in ClonablePtr class.
2018-12-04 11:12:28 -05:00
accelerated
b366cf4bf6
Remove setting log level in the constructor
2018-11-13 15:28:06 -05:00
accelerated
9859e54522
Added support for message status and setting the event mask
2018-11-12 10:30:54 -05:00
Matias Fontanini
25e3aacf4a
Add compile guard for rd_kafka_event_stats
2018-11-10 10:26:03 -08:00
Matias Fontanini
b242e2c35c
Allow setting background event callback on configuration handles
2018-11-10 10:26:03 -08:00
Matias Fontanini
8dc94869fd
Move get_queue behavior into Queue class
2018-11-10 10:25:31 -08:00
Matias Fontanini
c7e1dcb60a
Allow checking if an Event is valid
2018-11-10 10:25:31 -08:00
Matias Fontanini
e73c997a0c
Allow getting Events out of Queues
2018-11-10 10:25:31 -08:00
Matias Fontanini
b46991db7e
Add Event class
2018-11-10 10:25:31 -08:00
Alex Damian
b0ddceda1f
Message timestamp refactoring and log level changes ( #133 )
...
* Message timestamp refactoring and log level changes
* Changes per code review
2018-11-07 08:36:57 -08:00
Matias Fontanini
451d60295a
Remove MessageTimestamp constructor from time_point ( #129 )
2018-10-26 18:57:28 -07:00
Alex Damian
57268e666c
Added time_point overloads for creating timestamps. ( #128 )
...
* Added time_point overloads for creating timestamps.
* aliased std::chrono types
2018-10-25 07:39:22 -07:00
Alex Damian
fbe3759fed
Header support implementation ( #115 )
...
* header support implementation
* Fixed issue when ptr is null and doesn't have a cloner function
* Code complete with test cases
updated travis file with v0.11.5
* Added compile time check for rdkafka header support version
* Changes per last code review
* Using brace list initializers
2018-10-16 10:58:05 -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
Zenon Parker
d3ef9cad32
Fix #111 : Rename LogLevel enums ( #112 )
2018-08-30 11:28:12 -07:00
shashank khare
df04b27e22
Fix #104 : memory leak in poll_batch ( #107 )
...
poll_batch currently leaks memory while initialising the queue
returned by rd_kafka_queue_get_consumer. The fix as suggested
by @mfontanini as done here is to initialise the queue with a
Queue so it's cleaned up when going out of scope.
2018-07-26 08:56:42 -07:00
Alex Damian
d6f8129207
Fix for ref count on queue handles ( #92 )
...
* Fix for ref count on queue handles
* added check for rdkafka version
* changed to runtime version checking
2018-07-23 17:07:35 -07:00
Alex Damian
577bbb0242
added error check for partition list ( #90 )
2018-06-26 08:57:49 -07:00
Alex Damian
5c72f3fe28
Added pause/resume for producers ( #87 )
...
* Added pause/resume for producers
* Moved pause/resume functions to KafkaHandleBase
2018-06-25 09:16:57 -07:00
Alex Damian
c5aca985b8
Invoke error callback if present instead of log callback ( #93 )
2018-06-20 09:11:24 -07: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
597c026555
Prevent MessageInternal structures if there is no delivery callback registered
2018-06-10 13:00:56 -04:00
accelerated
71e6e2e4e5
added retry logic for producers
2018-06-10 13:00:55 -04: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
6144330835
added test case for polling strategy refactored the strategy class
2018-05-29 09:55:30 -04:00
accelerated
169ea4f8ed
Fixes to queue polling and making them non-owning
2018-05-29 09:55:30 -04:00
accelerated
532d83b225
Removed reserve() and synced consumer::poll_batch and queue::poll_batch functions
2018-05-29 09:55:30 -04:00
accelerated
a1ce130bfd
changes as per code review
2018-05-29 09:55:29 -04:00
accelerated
71afaba3e1
added support for different topics/partitions
2018-05-29 09:55:29 -04:00
accelerated
15be627f8e
intial polling version
2018-05-29 09:55:29 -04:00
Alex Damian
f543810515
Allow metadata object to be non-owning ( #73 )
2018-05-28 11:30:01 -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
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
Alex Damian
8fc6a0f02d
Print offset when dumping partition object ( #55 )
2018-04-24 02:32:14 +01:00
Alex Damian
83a963c1db
Added commit for current assignment and message state checks ( #53 )
2018-04-20 23:51:44 +01:00
accelerated
018a1f52d9
Fixed deprecated error librdkafka function
2018-04-03 11:58:21 -04:00