Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hao/ts 9303 #51

Open
wants to merge 102 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
c455ead
Merge pull request #2 from HernanRivasAcosta/master
mhald May 9, 2014
e649daa
Merge pull request #3 from HernanRivasAcosta/master
georgeye Sep 10, 2014
23d37e4
Merge pull request #4 from HernanRivasAcosta/master
georgeye Sep 10, 2014
ca38e74
Merge pull request #5 from HernanRivasAcosta/master
georgeye Sep 17, 2014
3df50f8
Merge pull request #6 from HernanRivasAcosta/master
georgeye Sep 19, 2014
f0c4d09
Merge pull request #7 from HernanRivasAcosta/master
georgeye Sep 22, 2014
e3edb8c
Merge pull request #8 from HernanRivasAcosta/master
georgeye Sep 23, 2014
4c2090a
Move to epocxy 0.9.8 to sync with ttserver/uffda
jaynel Oct 24, 2014
16d28d8
Merge pull request #10 from jaynel/patch-1
georgeye Nov 4, 2014
7a4b5c0
update epocxy
georgeye Nov 12, 2014
8c147dd
updated epocxy tag to 0.9.8b
zvoykish Dec 4, 2014
f18340f
updated rebar.config to use tigertext/epocxy repo
zvoykish Dec 4, 2014
5bba181
Merge pull request #11 from zvoykish/master
mhald Dec 4, 2014
247c9dd
Update rebar.config
mhald Jan 6, 2015
f64b0d2
Use epocxy 0.9.8e
jaynel Feb 19, 2015
64f4bbf
Update epocxy to 0.9.8-tt-b
jaynel Mar 3, 2015
33c9667
Merge pull request #14 from HernanRivasAcosta/master
georgeye Mar 5, 2015
941eb31
Merge pull request #12 from jaynel/master
Apr 28, 2015
3219611
update to avoid busy wait loop
Jun 13, 2015
d681576
Merge pull request #15 from tigertext/martinsk-patch-1
Jun 13, 2015
76a860c
Bump epocxy to 0.9.8g
jaynel Jun 16, 2015
d06093d
Merge pull request #16 from jaynel/OPS-368.router-cxy
Jun 17, 2015
cb40e4c
update to use tt repo
georgeye Jun 26, 2015
a79f5e1
Bump epocxy to 0.9.8h
jaynel Sep 15, 2015
22afe7f
Merge pull request #17 from jaynel/cache_names
Sep 15, 2015
2c13f04
Bump epocxy to 1.0.0
zvoykish Feb 11, 2016
c6f007d
Merge pull request #18 from zvoykish/20160211_bump_erlang_commons_1.1.5
georgeye Feb 11, 2016
6060ba1
[OK-125] kafkerl improvements
Mar 10, 2016
c622bca
[OK-125] kafkerl improvements
Mar 16, 2016
4782aa7
some minor fixes
HernanRivasAcosta Mar 28, 2016
391de6c
Merge pull request #20 from HernanRivasAcosta/hernan.tt-hotfix
mhald Mar 28, 2016
58f18a6
Revert "Hernan.tt hotfix"
mhald Mar 29, 2016
d217762
Merge pull request #21 from tigertext/revert-20-hernan.tt-hotfix
mhald Mar 29, 2016
2929561
update deps
georgeye Jun 17, 2016
45e2ec4
Merge pull request #22 from georgeye/from_hernan
georgeye Jun 17, 2016
55aad62
update version
georgeye Jun 17, 2016
c6ca0ed
updated the epocxy version
HernanRivasAcosta Mar 5, 2015
fa1cc97
added the kafka consumer and simplified the producer API, bumped vers…
HernanRivasAcosta Jul 29, 2015
2469eb4
fixed bad arity on a function call
HernanRivasAcosta Aug 4, 2015
d7f3dd6
removed an unnecesary parameter on send_messages
HernanRivasAcosta Aug 4, 2015
3013599
consumer improvements, removed types from .hrl files, improved API
HernanRivasAcosta Jan 21, 2016
45fc255
minor spec fixes
HernanRivasAcosta Jan 21, 2016
039d6ee
fixes and improvements
HernanRivasAcosta Jan 25, 2016
8729d9d
updated readme
HernanRivasAcosta Jan 25, 2016
8e63624
fixed a parsing error for some metadata responses
HernanRivasAcosta Apr 8, 2016
3388619
Revamped the way kafkerl handles messages that need to be written to …
HernanRivasAcosta Apr 5, 2016
06034c9
improved the metadata handling
HernanRivasAcosta Apr 15, 2016
0b6d6a3
version bump
HernanRivasAcosta Apr 15, 2016
302a348
improved error messages for the default buffer
HernanRivasAcosta May 13, 2016
a542db7
improvements to the return values of the produce funcion
HernanRivasAcosta May 16, 2016
e9348f5
multiple improvements
HernanRivasAcosta Jun 15, 2016
fecbc3b
update epocxy
georgeye Jun 23, 2016
05a50c9
kafkerl refact
anderswei Jul 7, 2016
4210727
add child
anderswei Jul 8, 2016
cb813ff
handle broker leader change
anderswei Jul 8, 2016
5e56fd8
updated the epocxy version
HernanRivasAcosta Mar 5, 2015
9e367a0
added the kafka consumer and simplified the producer API, bumped vers…
HernanRivasAcosta Jul 29, 2015
80bd2f3
fixed bad arity on a function call
HernanRivasAcosta Aug 4, 2015
c1fbaaf
removed an unnecesary parameter on send_messages
HernanRivasAcosta Aug 4, 2015
60cf629
consumer improvements, removed types from .hrl files, improved API
HernanRivasAcosta Jan 21, 2016
fc11c59
minor spec fixes
HernanRivasAcosta Jan 21, 2016
677ffef
fixes and improvements
HernanRivasAcosta Jan 25, 2016
1090f34
updated readme
HernanRivasAcosta Jan 25, 2016
b486bc1
fixed a parsing error for some metadata responses
HernanRivasAcosta Apr 8, 2016
cabd9e1
Revamped the way kafkerl handles messages that need to be written to …
HernanRivasAcosta Apr 5, 2016
92a3b12
improved the metadata handling
HernanRivasAcosta Apr 15, 2016
93b9c68
version bump
HernanRivasAcosta Apr 15, 2016
5c4f323
improved error messages for the default buffer
HernanRivasAcosta May 13, 2016
37cd3c2
improvements to the return values of the produce funcion
HernanRivasAcosta May 16, 2016
6b6beed
multiple improvements
HernanRivasAcosta Jun 15, 2016
6a2fd32
kafkerl refact
anderswei Jul 7, 2016
8367f25
add child
anderswei Jul 8, 2016
70bf3ba
handle broker leader change
anderswei Jul 8, 2016
d99bfb5
Merge remote-tracking branch 'upstream/master' into bug_fix
anderswei Jul 11, 2016
80e2969
Merge pull request #24 from anderswei/bug_fix
georgeye Jul 12, 2016
e068d69
update version
georgeye Jul 12, 2016
9315c64
add get_dump_files/0
anderswei Jul 13, 2016
c8cb6bf
add support for get_dump_files/0
anderswei Jul 13, 2016
882197a
Merge pull request #25 from anderswei/bug_fix
georgeye Jul 25, 2016
86931c9
update version
georgeye Jul 25, 2016
89540c3
add support for resending messages from files
anderswei Aug 3, 2016
7d53995
Merge pull request #26 from anderswei/master
georgeye Aug 3, 2016
8b1fb60
update to fix dump to disk resend
georgeye Aug 3, 2016
bb0a43f
TS-3001 fix kafkerl crashes when try to write to disk
anderswei Jan 3, 2017
04e1e85
Merge pull request #27 from anderswei/TS-3001_fix_crash
georgeye Jan 3, 2017
0e2e004
update version
georgeye Jan 3, 2017
4da146f
Merge pull request #28 from georgeye/master
georgeye Jan 3, 2017
e07f23e
point to epocxy master
dvliman Mar 23, 2018
3427222
Merge pull request #29 from dvliman/bump-version
nitzanharel Mar 23, 2018
b60e43d
add validerl to applications
TT-EVigil-McClanahan May 25, 2018
c47042b
Merge pull request #30 from TT-EVigil-McClanahan/rebar3-compat
nitzanharel Jun 19, 2018
91200d6
TS-5150 set timeout
anderswei Dec 13, 2018
099c97d
Merge pull request #31 from anderswei/TS-5150
anderswei Dec 20, 2018
d24b8df
TS-5500
anderswei Mar 13, 2019
c2e83f0
Merge pull request #33 from anderswei/TS-5500
anderswei Mar 14, 2019
c840bf5
Remove compile warnings.
TC-aLi Sep 19, 2019
a0918e2
fix
TC-aLi Sep 19, 2019
6cd4233
Address comments.
TC-aLi Sep 23, 2019
72bf7e6
Merge pull request #34 from TC-aLi/ang/remove_compile_warnings
anderswei Sep 23, 2019
f9da6f8
Hao/TS-9303 update kafka error code mappings
TC-hJiang Mar 29, 2021
f5cdb2d
Hao/TS-9303 add missing codes
TC-hJiang Mar 29, 2021
145f137
Hao/TS-9303 edit tab
TC-hJiang Mar 30, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,8 @@ log
rebar
.rebar
*.dump
bin/tmp
bin/tmp
logs/
rel/
.idea/
*.iml
24 changes: 4 additions & 20 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,25 +1,13 @@
COOKIE ?= KAFKERL-EXAMPLE
CONFIG ?= rel/kafkerl.app.config
ERL ?= erl
RUN := ${ERL} -pa ebin -pa deps/*/ebin -smp enable -s lager -setcookie ${COOKIE} -config ${CONFIG} -boot start_sasl ${ERL_ARGS}
RUN := ${ERL} -pa ebin -pa deps/*/ebin -smp enable -s lager -s kafkerl -setcookie ${COOKIE} -config ${CONFIG} -boot start_sasl ${ERL_ARGS}
NODE ?= kafkerl
CT_ARGS ?= "-vvv"
CT_LOG ?= /logs/ct
ERLARGS=-pa ${DEPS} -pa ${APPS} -smp enable -boot start_sasl -args_file ${VM_ARGS} -s lager -s redis_config
TEST_ERL_ARGS ?= ${ERLARGS} -args_file ${TEST_VM_ARGS} -config ${TEST_CONFIG}
ERLARGS=-config ${CONFIG}
TEST_ERL_ARGS ?= ${ERLARGS}
REBAR ?= "rebar"

ifdef CT_SUITES
CT_SUITES_="suites=${CT_SUITES}"
else
CT_SUITES_=""
endif
ifdef CT_CASE
CT_CASE_="case=${CT_CASE}"
else
CT_CASE_=""
endif

all:
${REBAR} get-deps compile

Expand Down Expand Up @@ -74,8 +62,4 @@ test: tests

tests:
@${REBAR} compile skip_deps=true
@rm -rf ${CT_LOG}
@mkdir -p ${CT_LOG}
@ERL_FLAGS="${TEST_ERL_ARGS}" \
ERL_AFLAGS="${TEST_ERL_ARGS}" \
${REBAR} -v 3 skip_deps=true ${CT_SUITES_} ${CT_CASE_} ct
${REBAR} -v 3 skip_deps=true ct
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
kafkerl v1.0.2
kafkerl v3.0.0
==============
[![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/HernanRivasAcosta/kafkerl?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Apache Kafka 0.8 high performance producer for erlang.
Developed thanks to the support and sponsorship of [TigerText](http://www.tigertext.com/).
Apache Kafka 0.8.2 high performance producer/consumer for erlang.
Developed thanks to the support and sponsorship of [TigerText](http://www.tigertext.com/) and [Inaka](https://github.com/inaka/).

##Features (aka, why kafkerl?)
- Fast binary creation.
Expand All @@ -12,12 +12,12 @@ Developed thanks to the support and sponsorship of [TigerText](http://www.tigert
- Messages are not lost but cached before sending to kafka.
- Handles server side errors and broker/leadership changes.
- Flexible API allows consumer of messages to define pids, funs or M:F pairs as callbacks for the received messages.
- Simple yet flexible consumer API to retrieve the messages from Kafka.

##Missing features (aka, what I am working on but haven't finished yet)
- Though the library can parse kafka messages, the consumers are not implemented in this version.
- There is no communication with Zookeeper.
- Tests suites.



Special thanks to [@nitzanharel](https://github.com/nitzanharel) who found some really nasty bugs and helped me understand the subtleties of kafka's design and to the rest of the [TigerText](http://www.tigertext.com/) team for their support and code reviews.
Special thanks to [@nitzanharel](https://github.com/nitzanharel) who found some really nasty bugs and helped me understand the subtleties of kafka's design and to the rest of the [TigerText](http://www.tigertext.com/) and [Inaka](https://github.com/inaka/) teams for their support and code reviews.
1 change: 0 additions & 1 deletion bin/clear_kafkerl_test_topics.sh

This file was deleted.

6 changes: 3 additions & 3 deletions bin/create_test_topics.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,6 @@ done
# make sure the path is defined
if [ ! -d "${d}" ]; then echo "invalid kafka path ${d}" ; exit 1 ; fi

"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic test1 --partitions 3 --replication-factor 3
"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic test2 --partitions 3 --replication-factor 3
"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic test3 --partitions 4 --replication-factor 3
"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic kafkerl_test1 --partitions 1 --replication-factor 3
"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic kafkerl_test2 --partitions 2 --replication-factor 3
"${d}/bin/kafka-topics.sh" --zookeeper localhost:2181 --create --topic kafkerl_test3 --partitions 3 --replication-factor 3
1 change: 1 addition & 0 deletions bin/delete_test_topics.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rm -rf tmp
2 changes: 1 addition & 1 deletion bin/stop_all_brokers.sh
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ps ax | grep -i 'kafka\.Kafka' | grep java | grep -v grep | awk '{print $1}' | xargs kill -15
ps ax | grep -i 'kafka\.Kafka' | grep java | grep -v grep | awk '{print $1}' | xargs kill -9
2 changes: 1 addition & 1 deletion bin/stop_zk.sh
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ps ax | grep -i 'zookeeper' | grep -v grep | awk '{print $1}' | xargs kill -15
ps ax | grep -i 'zookeeper' | grep -v grep | awk '{print $1}' | xargs kill -9
177 changes: 91 additions & 86 deletions include/kafkerl.hrl
Original file line number Diff line number Diff line change
@@ -1,94 +1,99 @@
%% Constants
% Misc
-define(ETS_BUFFER, ets_buffer).
-define(DEFAULT_TCP_OPTS, lists:sort([{mode, binary}, {packet, 0}])).
% Compression
-define(COMPRESSION_NONE, none).
-define(COMPRESSION_GZIP, gzip).
-define(COMPRESSION_SNAPPY, snappy).
-define(KAFKERL_COMPRESSION_TYPES, [?COMPRESSION_NONE,
?COMPRESSION_GZIP,
?COMPRESSION_SNAPPY]).
% API keys
-define(PRODUCE_KEY, 0).
-define(FETCH_KEY, 1).
-define(OFFSET_KEY, 2).
-define(METADATA_KEY, 3).

%% Common
-type error_code() :: -1..16.
-type correlation_id() :: non_neg_integer().

%% Connection
-type address_host() :: string().
-type address_port() :: 1..65535.
-type socket_address() :: {address_host(), address_port()}.
-type broker_id() :: integer().
-type broker() :: {broker_id(), socket_address()}.

%% Configuration
-type compression() :: ?COMPRESSION_NONE |
?COMPRESSION_GZIP |
?COMPRESSION_SNAPPY.

%% Requests
-type client_id() :: binary().
-type topic() :: binary().
-type partition() :: integer().
-type payload() :: binary() | [binary()].
-type basic_message() :: {topic(), partition(), payload()}.
-type merged_message() :: basic_message() |
{topic(), [{partition(), payload()}]} |
[merged_message()].

-type fetch_offset() :: integer().
-type fetch_max_bytes() :: integer().
-type fetch_partition() :: {partition(), fetch_offset(), fetch_max_bytes()} |
[fetch_partition()].
-type fetch_request() :: {topic(), fetch_partition()} |
[fetch_request()].

%% Reponses
-type error() :: {error, atom() | {atom(), any()}}.

%% Produce responses
-type produce_partition() :: {partition(), error_code(), integer()}.
-type produce_topic() :: {topic(), [produce_partition()]}.
-type produce_response() :: {ok, correlation_id(), [produce_topic()]}.

%% Fetch responses
-type messages() :: [{topic(), [{{partition(), integer()}, [binary()]}]}].
-type fetch_state() :: {binary(), integer(), [any()]}.
-type fetch_response() :: {ok, integer(), messages()} |
{incomplete, integer(), messages(), fetch_state()} |
error().

%% Metadata responses
-type leader() :: integer().
-type replica() :: integer().
-type isr() :: integer().
-type partition_metadata() :: {error_code(), partition(), broker_id(),
[replica()], [isr()]}.
-type topic_metadata() :: {error_code(), topic(), [partition_metadata()]}.
-type metadata() :: {[broker()], [topic_metadata()]}.
-type metadata_response() :: {ok, correlation_id(), metadata()} |
error().

%% Error codes
-define(NO_ERROR, 0).
-define(UNKNOWN_SERVER_ERROR, -1).
-define(NONE, 0).
-define(OFFSET_OUT_OF_RANGE, 1).
-define(INVALID_MESSAGE, 2).
-define(CORRUPT_MESSAGE, 2).
-define(UNKNOWN_TOPIC_OR_PARTITION, 3).
-define(INVALID_MESSAGE_SIZE, 4).
-define(INVALID_FETCH_SIZE, 4).
-define(LEADER_NOT_AVAILABLE, 5).
-define(NOT_LEADER_FOR_PARTITION, 6).
-define(REQUEST_TIMEDOUT, 7).
-define(NOT_LEADER_OR_FOLLOWER, 6).
-define(REQUEST_TIMED_OUT, 7).
-define(BROKER_NOT_AVAILABLE, 8).
-define(REPLICA_NOT_AVAILABLE, 9).
-define(MESSAGE_SIZE_TOO_LARGE, 10).
-define(MESSAGE_TOO_LARGE, 10).
-define(STALE_CONTROLLER_EPOCH, 11).
-define(OFFSET_METADATA_TOO_LARGE, 12).
-define(OFFSETS_LOAD_IN_PROGRESS_CODE, 14).
-define(CONSUMER_COORDINATOR_NOT_AVAILABLE_CODE, 15).
-define(NOT_COORDINATOR_FOR_CONSUMER_CODE, 16).
-define(UNKNOWN, -1).
-define(NETWORK_EXCEPTION, 13).
-define(COORDINATOR_LOAD_IN_PROGRESS, 14).
-define(COORDINATOR_NOT_AVAILABLE, 15).
-define(NOT_COORDINATOR, 16).
-define(INVALID_TOPIC_EXCEPTION, 17).
-define(RECORD_LIST_TOO_LARGE, 18).
-define(NOT_ENOUGH_REPLICAS, 19).
-define(NOT_ENOUGH_REPLICAS_AFTER_APPEND, 20).
-define(INVALID_REQUIRED_ACKS, 21).
-define(ILLEGAL_GENERATION, 22).
-define(INCONSISTENT_GROUP_PROTOCOL, 23).
-define(INVALID_GROUP_ID, 24).
-define(UNKNOWN_MEMBER_ID, 25).
-define(INVALID_SESSION_TIMEOUT, 26).
-define(REBALANCE_IN_PROGRESS, 27).
-define(INVALID_COMMIT_OFFSET_SIZE, 28).
-define(TOPIC_AUTHORIZATION_FAILED, 29).
-define(GROUP_AUTHORIZATION_FAILED, 30).
-define(CLUSTER_AUTHORIZATION_FAILED, 31).
-define(INVALID_TIMESTAMP, 32).
-define(UNSUPPORTED_SASL_MECHANISM, 33).
-define(ILLEGAL_SASL_STATE, 34).
-define(UNSUPPORTED_VERSION, 35).
-define(TOPIC_ALREADY_EXISTS, 36).
-define(INVALID_PARTITIONS, 37).
-define(INVALID_REPLICATION_FACTOR, 38).
-define(INVALID_REPLICA_ASSIGNMENT, 39).
-define(INVALID_CONFIG, 40).
-define(NOT_CONTROLLER, 41).
-define(INVALID_REQUEST, 42).
-define(UNSUPPORTED_FOR_MESSAGE_FORMAT, 43).
-define(POLICY_VIOLATION, 44).
-define(OUT_OF_ORDER_SEQUENCE_NUMBER, 45).
-define(DUPLICATE_SEQUENCE_NUMBER, 46).
-define(INVALID_PRODUCER_EPOCH, 47).
-define(INVALID_TXN_STATE, 48).
-define(INVALID_PRODUCER_ID_MAPPING, 49).
-define(INVALID_TRANSACTION_TIMEOUT, 50).
-define(CONCURRENT_TRANSACTIONS, 51).
-define(TRANSACTION_COORDINATOR_FENCED, 52).
-define(TRANSACTIONAL_ID_AUTHORIZATION_FAILED, 53).
-define(SECURITY_DISABLED, 54).
-define(OPERATION_NOT_ATTEMPTED, 55).
-define(KAFKA_STORAGE_ERROR, 56).
-define(LOG_DIR_NOT_FOUND, 57).
-define(SASL_AUTHENTICATION_FAILED, 58).
-define(UNKNOWN_PRODUCER_ID, 59).
-define(REASSIGNMENT_IN_PROGRESS, 60).
-define(DELEGATION_TOKEN_AUTH_DISABLED, 61).
-define(DELEGATION_TOKEN_NOT_FOUND, 62).
-define(DELEGATION_TOKEN_OWNER_MISMATCH, 63).
-define(DELEGATION_TOKEN_REQUEST_NOT_ALLOWED, 64).
-define(DELEGATION_TOKEN_AUTHORIZATION_FAILED, 65).
-define(DELEGATION_TOKEN_EXPIRED, 66).
-define(INVALID_PRINCIPAL_TYPE, 67).
-define(NON_EMPTY_GROUP, 68).
-define(GROUP_ID_NOT_FOUND, 69).
-define(FETCH_SESSION_ID_NOT_FOUND, 70).
-define(INVALID_FETCH_SESSION_EPOCH, 71).
-define(LISTENER_NOT_FOUND, 72).
-define(TOPIC_DELETION_DISABLED, 73).
-define(FENCED_LEADER_EPOCH, 74).
-define(UNKNOWN_LEADER_EPOCH, 75).
-define(UNSUPPORTED_COMPRESSION_TYPE, 76).
-define(STALE_BROKER_EPOCH, 77).
-define(OFFSET_NOT_AVAILABLE, 78).
-define(MEMBER_ID_REQUIRED, 79).
-define(PREFERRED_LEADER_NOT_AVAILABLE, 80).
-define(GROUP_MAX_SIZE_REACHED, 81).
-define(FENCED_INSTANCE_ID, 82).
-define(ELIGIBLE_LEADERS_NOT_AVAILABLE, 83).
-define(ELECTION_NOT_NEEDED, 84).
-define(NO_REASSIGNMENT_IN_PROGRESS, 85).
-define(GROUP_SUBSCRIBED_TO_TOPIC, 86).
-define(INVALID_RECORD, 87).
-define(UNSTABLE_OFFSET_COMMIT, 88).
-define(THROTTLING_QUOTA_EXCEEDED, 89).
-define(PRODUCER_FENCED, 90).
-define(RESOURCE_NOT_FOUND, 91).
-define(DUPLICATE_RESOURCE, 92).
-define(UNACCEPTABLE_CREDENTIAL, 93).
-define(INCONSISTENT_VOTER_SET, 94).
-define(INVALID_UPDATE_VERSION, 95).
-define(FEATURE_UPDATE_FAILED, 96).
9 changes: 0 additions & 9 deletions include/kafkerl_consumers.hrl

This file was deleted.

10 changes: 5 additions & 5 deletions rebar.config
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
warn_untyped_record,
{i, "include"}]}.
{deps,
[{parse_trans, ".*", {git, "[email protected]:uwiger/parse_trans.git", "master"}},
{lager, ".*", {git, "[email protected]:basho/lager.git", "master"}},
{epocxy, "0.9.7", {git, "[email protected]:duomark/dk_cxy.git", {tag, "0.9.7"}}},
{validerl, ".*", {git, "https://github.com/HernanRivasAcosta/validerl.git",
"master"}}]}.
[{parse_trans, ".*", {git, "[email protected]:tigertext/parse_trans.git", "master"}},
{lager, ".*", {git, "[email protected]:tigertext/lager.git", {tag, "2.1.1"}}},
{epocxy, ".*", {git, "[email protected]:tigertext/epocxy.git", "master"}},
{eper, "0.69", {git, "git@github.com:tigertext/eper.git", "HEAD"}},
{validerl, ".*", {git, "[email protected]:tigertext/validerl.git", "master"}}]}.
25 changes: 14 additions & 11 deletions rel/kafkerl.app.config
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
[{lager, [{colored, true},
{handlers, [{lager_console_backend, [debug,true]}]}]},
{kafkerl, [%{gen_server_name, kafkerl_client},
{disabled, false},
{conn_config, [{brokers, [{"localhost", 9090},
{"localhost", 9091},
{"localhost", 9092}]},
{kafkerl, [{disabled, false},
{conn_config, [{brokers, [{"localhost", 9092}, {"localhost", 9094}
]},
{client_id, kafkerl_client}, % Sent to kafka
{max_broker_retries, 2},
{broker_tcp_timeout, 1000},
{max_metadata_retries, -1},
{max_metadata_retries, 3},
{assume_autocreate_topics, true},
{metadata_tcp_timeout, 1000},
{metadata_tcp_timeout, 5000},
{max_queue_size, 20}, % In items, per topic/partition
{max_time_queued, 5}, % In seconds
{metadata_request_cooldown, 1500} % In milliseconds
]},
{topics, [test1, test2, test3]},
{tests, [{kafka_installation, "~/kafka"}]}]}].
{metadata_request_cooldown, 3500}, % In milliseconds
{consumer_min_bytes, 1},
{consumer_max_wait, 1500},
{dump_location, "dumps/"},
{flush_to_disk_every, 20000}, % In milliseconds
{max_buffer_size, 5000},
{save_messages_for_bad_topics, true}]},
{topics, []},
{tests, [{kafkerl_path, "/usr/local/Cellar/kafka/0.8.2.2/"}]}]}].
File renamed without changes.
11 changes: 8 additions & 3 deletions src/kafkerl.app.src
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
{application, kafkerl,
[{description, []},
{vsn, "1"},
{vsn, "1.5"},
{registered, []},
{applications, [kernel, stdlib]},
{applications,
[
kernel,
stdlib,
validerl
]},
{mod, {kafkerl, []}},
{env, []},
{lager, [{handlers, [{lager_console_backend, info}]}]}]}.
{lager, [{handlers, [{lager_console_backend, info}]}]}]}.
Loading