Releases: silviucpp/erlkaf
Releases · silviucpp/erlkaf
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v2.0.0
- Redesign the callback system. Instead using one thread per consumer/producer that polls for new events, now it's
using one single thread for all producers and consumers that's notified when new events are available. - Breaking backward compatibility: change the
create_consumer_group
function parameters, and consumer configs. More details below.
Upgrading from v1.X to v2.0.0
In version 1.x each consumer group could handle a list of topics but it couldn't specify a callback for each topic. Now the callbacks settings moved into the topics list as follow:
% v1.x
{client_consumer_id, [
{type, consumer},
{group_id, <<"erlkaf_consumer">>},
{callback_module, test_consumer},
{callback_args, []},
{topics, [<<"topic1">>, <<"topic2">>]},
{topic_options, [
{auto_offset_reset, smallest}
]},
{client_options, []}
]}
% becomes in v2.0.0 or newer:
{client_consumer_id, [
{type, consumer},
{group_id, <<"erlkaf_consumer">>},
{topics, [
{<<"topic1">>, [
{callback_module, module_topic1},
{callback_args, []}
]},
{<<"topic2">>, [
{callback_module, module_topic2},
{callback_args, []}
]}
]},
{topic_options, [
{auto_offset_reset, smallest}
]},
{client_options, []}
]}
% Please notice that `callback_module` and `callback_args` were moved into the `topics` which
% now it's a proplist where key is the topic name and value is the list of settings for the topic.
v1.2.0
v1.1.9
v1.1.8
v1.1.7
- Based on librdkafka v1.0.1
- Removed configs:
queuing_strategy
,offset_store_method
,reconnect_backoff_jitter_ms
- Added new configs:
reconnect_backoff_ms
,reconnect_backoff_max_ms
,max_poll_interval_ms
,enable_idempotence
,enable_gapless_guarantee
get_stats
decodes json to maps instead of proplists