On 14-Dec-15 1:40 PM, Lennart Lund wrote: > Hi Praveen > > It seems relevant to remove this warning but is anything logged if logging > actually fail? If log service callback is meant here, then there is no return code which confirms logging other than SA_AIS_ERR_TIMEOUT and SA_AIS_OK. Also for SA_AIS_ERR_TIMEOUT, log service spec says "An implementation-dependent timeout occurred before the call could complete. It is unspecified whether the call succeeded or whether it did not." > The error checking seems a bit limited e.g. it is not checked if the error is > TRY AGIN or any other more permanent error. Also is there any mechanism for > giving up retrying? > As of now ntfd maintains the notification for relogging even for the permanent error. For TRY_AGAIN and TIME_OUT, it is consistent with SAF standards (switchover or failover situations) to keep notifications for relogging. Regarding retrying, ntfd is not immediately retrying, it queues the notification and retries to re-log when a new notification comes. I do not know here, why notification has been kept for re-logging for other return codes also. I think ntfd should have exited for other return codes just as it is doing for failure to call saLogWriteLogAsync(). Actually other return codes (except ERR_UNAVAILABLE) represents fatal errors and due to this NTFD if allowed to exit will lead to fail-over by AMF. Thus it will lead to automatic recovery and repair.
Thanks, Praveen > Thanks > Lennart > >> -----Original Message----- >> From: praveen.malv...@oracle.com [mailto:praveen.malv...@oracle.com] >> Sent: den 14 december 2015 08:19 >> To: Vu Minh Nguyen >> Cc: opensaf-devel@lists.sourceforge.net >> Subject: [devel] [PATCH 1 of 1] ntfd: fix syslog warning when queueing >> notification for relogging [1628] >> >> osaf/services/saf/ntfsv/ntfs/NtfLogger.cc | 2 +- >> 1 files changed, 1 insertions(+), 1 deletions(-) >> >> >> syslog is flooded with the following warnings >> Dec 14 12:25:04 SC-1 osafntfd[9377]: WA Error when logging (9), queue for >> relogging >> >> Ntfd logs notifications by calling async api of LOG service. If ntfd gets >> error in >> the >> confirmation callback, it queues up notification for relogging and logs a >> syslog >> warning. >> If LOG service is busy for longer time for example in failover situation, >> then it >> may give >> TRY_AGAIN to ntfd. In such a case syslog warning can be avoided and can be >> logged as trace. >> >> >> Ptach converts warning in a trace irrespective of error code. >> >> diff --git a/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc >> b/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc >> --- a/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc >> +++ b/osaf/services/saf/ntfsv/ntfs/NtfLogger.cc >> @@ -104,7 +104,7 @@ void saLogWriteLogCallback(SaInvocationT >> { >> NtfSmartPtr notification; >> >> - LOG_WA( "Error when logging (%d), queue for relogging", error); >> + TRACE_1( "Error when logging (%d), queue for relogging", error); >> >> notification = NtfAdmin::theNtfAdmin->getNotificationById( >> >> (SaNtfIdentifierT) invocation); >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> Opensaf-devel mailing list >> Opensaf-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/opensaf-devel ------------------------------------------------------------------------------ _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel