Repost of https://github.com/Azure/azure-sdk-for-python/issues/6731#issuecomment-1028393257
I am testing the retry parameters on ServiceBusClient, it is not clear if/how they work.
Am I doing something wrong, do I not understand how retry works? In below I expect the message would be deliver three times in 30 seconds. Instead is delivered 10 times with about 150 milliseconds between deliveries.
with ServiceBusClient.from_connection_string(
CONNECTION_STRING, retry_total=2, retry_backoff_factor=10
) as client:
with client.get_subscription_receiver(
topic_name="test", subscription_name="andrew_test"
) as receiver:
for message in receiver:
logger.debug(
f"message {message.sequence_number}, delivery count {message.delivery_count}"
)
receiver.abandon_message(message)
result of running the above for one message -
11:08:02.721 DEBUG message 40719, delivery count 0
11:08:02.875 DEBUG message 40719, delivery count 1
11:08:03.029 DEBUG message 40719, delivery count 2
11:08:03.183 DEBUG message 40719, delivery count 3
11:08:03.339 DEBUG message 40719, delivery count 4
11:08:03.644 DEBUG message 40719, delivery count 5
11:08:03.799 DEBUG message 40719, delivery count 6
11:08:03.955 DEBUG message 40719, delivery count 7
11:08:04.111 DEBUG message 40719, delivery count 8
11:08:04.269 DEBUG message 40719, delivery count 9