Our test code is very simple:
while True:
rec_msg = sb.receive_subscription_message(topic, owner, False)
if rec_msg is not None:
print(rec_msg.body)
else:
print('empty message received')
After ~20 min of working as expected we get this error:
File "/usr/local/lib/python2.7/dist-packages/azure/servicebus/servicebusservice.py", line 652, in receive_subscription_message
return self.read_delete_subscription_message(topic_name, subscription_name, timeout)
File "/usr/local/lib/python2.7/dist-packages/azure/servicebus/servicebusservice.py", line 497, in read_delete_subscription_message
response = self._perform_request(request)
File "/usr/local/lib/python2.7/dist-packages/azure/servicebus/servicebusservice.py", line 707, in _perform_request
return _service_bus_error_handler(e)
File "/usr/local/lib/python2.7/dist-packages/azure/servicebus/init.py", line 695, in _service_bus_error_handler
return _general_error_handler(http_error)
File "/usr/local/lib/python2.7/dist-packages/azure/init.py", line 647, in _general_error_handler
raise WindowsAzureError(_ERROR_UNKNOWN % http_error.message)
azure.WindowsAzureError: Unknown error (40106: Access Control Serivce token supplied for this operation has expired. Retry the operation.)
Is the token renewal the application responsibility? Isn't suppose to mange by the API itself?
Thank you