Environment details
- OS: macOS 10.13.4 (High Sierra)
- Node.js version: 9.11.1
- npm version: 5.6.0
@google-cloud/pubsub version: 0.18.0
Steps to reproduce
- Create a subscriber and topic
- Send a message to the topic
- Use v1's pull method
- modifyAckDeadline of a single message
- ack said message a couple seconds later
I'm using Pub/Sub for processes that normally take a couple minutes, but can sometimes extend to 30+ mins. Here's a second by second look at what my little test setup does.
0:00 - pulldown 1 message from subscription with 20 second deadline (or 600 seconds, same result)
0:05 - modifyAckDeadline by 20 seconds
0:15 - ack message; then pull down the same message from the queue
I decided to try this with two instances pulling down messages. After sending one message, as soon as I would modifyAckDeadline on the instance that got the message, the other instance would pull down the message and start the same process.
Eventually, an ack finally sticks and the message goes away.
So it seems that modifyAckDeadline is creating a duplicate message.
Environment details
@google-cloud/pubsubversion: 0.18.0Steps to reproduce
I'm using Pub/Sub for processes that normally take a couple minutes, but can sometimes extend to 30+ mins. Here's a second by second look at what my little test setup does.
0:00 - pulldown 1 message from subscription with 20 second deadline (or 600 seconds, same result)
0:05 - modifyAckDeadline by 20 seconds
0:15 - ack message; then pull down the same message from the queue
I decided to try this with two instances pulling down messages. After sending one message, as soon as I would modifyAckDeadline on the instance that got the message, the other instance would pull down the message and start the same process.
Eventually, an ack finally sticks and the message goes away.
So it seems that modifyAckDeadline is creating a duplicate message.