@@ -54,19 +54,21 @@ template <typename T> ERL_NIF_TERM parse_config(ErlNifEnv* env, ERL_NIF_TERM lis
54
54
return ATOMS.atomOk ;
55
55
}
56
56
57
- bool appy_kafka_default_config (rd_kafka_conf_t * config)
57
+ bool appy_kafka_default_config (rd_kafka_conf_t * config, TargetObject target )
58
58
{
59
- if (rd_kafka_conf_set (config, " enable.auto.commit" , " true" , NULL , 0 ) != RD_KAFKA_CONF_OK)
60
- return false ;
59
+ if (target == TargetObject::Consumer) {
60
+ if (rd_kafka_conf_set (config, " enable.auto.commit" , " true" , NULL , 0 ) != RD_KAFKA_CONF_OK)
61
+ return false ;
61
62
62
- if (rd_kafka_conf_set (config, " enable.auto.offset.store" , " false" , NULL , 0 ) != RD_KAFKA_CONF_OK)
63
- return false ;
63
+ if (rd_kafka_conf_set (config, " enable.auto.offset.store" , " false" , NULL , 0 ) != RD_KAFKA_CONF_OK)
64
+ return false ;
64
65
65
- if (rd_kafka_conf_set (config, " enable.partition.eof" , " false" , NULL , 0 ) != RD_KAFKA_CONF_OK)
66
- return false ;
66
+ if (rd_kafka_conf_set (config, " enable.partition.eof" , " false" , NULL , 0 ) != RD_KAFKA_CONF_OK)
67
+ return false ;
67
68
68
- if (rd_kafka_conf_set (config, " allow.auto.create.topics" , " true" , NULL , 0 ) != RD_KAFKA_CONF_OK)
69
- return false ;
69
+ if (rd_kafka_conf_set (config, " allow.auto.create.topics" , " true" , NULL , 0 ) != RD_KAFKA_CONF_OK)
70
+ return false ;
71
+ }
70
72
71
73
#ifdef SIGIO
72
74
// quick termination
@@ -99,9 +101,9 @@ ERL_NIF_TERM parse_topic_config(ErlNifEnv* env, ERL_NIF_TERM list, rd_kafka_topi
99
101
return parse_config (env, list, conf, kTopicConfFuns );
100
102
}
101
103
102
- ERL_NIF_TERM parse_kafka_config (ErlNifEnv* env, ERL_NIF_TERM list, rd_kafka_conf_t * conf)
104
+ ERL_NIF_TERM parse_kafka_config (ErlNifEnv* env, ERL_NIF_TERM list, rd_kafka_conf_t * conf, TargetObject target )
103
105
{
104
- if (!appy_kafka_default_config (conf))
106
+ if (!appy_kafka_default_config (conf, target ))
105
107
return make_error (env, " failed to apply default kafka config" );
106
108
107
109
return parse_config (env, list, conf, kKafkaConfFuns );
0 commit comments