Skip to content

Commit 46ad0de

Browse files
author
Sachin Maheshwari
committed
Revert "add group consumer"
This reverts commit e750e7e.
1 parent e750e7e commit 46ad0de

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

src/app.js

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ const logger = require('./common/logger');
1818
const errors = require('./common/errors');
1919
const models = require('./models');
2020

21+
let emailTries = {};
22+
2123
/**
2224
* Configure Kafka consumer.
2325
* @param {Object} handlers the handlers
@@ -30,12 +32,7 @@ function configureKafkaConsumer(handlers) {
3032
}
3133
const pauseTime = parseInt(config.EMAIL_PAUSE_TIME);
3234
const maxErrors = parseInt(config.EMAIL_MAX_ERRORS);
33-
34-
// email tries
35-
let emailTries = 0;
36-
37-
// Kafka Consumer
38-
const consumer = new Kafka.GroupConsumer(options);
35+
const consumer = new Kafka.SimpleConsumer(options);
3936

4037
// data handler
4138
const dataHandler = (messageSet, topic, partition) => Promise.each(messageSet, (m) => {
@@ -53,11 +50,10 @@ function configureKafkaConsumer(handlers) {
5350
// return null to ignore this message
5451
return null;
5552
}
56-
5753
let emailModel = {};
5854
const messageJSON = JSON.parse(message);
5955
const handlerAsync = Promise.promisify(handler);
60-
56+
// use handler to create notification instances for each recipient
6157
return models.Email.create(
6258
Object.assign({ status: 'PENDING' }, {
6359
topicName,
@@ -76,23 +72,23 @@ function configureKafkaConsumer(handlers) {
7672
status: result.success ? 'Message accepted' : 'Message rejected',
7773
});
7874
if (result.success) {
79-
emailTries = 0;
75+
emailTries[topicName] = 0;
8076
emailModel.status = 'SUCCESS';
8177
return emailModel.save();
8278
} else {
83-
emailTries += 1;
79+
emailTries[topicName] += 1;
8480
emailModel.status = 'FAILED';
8581
return emailModel.save().then(() => {
86-
const currentTries = emailTries;
82+
const currentTries = emailTries[topicName];
8783
if (currentTries > maxErrors) {
8884
logger.debug(`Failed to send email. Will sleep for ${pauseTime}s`);
89-
emailTries = 0;
85+
emailTries[topicName] = 0;
9086

9187
schedule.scheduleJob(new Date(now.getTime() + pauseTime * 1000), () => {
92-
return startKafkaConsumer(consumer, handlers, dataHandler);
88+
consumer.subscribe(topic, dataHandler);
9389
});
9490

95-
return consumer.end().then(() => {
91+
return consumer.unsubscribe(topic, partition).then(() => {
9692
throw result.error
9793
});
9894
} else {

0 commit comments

Comments
 (0)