From be0f07aae090e41cc97879a85830743a445f5292 Mon Sep 17 00:00:00 2001 From: yxd92326 Date: Fri, 29 May 2026 16:28:07 +0100 Subject: [PATCH] Turn all nacks to requeue False --- src/murfey/server/feedback.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/murfey/server/feedback.py b/src/murfey/server/feedback.py index c6331b829..6765951c9 100644 --- a/src/murfey/server/feedback.py +++ b/src/murfey/server/feedback.py @@ -2113,7 +2113,9 @@ def feedback_callback(header: dict, message: dict, _db=murfey_db) -> None: if bfactors_registered: murfey.server._transport_object.transport.ack(header) else: - murfey.server._transport_object.transport.nack(header) + murfey.server._transport_object.transport.nack( + header, requeue=False + ) return None elif message["register"] == "done_bfactor": _save_bfactor(message, _db) @@ -2144,8 +2146,8 @@ def feedback_callback(header: dict, message: dict, _db=murfey_db) -> None: else: # Send it directly to DLQ without trying to rerun it murfey.server._transport_object.transport.nack( - header, requeue=result.get("requeue", False) - ) + header, requeue=False + ) # should be result.get("requeue", False) if not result: logger.error( f"Workflow {sanitise(message['register'])} returned {result}" @@ -2160,18 +2162,24 @@ def feedback_callback(header: dict, message: dict, _db=murfey_db) -> None: _db.close() logger.warning("Murfey database required a rollback") if murfey.server._transport_object: - murfey.server._transport_object.transport.nack(header, requeue=True) + murfey.server._transport_object.transport.nack( + header, requeue=False + ) # should be True except OperationalError: logger.warning("Murfey database error encountered", exc_info=True) time.sleep(1) if murfey.server._transport_object: - murfey.server._transport_object.transport.nack(header, requeue=True) + murfey.server._transport_object.transport.nack( + header, requeue=False + ) # should be True except NoResultFound: # Missing rows might be due to a race condition and should be requeued logger.warning("No matching database row was found", exc_info=True) time.sleep(1) if murfey.server._transport_object: - murfey.server._transport_object.transport.nack(header, requeue=True) + murfey.server._transport_object.transport.nack( + header, requeue=False + ) # should be True except Exception: logger.warning( "Exception encountered in server RabbitMQ callback", exc_info=True