- sbuf = rmr.rmr_alloc_msg(self.mrc, len(pay), payload=pay, gen_transaction_id=True, mtype=mtype, sub_id=subid)
- sbuf.contents.sub_id = subid
- pre_send_summary = rmr.message_summary(sbuf)
- mdc_logger.debug("Trying to send message: {}".format(pre_send_summary))
- sbuf = rmr.rmr_send_msg(self.mrc, sbuf) # send
- if self._assert_good_send(sbuf, pre_send_summary):
- rmr.rmr_free_msg(sbuf) # free
- return
+ mdc_logger.debug("_send_msg: sending: {}".format(pre_send_summary))
+ sbuf = rmr.rmr_send_msg(self.mrc, sbuf)
+ msg_state = self._assert_good_send(sbuf, pre_send_summary)
+ mdc_logger.debug("_send_msg: result message state: {}".format(msg_state))
+ if msg_state != rmr.RMR_ERR_RETRY:
+ break