This logic causes messages that follow back-to-back to be dropped:
|
# Further, unconditionally drop all messages while publishing is in progress for the same reason. |
|
# This logic may need to be reviewed later. |
|
if self._fut is not None and self._fut.done(): |
|
self._fut.result() |
|
self._fut = None |
|
|
|
dcs_rec = DiagnosticPublisher.log_record_to_diagnostic_message(record, self._forward_timestamp) |
|
if self._fut is None: |
|
self._fut = asyncio.ensure_future(self._publish(dcs_rec)) |
|
else: |
|
# DROPPED |
|
pass |