Giter VIP home page Giter VIP logo

Comments (13)

weyoss avatar weyoss commented on August 17, 2024 2

You test script has finally helped me to reproduce the bug.
This bug has been fixed and was related to garbage collector.
A new package version is out. Please upgrade.
Thank you for helping to make this application better!

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024 1

I post my test script to https://github.com/JohnLou/try-smq . My steps and logs in log.txt.

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

I think it is not a bug.

When a message is unacknowledged because of an error, depending on options.messageRetryThreshold, the message is immediately requeued or moved to DL queue.

After that the message is requeued it is consumed by any available consumer instance, given many instances.

So in your case, I guess, each time the message is queued, it is delivered to a consumer, an error occurs, it is re-queued again and delivered to another consumer, once again the same error occurs and so on until the options.messageRetryThreshold is exceeded, then it is moved to DL Queue.

This happens in such speed that it gives you an impression that the message is sent to all consumers but in fact it is delivered only to one given consumer instance at a time.

If you still believe that this issue is a bug, please provide enough details to reproduced it.

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024

Thanks for your reply.
That's right "When the message is requeued it is consumed immediately by any other available consumer instance". I have a question for "requeued" and "any other available consumer instance". Is "requeued" means the message well send to another queue (I means the "queueName" property of msq.Consumer).

I have some Consumer extends msq.Consumer, and each of them running single instance.


class UserLoginConsumer extends smq.Consumer {
consume(msg, cb) {
log.debug('user login consumer: ' + JSON.stringify(msg));
.....
// if error occurs
setTimeout(()=>{return cb && cb(err);}, DELAY_TIMES);
}
}
UserLoginConsumer.queueName = QUEUES.USER_LOGIN_MESSAGE_QUEUE;

/***

  • order queue to db.
    */
    class CpsOrderFetchConsumer extends smq.Consumer {
    consume(msg, cb) {
    log.debug('fetch order consumer: ' + JSON.stringify(msg));
    if(msg && msg.type){
    switch (msg.type) {
    case HAOQUAN_MSQ.PDD_CPS_ORDER.type:
    // for test error
    const _err='PDD order send to db error. Wait ['+DELAY_TIMES+'] to requeue.';
    log.debug(_err);
    setTimeout(()=>{
    return cb(_err);
    }, DELAY_TIMES);
    break;
    ....
    }
    }
    CpsOrderFetchConsumer.queueName = QUEUES.CPS_ORDER_FETCH_QUEUE;

/***

  • order process in queue.
    */
    class OrderProcessConsumer extends smq.Consumer {
    consume(msg, cb) {
    log.debug('order process consumer: ' + JSON.stringify(msg));
    .....
    // if error occurs
    setTimeout(()=>{return cb && cb(err);}, DELAY_TIMES);
    }
    }
    OrderProcessConsumer.queueName = QUEUES.ORDER_PROCESS_QUEUE;

order to db consumer log:
order_to_db

user login consumer log:
user_login

This is not fixed,but try several more times.


some redis data like:
user_login_dead_queue

new_order_dead_queue

order_to_db_dead_queue

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

That's right "When the message is requeued it is consumed immediately by any other available consumer instance". I have a question for "requeued" and "any other available consumer instance". Is "requeued" means the message well send to another queue (I means the "queueName" property of msq.Consumer).

Let me make it clear for you.

There can be many queues. A queue can have many consumers and many producers. Each queue has a system generated queue named Dead-Letter Queue for storing messages that can no longer be delivered to a consumer.

Let's suppose we have:

  • 2 queues [Q1, Q2].
  • 2 DL queues [DLQ1] for Q1 and [DLQ2] for Q2.
  • Each queue has one producer: [P1] for Q1 and [P2] for Q2
  • Each queue has 2 consumers: [C1.1, C1.2] for Q1 and [C2.1, C2.2] for Q2

Then:

  1. Producer P1 produced a message M1 to the queue Q1.
  2. The message M1 is delivered to either C1.1 or C1.2.
  3. We consider that the message M1 has been delivered to consumer C1.2.
  4. While consuming the message M1 an error occurs, the consumer C1.2 unacknowledges the message by calling cb(err).
  5. The messsage M1 is pushed back (requeued) to the queue Q1.
  6. The consumer C1.1 takes this time the message M1.
  7. Once again an error occurs, consumer C1.1 unacknowledges the message by calling cb(err).
  8. The messsage M1 is pushed back (requeued) to the queue Q1.
  9. The message is delivered to consumer C1.2.
  10. And so on until options.messageRetryThreshold is exceeded, then the message is moved to DLQ1 beacause it can no longer be processed.

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

I highly suspect that you have something wrong somewhere. Please debug every peace of your code to figure out what is wrong.

This issue can not be reproduced.

Here is a simple test that demonstrates the above:

HelloQueueConsumer:

// Save this script to hello-queue-consumer.js

'use strict';
const redisSMQ = require('redis-smq');
const Consumer = redisSMQ.Consumer;
class HelloQueueConsumer extends Consumer {
    /**
     *
     * @param message
     * @param cb
     */
    consume(message, cb) {
        cb(new Error('hello error'));
    }
}
HelloQueueConsumer.queueName = 'hello_queue';
const consumer = new HelloQueueConsumer();
consumer.run();

TestQueueConsumer:

// Save this script to test-queue-consumer.js

'use strict';
const redisSMQ = require('redis-smq');
const Consumer = redisSMQ.Consumer;
class TestQueueConsumer extends Consumer {
    /**
     *
     * @param message
     * @param cb
     */
    consume(message, cb) {
        cb(new Error('test error'));
    }
}
TestQueueConsumer.queueName = 'test_queue';
const consumer = new TestQueueConsumer();
consumer.run();

Producers:

// Save this script to producers.js

'use strict';
const Producer = require('redis-smq').Producer;

/**
 *
 * @param producer
 * @param message
 * @param n
 * @param cb
 */
function produceNTimes(producer, message, n, cb) {
    n -= 1;
    if (n >= 0) {
        message.sequenceId = n;
        producer.produce(message, (err) => {
            if (err) cb(err);
            else produceNTimes(producer, message, n, cb);
        });
    } else cb();
}

const producer1 = new Producer('test_queue');
produceNTimes(producer1, { from: 'test_queue', hello: 'world' }, 100, (err) => {
    if (err) throw err;
    else {
        console.log('Produced successfully!');
        producer1.shutdown();
    }
});

const producer2 = new Producer('hello_queue');
produceNTimes(producer2, { from: 'hello_queue', hello: 'world' }, 100, (err) => {
    if (err) throw err;
    else {
        console.log('Produced successfully!');
        producer2.shutdown();
    }
});

package.json

{
  "name": "redis-smq-example",
  "author": "Weyoss <[email protected]>",
  "license": "MIT",
  "private": true,
  "dependencies": {
    "redis": "2.7.1",
    "redis-smq": "1.0.x"
  }
}

Save hello-queue-consumer.js, test-queue-consumer.js, producers.js and package.json in some folder in your disk then run:

Open a console, go to the path of your folder and run:

npm install
node test-queue-consumer.js

In another console run:

node hello-queue-consumer.js

In another console run:

node producers.js

Wait for some time until the messages are produced and consumed then open a console and run:

testuser@vnode587:~/projects/test$ redis-cli
127.0.0.1:6379> scan 0
1) "0"
2) 1) "redis-smq-default|@6.2"
   2) "redis-smq-default|@2.1"
   3) "redis-smq-default|@3.1|test_queue"
   4) "redis-smq-default|@1.3|hello_queue"
   5) "redis-smq-default|@6.3"
   6) "redis-smq-default|@3.1|hello_queue"
   7) "redis-smq-default|@6.1"
   8) "redis-smq-default|@1.3|test_queue"
127.0.0.1:6379> llen redis-smq-default|@1.3|hello_queue
(integer) 100
127.0.0.1:6379> llen redis-smq-default|@1.3|test_queue
(integer) 100
127.0.0.1:6379> lrange redis-smq-default|@1.3|hello_queue 0 99
  1) "{\"uuid\":\"28fabff6-b238-4f99-995b-3d4aea247fdd\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":0},\"time\":1524755318844,\"ttl\":0,\"error\":{}}"
  2) "{\"uuid\":\"34c53cc1-b9c2-4162-b1cb-e380b80408af\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":1},\"time\":1524755318844,\"ttl\":0,\"error\":{}}"
  3) "{\"uuid\":\"130ae3d2-d377-43a0-93d3-43317716ed9e\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":2},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  4) "{\"uuid\":\"2fcb40e6-8b07-4a09-b6ea-d76ab71d63bb\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":3},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  5) "{\"uuid\":\"ea8b7d57-f15a-4c37-b0ac-016ac8e1f600\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":4},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  6) "{\"uuid\":\"319dae8d-5940-445b-90af-65b1634c1226\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":5},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  7) "{\"uuid\":\"24ccba92-cb41-48d9-b2f1-74ef8bb68e81\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":6},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  8) "{\"uuid\":\"c30222a4-6bad-47b6-939d-694792d2db47\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":7},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  9) "{\"uuid\":\"2404f995-1126-444f-a4d5-7ce24ce2bafb\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":8},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 10) "{\"uuid\":\"a3b4c981-e1d0-49d6-8f3b-20b93f69e9e4\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":9},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 11) "{\"uuid\":\"202075c0-63fd-4237-b154-6adabebd4da4\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":10},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 12) "{\"uuid\":\"8b221bb0-f31b-453e-8e51-26be6ca29a55\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":11},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 13) "{\"uuid\":\"b0aa313f-8250-41f7-b174-1290b37bf5ae\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":12},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 14) "{\"uuid\":\"148b4cf1-6fea-4929-aed4-28bea7ecbb49\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":13},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 15) "{\"uuid\":\"6bd9984a-53e0-4a06-bf3d-b48430b97f5f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":14},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 16) "{\"uuid\":\"22fddb18-45e4-4a41-a991-a274d34c3e05\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":15},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 17) "{\"uuid\":\"ab30319e-e0ac-47d7-b583-6e90a3a8a655\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":16},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 18) "{\"uuid\":\"8c0ee7bd-4b7c-4e0a-8205-8ea8ac9bf7f0\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":17},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 19) "{\"uuid\":\"29b59705-a006-4c33-aa31-1dbe9d2cd9ab\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":18},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 20) "{\"uuid\":\"01740d91-f77c-4867-9369-029eeba2e0f4\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":19},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 21) "{\"uuid\":\"c68958a3-7905-4e9f-9a65-14875f4a7aa7\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":20},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 22) "{\"uuid\":\"df61e3b2-add0-4a42-ab4d-9291fe87103b\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":21},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 23) "{\"uuid\":\"d9f5e287-bb55-41c5-9edd-9357ad0d0087\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":22},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 24) "{\"uuid\":\"5962817c-a18e-414f-b8de-0e80452b827d\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":23},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 25) "{\"uuid\":\"ebe81bd4-3919-4d84-841f-41e52daefaca\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":24},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 26) "{\"uuid\":\"17c719a6-dcb3-4b07-b45d-24d1b5c7b8e8\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":25},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 27) "{\"uuid\":\"d5cfc1aa-9d98-42b8-a976-2562b4132575\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":26},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 28) "{\"uuid\":\"7d870a54-e027-4efe-9a4c-fdcf8d491816\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":27},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 29) "{\"uuid\":\"f4d437c7-9567-482d-aa04-a624297a0301\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":28},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 30) "{\"uuid\":\"addbb3d6-810e-47e4-a13e-72a66db9f4e0\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":29},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 31) "{\"uuid\":\"e8d133ab-6f26-4e20-9d87-672f5104e839\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":30},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 32) "{\"uuid\":\"1d99702c-e175-4a7f-809c-9005ef5cf03d\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":31},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 33) "{\"uuid\":\"f45f261a-7b90-4592-ae99-8a66ff9f31ad\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":32},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 34) "{\"uuid\":\"cdd39ccc-1b9c-43b7-855f-b0e5ddeaa038\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":33},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 35) "{\"uuid\":\"77a19ca3-92e9-4981-9cb6-b685f87c0e70\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":34},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 36) "{\"uuid\":\"5a515a0d-8e7c-499c-a8db-a79e486580c5\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":35},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 37) "{\"uuid\":\"7882d45c-12c3-4eeb-ac1f-4bfcd0598aa7\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":36},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 38) "{\"uuid\":\"67e64b03-7028-43db-94a3-efbf6440a0c1\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":37},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 39) "{\"uuid\":\"dbf8a0f9-2976-486c-a39b-f6521c52b3e8\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":38},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 40) "{\"uuid\":\"948fc389-6d57-449b-92f9-84715f578519\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":39},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 41) "{\"uuid\":\"eaa97122-87ba-458f-abcd-e188c7bd4e73\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":40},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 42) "{\"uuid\":\"dce3a598-8846-4778-8947-b94e9188fcd2\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":41},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 43) "{\"uuid\":\"44d0edb0-d0cc-4463-95ec-b9e1cf6bd25f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":42},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 44) "{\"uuid\":\"5fbd144f-8c21-412a-83ae-4b54cc1642d9\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":43},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 45) "{\"uuid\":\"e7564423-b675-40eb-9000-5ad589f2e6da\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":44},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 46) "{\"uuid\":\"311bb704-cefe-4d12-9e1c-185824573849\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":45},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 47) "{\"uuid\":\"74d09ce3-0052-42dc-b925-eb400d6b014a\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":46},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 48) "{\"uuid\":\"84502f5b-d95e-46b4-a1ab-a4654032d862\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":47},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 49) "{\"uuid\":\"793f512c-1a0f-4ce8-8c3e-1ef78bdf3fcc\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":48},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 50) "{\"uuid\":\"ba315981-cf08-41e7-a8ea-e6d37d684bf0\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":49},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 51) "{\"uuid\":\"7aaefbb9-26c1-4186-b9f1-371d6a571621\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":50},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 52) "{\"uuid\":\"0d33f7d8-4cd0-4cd2-bb5f-725ace8a77f5\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":51},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 53) "{\"uuid\":\"771138f6-dcea-48d6-80d6-63ca38540cb3\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":52},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 54) "{\"uuid\":\"066587d6-a8af-4b75-b3ab-3d80044b7395\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":53},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 55) "{\"uuid\":\"609a6c92-b02e-4880-b765-456f44c40445\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":54},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 56) "{\"uuid\":\"cb75e582-0bac-4bb5-84e3-3295f3bbf5e6\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":55},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 57) "{\"uuid\":\"337b4f85-7b72-4c8a-9f04-9e57562e2d02\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":56},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 58) "{\"uuid\":\"d4e58d8d-21b9-488b-b135-2509986f1f00\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":57},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 59) "{\"uuid\":\"f9b6e440-077c-49c5-9f37-a70e171128cb\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":58},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 60) "{\"uuid\":\"a53397df-51a6-4043-97d7-8d92199d8c61\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":59},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 61) "{\"uuid\":\"8d34d807-c122-4d4a-848c-f00e62f6264b\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":60},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 62) "{\"uuid\":\"9658fe95-5722-4b5c-88c7-381ac5815281\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":61},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 63) "{\"uuid\":\"befa5bb2-d34a-4418-8a00-44dec8080efa\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":62},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 64) "{\"uuid\":\"3c508894-efff-4fd2-8cc2-c2c9edf6badf\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":63},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 65) "{\"uuid\":\"9523282f-70e2-447b-97cc-ed92dd19b131\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":64},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 66) "{\"uuid\":\"4d7a439a-c9d9-4a5a-88b9-e2f4c022910f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":65},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 67) "{\"uuid\":\"f0e115b8-2aa7-4b93-871a-faa2e5a779da\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":66},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 68) "{\"uuid\":\"3b4ee4e4-be55-454b-9d3d-5e427901e161\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":67},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 69) "{\"uuid\":\"9bd4e43a-6270-4860-b9dd-3771ed63e0aa\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":68},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 70) "{\"uuid\":\"10bba2eb-ade4-4127-a9ff-cff07c1046bf\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":69},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 71) "{\"uuid\":\"0fce6942-fcde-4966-be4b-4c005e8eefa6\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":70},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 72) "{\"uuid\":\"c0f9db79-8e23-462d-9fb8-a48ea55aad0f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":71},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 73) "{\"uuid\":\"1b27ea32-a3aa-407f-a8ff-0cfed4bc2699\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":72},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 74) "{\"uuid\":\"1795cf30-fa72-4822-9b54-5cf7f90f3dd8\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":73},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 75) "{\"uuid\":\"b9941a24-abd3-407e-b082-7cf7bbb57c7d\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":74},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 76) "{\"uuid\":\"5d18cfbe-a374-4ac4-a428-7283d45fc7e5\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":75},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 77) "{\"uuid\":\"bcb958fe-daba-475b-bc72-91c9a2c27b5f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":76},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 78) "{\"uuid\":\"7a6833f1-b2a2-41ab-99a2-4d2459fc747b\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":77},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 79) "{\"uuid\":\"e0440a1c-69eb-407c-8225-a162adffcb35\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":78},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 80) "{\"uuid\":\"ffda6049-ae0d-49a7-a6b5-b8338e07d787\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":79},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 81) "{\"uuid\":\"9eeeb42d-bc78-4d67-a952-775634d758d4\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":80},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 82) "{\"uuid\":\"b69206f2-62cb-4a7e-9096-8e07921611d8\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":81},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 83) "{\"uuid\":\"76a16f91-3c21-4eee-816c-3fd3c66293a1\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":82},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 84) "{\"uuid\":\"1e4b4bd4-c242-4306-be81-d41749dd4f40\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":83},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 85) "{\"uuid\":\"412d3654-eac9-4aa1-8ed8-e7c3a7b6d5c5\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":84},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 86) "{\"uuid\":\"45d0ea94-deb3-4922-a0f6-b36828622459\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":85},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 87) "{\"uuid\":\"b20acddb-2cb1-408f-9aac-c0e0900436c2\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":86},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 88) "{\"uuid\":\"db88b018-2ade-4047-b3e9-2091a573e6e3\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":87},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 89) "{\"uuid\":\"26e3aaee-9e49-41a3-b506-407e499de911\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":88},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 90) "{\"uuid\":\"f44151b5-1aa6-4545-a31d-665510faa447\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":89},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 91) "{\"uuid\":\"31e156bf-46c4-43d6-9a1f-2cebae0c523f\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":90},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 92) "{\"uuid\":\"6f8ab4ed-10e3-4565-8de0-b6c1b3083f1a\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":91},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 93) "{\"uuid\":\"af72ff12-21fa-4a01-9ff6-c07c029f3095\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":92},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 94) "{\"uuid\":\"b3e4676e-7e51-4588-94cf-709ad4a1c3a5\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":93},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 95) "{\"uuid\":\"8c5e23e1-bb67-4756-ac70-65244c47d76a\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":94},\"time\":1524755318827,\"ttl\":0,\"error\":{}}"
 96) "{\"uuid\":\"7d784f9a-4adf-4f0a-a1fa-fdd4c11ef39d\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":95},\"time\":1524755318825,\"ttl\":0,\"error\":{}}"
 97) "{\"uuid\":\"48c5bbba-0708-4a48-9f39-d6b1a3766ca9\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":96},\"time\":1524755318823,\"ttl\":0,\"error\":{}}"
 98) "{\"uuid\":\"39328528-2db7-4a72-bd36-7a5e939a9ad9\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":97},\"time\":1524755318822,\"ttl\":0,\"error\":{}}"
 99) "{\"uuid\":\"c57d3b69-4514-43ed-a957-43a7f4f2b843\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":98},\"time\":1524755318820,\"ttl\":0,\"error\":{}}"
100) "{\"uuid\":\"ec5ac10a-c30e-4299-b9db-4729972512c1\",\"attempts\":4,\"data\":{\"from\":\"hello_queue\",\"hello\":\"world\",\"sequenceId\":99},\"time\":1524755318807,\"ttl\":0,\"error\":{}}"
127.0.0.1:6379> lrange redis-smq-default|@1.3|test_queue 0 99
  1) "{\"uuid\":\"af18595c-98a5-4686-bb74-4ea5f5063ae7\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":0},\"time\":1524755318846,\"ttl\":0,\"error\":{}}"
  2) "{\"uuid\":\"1e06059e-b73d-4fd2-b10b-d8b4a26c726b\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":1},\"time\":1524755318846,\"ttl\":0,\"error\":{}}"
  3) "{\"uuid\":\"d12c3c40-408d-4ade-b633-6eab48f0cf39\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":2},\"time\":1524755318845,\"ttl\":0,\"error\":{}}"
  4) "{\"uuid\":\"7cfa5860-fb9d-4b2f-8030-ec41e07c7299\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":3},\"time\":1524755318845,\"ttl\":0,\"error\":{}}"
  5) "{\"uuid\":\"08285ad2-504e-49c9-9bfb-f100dceca017\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":4},\"time\":1524755318845,\"ttl\":0,\"error\":{}}"
  6) "{\"uuid\":\"f07fb5e8-00a9-43aa-8e4f-90039db95e19\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":5},\"time\":1524755318844,\"ttl\":0,\"error\":{}}"
  7) "{\"uuid\":\"c1cd505b-09d2-48ae-840f-8ff97b6233e9\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":6},\"time\":1524755318844,\"ttl\":0,\"error\":{}}"
  8) "{\"uuid\":\"3c35921c-326f-4509-b6cd-e703afd375f0\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":7},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
  9) "{\"uuid\":\"8c5a53c8-30e8-4744-9f23-c582f97c870f\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":8},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
 10) "{\"uuid\":\"7e888092-c4ab-424c-aaad-33feff6365e5\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":9},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
 11) "{\"uuid\":\"5f559530-dec1-46fb-b209-775b9ab36d21\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":10},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
 12) "{\"uuid\":\"cbd65c17-e95a-4177-9066-6d3d258ba6f2\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":11},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
 13) "{\"uuid\":\"fdf58501-52cf-4ede-9237-acdc7be8b658\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":12},\"time\":1524755318843,\"ttl\":0,\"error\":{}}"
 14) "{\"uuid\":\"5dda1f07-54ea-488d-ac52-74600a4086e3\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":13},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 15) "{\"uuid\":\"a47747cf-f5f4-40a8-a570-68f0ca0c1a95\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":14},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 16) "{\"uuid\":\"5f35b3b3-8b62-4e6e-87f5-b63d3e652330\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":15},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 17) "{\"uuid\":\"3c88d3c6-f11b-4017-aa89-96cf2388634b\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":16},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 18) "{\"uuid\":\"37eb250f-5561-4e7b-ae53-bf3adda3aa57\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":17},\"time\":1524755318842,\"ttl\":0,\"error\":{}}"
 19) "{\"uuid\":\"2396f797-2ee2-4c6b-96ef-6e9813145bf2\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":18},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 20) "{\"uuid\":\"111e2341-f539-4e06-af1b-1fee19d978e6\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":19},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 21) "{\"uuid\":\"73e0d0ab-edc9-42f6-9878-4291efd4f43d\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":20},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 22) "{\"uuid\":\"f8faf6f8-47df-4525-ac69-326df744099e\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":21},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 23) "{\"uuid\":\"c1448c39-e14d-4485-ad56-23a5ce51da8a\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":22},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 24) "{\"uuid\":\"ed1ac9de-e312-4fe8-b06f-238f15b714b4\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":23},\"time\":1524755318841,\"ttl\":0,\"error\":{}}"
 25) "{\"uuid\":\"1e485f17-2e66-49f8-848c-7bf814fae73c\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":24},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 26) "{\"uuid\":\"2cb92540-67ce-4a1f-912a-6a5cb3b56492\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":25},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 27) "{\"uuid\":\"1e0579cd-9d95-492e-8636-c8b0c0be50d7\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":26},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 28) "{\"uuid\":\"da387a82-ca15-4c15-9d19-c8376d94ea98\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":27},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 29) "{\"uuid\":\"e49386a3-d8d5-4e10-aac3-8ad649ea0d04\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":28},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 30) "{\"uuid\":\"f4684105-39e9-40e7-aa7e-207f81d53897\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":29},\"time\":1524755318840,\"ttl\":0,\"error\":{}}"
 31) "{\"uuid\":\"1bcf7f09-1738-41c3-9ade-64cc14b5d0b3\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":30},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 32) "{\"uuid\":\"d2bd7333-8066-4dda-b30d-916ce8d94620\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":31},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 33) "{\"uuid\":\"b6acb40d-9390-4aec-b09c-15a786428074\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":32},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 34) "{\"uuid\":\"72b2b2f2-ebb6-4165-8dfe-0bb9855ce773\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":33},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 35) "{\"uuid\":\"335ae77a-0fa6-4867-b4be-520355d28277\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":34},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 36) "{\"uuid\":\"0d921e22-e2de-4c53-bcac-cbd5de69a829\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":35},\"time\":1524755318839,\"ttl\":0,\"error\":{}}"
 37) "{\"uuid\":\"f69f9eac-a618-4e7d-9935-a86ebe0e3ca2\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":36},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 38) "{\"uuid\":\"cf2631fc-6f36-41c1-964e-e64072a6539d\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":37},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 39) "{\"uuid\":\"c3acbfbb-731f-466c-9890-5a61a8ea2a6d\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":38},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 40) "{\"uuid\":\"9e571edd-537c-466d-a986-3f0e398468e6\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":39},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 41) "{\"uuid\":\"36867eaa-f6f8-4c68-9a69-5e78010a5e77\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":40},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 42) "{\"uuid\":\"49be9903-9e8a-41c5-9d49-5df4ae70523e\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":41},\"time\":1524755318838,\"ttl\":0,\"error\":{}}"
 43) "{\"uuid\":\"ee871fef-c7da-495e-94da-1f65993912f8\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":42},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 44) "{\"uuid\":\"ddd7d741-0fae-43de-9ed9-b89f0cc85f91\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":43},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 45) "{\"uuid\":\"92b40c89-a4bf-481a-8bb7-ebf17ecb8467\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":44},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 46) "{\"uuid\":\"a2a3f7d3-0346-49cb-ad41-1264abb00ad3\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":45},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 47) "{\"uuid\":\"86f0514d-1069-416b-9012-68d4c4f1dc42\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":46},\"time\":1524755318837,\"ttl\":0,\"error\":{}}"
 48) "{\"uuid\":\"9a869aca-bfd1-4898-b8e8-b1fa4ce670d0\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":47},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 49) "{\"uuid\":\"eedbe07a-0e28-48b3-a4df-887431b1f798\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":48},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 50) "{\"uuid\":\"df6fb4a2-69a0-4390-8932-39b8d0f90155\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":49},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 51) "{\"uuid\":\"4c6d1213-a0e6-4174-bac1-e728f3809e14\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":50},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 52) "{\"uuid\":\"778e0356-3267-423c-b7b2-a0b416b63cba\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":51},\"time\":1524755318836,\"ttl\":0,\"error\":{}}"
 53) "{\"uuid\":\"b91ff7ab-6877-4471-ad02-17524f6a53d8\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":52},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 54) "{\"uuid\":\"f2e6d58b-72e7-4ac6-af2b-19209117aaed\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":53},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 55) "{\"uuid\":\"eaaa8842-2907-4377-9ba5-1d8205db5690\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":54},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 56) "{\"uuid\":\"9d8f766c-8604-4a8e-878e-2704e09c5b22\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":55},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 57) "{\"uuid\":\"4d45bf0c-299b-495b-9872-2bc00e2d2ecd\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":56},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 58) "{\"uuid\":\"e6db6e48-d815-4cb2-8ffc-2d3379ca67f0\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":57},\"time\":1524755318835,\"ttl\":0,\"error\":{}}"
 59) "{\"uuid\":\"dfb17baa-b6f0-4d55-bd3d-9c5fb931409d\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":58},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 60) "{\"uuid\":\"04622671-fcac-4fa1-a173-42023d2652c5\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":59},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 61) "{\"uuid\":\"e21aefd8-1514-4a87-be3d-a5f1d1e060de\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":60},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 62) "{\"uuid\":\"482df116-64b2-4338-a342-a3db3e536419\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":61},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 63) "{\"uuid\":\"e270e563-b547-47a2-a6bf-b4400c71af68\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":62},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 64) "{\"uuid\":\"2cb7cb63-f3ef-4b3e-87f9-d1b9ee05a634\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":63},\"time\":1524755318834,\"ttl\":0,\"error\":{}}"
 65) "{\"uuid\":\"6b483977-f78c-4095-9f09-56933af85c12\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":64},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 66) "{\"uuid\":\"c4db9b7b-118c-4e67-b69b-8a09ffbd9d34\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":65},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 67) "{\"uuid\":\"aa6c67cd-2c92-4fa8-aba1-ca39fd745b4a\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":66},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 68) "{\"uuid\":\"e54ae30b-a0b8-425e-9f44-c5c67ff1582a\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":67},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 69) "{\"uuid\":\"034640c9-4430-4b67-8396-e6e65b0d166f\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":68},\"time\":1524755318833,\"ttl\":0,\"error\":{}}"
 70) "{\"uuid\":\"52837248-7b9a-4ef2-b574-9bed1572708c\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":69},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 71) "{\"uuid\":\"432073e1-7dd9-4bf3-947c-f62e33f1596f\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":70},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 72) "{\"uuid\":\"4c50b604-54d0-4d24-bc5d-0eff679e7e96\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":71},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 73) "{\"uuid\":\"7120892a-34e4-4111-a21a-4e6d1f5ed1aa\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":72},\"time\":1524755318832,\"ttl\":0,\"error\":{}}"
 74) "{\"uuid\":\"b3e67c86-bc1b-4e1b-9fab-944389756ba8\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":73},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 75) "{\"uuid\":\"0c5a782e-7783-4932-9474-2fd12c8a39cf\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":74},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 76) "{\"uuid\":\"4ece9969-5ba0-4ab4-a327-6e4473085157\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":75},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 77) "{\"uuid\":\"3a9358a9-d6c9-4f82-88f9-59aa0a06577b\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":76},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 78) "{\"uuid\":\"3453e9b2-f10b-4d57-9a5f-d6790f5e3278\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":77},\"time\":1524755318831,\"ttl\":0,\"error\":{}}"
 79) "{\"uuid\":\"e177c29c-ac07-4e45-a652-08f8d789b7d8\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":78},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 80) "{\"uuid\":\"fd70630c-0b9b-45df-8b77-bbeaf2804151\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":79},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 81) "{\"uuid\":\"73bd5f45-c863-4639-ac0c-32317f470f75\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":80},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 82) "{\"uuid\":\"93c96f23-9013-4198-b929-c83fec10b03c\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":81},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 83) "{\"uuid\":\"26f677d1-4cb6-46db-9bca-200ee01ba3b1\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":82},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 84) "{\"uuid\":\"2a89c129-884e-4acd-b89c-2776d8d97f71\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":83},\"time\":1524755318830,\"ttl\":0,\"error\":{}}"
 85) "{\"uuid\":\"34d7249d-9f0a-4395-93c2-c858f3516bbd\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":84},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 86) "{\"uuid\":\"fb225e1b-f576-4f1f-afd0-1bfe282971ff\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":85},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 87) "{\"uuid\":\"e35ab7c8-28a0-491d-83da-a130c5f0d8d8\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":86},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 88) "{\"uuid\":\"f40d696a-bc23-4ab4-8e1e-04eafa738245\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":87},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 89) "{\"uuid\":\"17e7ae8b-ae8a-497c-bbe2-d430f2843776\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":88},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 90) "{\"uuid\":\"ab8944a4-714a-47cc-ab9f-2209e29075db\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":89},\"time\":1524755318829,\"ttl\":0,\"error\":{}}"
 91) "{\"uuid\":\"a816a369-203d-401c-8e23-6b8aaa5609af\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":90},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 92) "{\"uuid\":\"4c8f01fd-991f-41c7-ad3c-07bbde984f9a\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":91},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 93) "{\"uuid\":\"8f687d71-b300-4549-9f6b-c2d4014cc1e5\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":92},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 94) "{\"uuid\":\"8c4c42f6-7bde-4568-a28e-723d83aaf57f\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":93},\"time\":1524755318828,\"ttl\":0,\"error\":{}}"
 95) "{\"uuid\":\"e5fac973-9aa6-4910-9dda-147770255e56\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":94},\"time\":1524755318826,\"ttl\":0,\"error\":{}}"
 96) "{\"uuid\":\"3a604b56-a2df-48dc-875b-ed717350427b\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":95},\"time\":1524755318824,\"ttl\":0,\"error\":{}}"
 97) "{\"uuid\":\"78518ed0-5311-4011-a913-c73ac987f0ec\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":96},\"time\":1524755318822,\"ttl\":0,\"error\":{}}"
 98) "{\"uuid\":\"6c775841-92d5-4fec-ae23-6ff4b42a0b29\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":97},\"time\":1524755318821,\"ttl\":0,\"error\":{}}"
 99) "{\"uuid\":\"e42c9250-cb40-4a36-b34c-520f54b7dfe2\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":98},\"time\":1524755318819,\"ttl\":0,\"error\":{}}"
100) "{\"uuid\":\"66d6db67-fc36-4308-acba-43a017bdb87a\",\"attempts\":4,\"data\":{\"from\":\"test_queue\",\"hello\":\"world\",\"sequenceId\":99},\"time\":1524755318807,\"ttl\":0,\"error\":{}}"
127.0.0.1:6379> 

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024

You're very clear about it. I can understand。I have not express oneself clearly in english. Demo is good idea.

So in my case:

2 queues [Q1, Q2].
2 DL queues [DLQ1] for Q1 and [DLQ2] for Q2.
Each queue has one producer: [P1] for Q1 and [P2] for Q2
Each queue has one consumer: [C1.1] for Q1 and [C2.1] for Q2

Then:

  1. Producer P1 produced a message M1 to the queue Q1.
  2. The consumer C1.1 takes this time the message M1.
  3. C1.1 calling cb(err);
  4. In most cases M1 is requeue to Q1, but some times M1 requeue to Q2.

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

I have no idea about what is going on in your project but be sure that if you have something to blame it is not the message queue but your project's source code.
Debugging is your best friend.
Good luck!

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024

Thanks for your care.

Producer produced the message to queue is OK. It occurs in requeue.

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024

Thanks alot for your help. I can try to debuging.

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

Closing as resolved.

from redis-smq.

weyoss avatar weyoss commented on August 17, 2024

If you still having this issue or anything similar please feel free to reopen it.

from redis-smq.

JohnLou avatar JohnLou commented on August 17, 2024

Great job.

Thanks!

from redis-smq.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.