Google PubSub server not resending messages after acknowledgment deadline, which is 10 seconds
Here I am acknowledging after 50 seconds but have not received any resent messages. But will get after restarts the subscriber.
Subscriber subscriber = null;
ProjectSubscriptionName subscriptionName = ProjectSubscriptionName.of(projectIdArg,
subscriptionNameArg);
try {
MessageReceiver receiver =
(PubsubMessage message, AckReplyConsumer consumer) -> {
int i=0;
while(i<=50){
try {
Thread.sleep(1000);
System.out.println(i+" : message id : "+messageId);
i++;
} catch (InterruptedException e) {
e.printStackTrace();
}
}
consumer.ack();
};
ExecutorProvider executorProvider = InstantiatingExecutorProvider
.newBuilder()
.setExecutorThreadCount(5)
.build();
subscriber = Subscriber
.newBuilder(subscriptionName, receiver)
.setParallelPullCount(1)
.setExecutorProvider(executorProvider)
.build();
subscriber.startAsync().awaitRunning();
subscriber.awaitTerminated();
} catch (Exception e) {
log.error("Error in Subscribing Queue. " + e);
if (subscriber != null) {
subscriber.stopAsync().awaitTerminated();
}
}