Releases · morganstanley/modern-cpp-kafka
v2024.07.03This release cooperates with librdkafka
v2.4.0 and includes the following fixes and enhancements:
KafkaClient::oauthbearerTokenRefreshCallback
when OAuthBearer is not configuredKafkaClient
constructorDEBUG
from kafka::clients::Config
KafkaConsumer::poll(std::chrono::milliseconds timeout, std::vector<consumer::ConsumerRecord>& output)
from kafka::clients::consumer::KafkaConsumer
tools
to console_clients
folderubuntu-22.04
to ubuntu-24.04
This release cooperates with librdkafka
v2.0.2 (not compatible with librdkafka
v1.x.x)
enable.manual.events.poll
.This release cooperates with librdkafka
v1.9.2
Namespace changes
kafka::clients::producer::KafkaProducer
(instead of kafka::clients::KafkaProducer
)kafka::clients::consumer::KafkaConsumer
(instead of kafka::clients::KafkaConsumer
)kafka::clients::admin::AdminClient
(instead of kafka::clients::AdminClient
)Legacy interface removed
setLogger(...)
/setErrorCallback(...)
/setStatsCallback(...)
/setOauthbearerTokenRefreshCallback(...)
any more.EventsPollingOption
parameter for Kafka client initialization.Interceptor
parameter for Kafka client initialization.New Properties
std::string
: Most are from librdkafka configuration.std::function<...>
: Callbacks for log_cb
, error_cb
, stats_cb
or oauthbearer_token_refresh_cb
.Interceptors
enable.manual.events.poll
.Default behavior changed
enable.auto.commit=true
for KafkaConsumer
by defaultThis release cooperates with librdkafka
v1.9.2
New interface: Interceptors
for threads start/exit
KafkaProducer
: default transactional timeout changed to infinite
windows
platform: avoid conflicts with macros (e.g. min
, max
) from windows.h
Logging: remove some sensitive info from log
Fix build failure: CMake
failed to find pre-installed package rapidjson
This release cooperates with librdkafka
v1.8.2
Remove sensitive info (e.g. password related configurations for properties) from log
Some trivial improvements (to avoid clang-tidy
warnings)
This release cooperates with librdkafka
v1.8.2
Bazel build support
Improve CMake project
Some trivial fixes
This release cooperates with librdkafka
v1.7.0
Make the ConsumerRecord
copyable
New addon: KafkaMetrics
librdkafka
This release cooperates with librdkafka
v1.7.0
Unify KafkaAsyncProducer
& KafkaSyncProducer
into KafkaProducer
syncSend(...)
for synchronous operationUnified KafkaAutoCommitConsumer
& KafkaManualCommitConsumer
into KafkaConsumer
Refine the namespaces
Use lowercased namespace names
kafka
, kafka::clients
, kafka::utility
, etcNew namespace kafka::clients
for Kafka clients and related types
kafka::clients::KafkaProducer
kafka::clients::producer
Config
RecordMetadata
Callback
kafka::clients::KafkaConsumer
kafka::clients::consumer
Config
RebalanceCallback
OffsetCommitCallback
ConsumerGroupMetadata
UnorderedOffsetCommitQueue
kafka::clients::AdminClient
kafka::clients::admin
Config
CreateTopicsResult
DeleteTopicsResult
ListTopicsResult
DeleteRecordsResult
New addon: KafkaRecoverableProducer
KafkaProducer
, which would internally re-initialize the underlying producer for fatal errorsThis release cooperates with librdkafka
v1.7.0
Support windows
platform
New interface for AdminClient
Admin::DeleteRecordsResult deleteRecords(const TopicPartitionOffsets& topicPartitionOffsets, std::chrono::milliseconds)
Incremental cooperative rebalancing support for KafkaConsumer
partition.assignment.strategy=cooperative-sticky
Unified Error
type
No std::error_code
(for interfaces) anymore
Type Error
is convertible to std::error_code
New interface for error notification
KafkaClient::setErrorCallback(std::function<void(const Error&)> errorCb)
Fixed issue for KafkaConsumer
subscribe(...)
/unsubscribe(...)
returned too soon (before the "partition-rebalance events" being triggered)This release cooperates with librdkafka
v1.7.0
Improved subscribe(...)
/unsubscribe(...)
interfaces (with an additional timeout
parameter) for KafkaConsumer
Set default log_level
as NOTICE
(5
) (for all client types)
Fixed C++14
build failure
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4