From b3e5e33f0007ea1c8716b215ac50f78ac6cdb313 Mon Sep 17 00:00:00 2001 From: Stephen Sun Date: Wed, 2 Mar 2022 06:53:45 +0000 Subject: [PATCH] Use abort instead of exit in case calling SAI API failure Signed-off-by: Stephen Sun --- orchagent/orch.cpp | 12 ++++++------ orchagent/orchdaemon.cpp | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/orchagent/orch.cpp b/orchagent/orch.cpp index 0992e329a4..ceca17989b 100644 --- a/orchagent/orch.cpp +++ b/orchagent/orch.cpp @@ -847,7 +847,7 @@ task_process_status Orch::handleSaiCreateStatus(sai_api_t api, sai_status_t stat default: SWSS_LOG_ERROR("Encountered failure in create operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } break; case SAI_API_HOSTIF: @@ -865,7 +865,7 @@ task_process_status Orch::handleSaiCreateStatus(sai_api_t api, sai_status_t stat default: SWSS_LOG_ERROR("Encountered failure in create operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } default: switch (status) @@ -876,7 +876,7 @@ task_process_status Orch::handleSaiCreateStatus(sai_api_t api, sai_status_t stat default: SWSS_LOG_ERROR("Encountered failure in create operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } } return task_need_retry; @@ -917,12 +917,12 @@ task_process_status Orch::handleSaiSetStatus(sai_api_t api, sai_status_t status, default: SWSS_LOG_ERROR("Encountered failure in set operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } default: SWSS_LOG_ERROR("Encountered failure in set operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } return task_need_retry; @@ -950,7 +950,7 @@ task_process_status Orch::handleSaiRemoveStatus(sai_api_t api, sai_status_t stat default: SWSS_LOG_ERROR("Encountered failure in remove operation, exiting orchagent, SAI API: %s, status: %s", sai_serialize_api(api).c_str(), sai_serialize_status(status).c_str()); - exit(EXIT_FAILURE); + abort(); } return task_need_retry; } diff --git a/orchagent/orchdaemon.cpp b/orchagent/orchdaemon.cpp index 0341f69ea9..98dbfb6143 100644 --- a/orchagent/orchdaemon.cpp +++ b/orchagent/orchdaemon.cpp @@ -633,7 +633,7 @@ void OrchDaemon::flush() if (status != SAI_STATUS_SUCCESS) { SWSS_LOG_ERROR("Failed to flush redis pipeline %d", status); - exit(EXIT_FAILURE); + abort(); } // check if logroate is requested