[devel] [PATCH 1 of 1] log: fix saflogger tool does not handle timeout for write call [#2358]

2017-03-09 Thread Vu Minh Nguyen
 src/log/tools/saf_logger.c |  24 ++--
 1 files changed, 18 insertions(+), 6 deletions(-)


Add retry machanism for all LOG API in saflogger tool
when the APIs return TIME_OUT.

diff --git a/src/log/tools/saf_logger.c b/src/log/tools/saf_logger.c
--- a/src/log/tools/saf_logger.c
+++ b/src/log/tools/saf_logger.c
@@ -143,7 +143,9 @@ static SaAisErrorT write_log_record(SaLo
 
 retry:
errorCode = saLogWriteLogAsync(logStreamHandle, invocation, 
SA_LOG_RECORD_WRITE_ACK, logRecord);
-   if (errorCode == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   if (((errorCode == SA_AIS_ERR_TRY_AGAIN) ||
+(errorCode == SA_AIS_ERR_TIMEOUT))
+   && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
goto retry;
@@ -426,7 +428,9 @@ int main(int argc, char *argv[])
 
wait_time = 0;
error = saLogInitialize(, , );
-   while (error == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   while (((error == SA_AIS_ERR_TRY_AGAIN) ||
+   (error == SA_AIS_ERR_TIMEOUT))
+  && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
error = saLogInitialize(, , );
@@ -451,7 +455,9 @@ int main(int argc, char *argv[])
wait_time = 0;
error = saLogStreamOpen_2(logHandle, , NULL, 0,
SA_TIME_ONE_SECOND, );
-   while (error == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   while (((error == SA_AIS_ERR_TRY_AGAIN) ||
+   (error == SA_AIS_ERR_TIMEOUT))
+  && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
error = saLogStreamOpen_2(logHandle, , NULL, 0,
@@ -462,7 +468,9 @@ int main(int argc, char *argv[])
wait_time = 0;
error = saLogStreamOpen_2(logHandle, , 
logFileCreateAttributes,
logStreamOpenFlags, SA_TIME_ONE_SECOND, 
);
-   while (error == SA_AIS_ERR_TRY_AGAIN && wait_time < 
TEN_SECONDS) {
+   while (((error == SA_AIS_ERR_TRY_AGAIN) ||
+  (error == SA_AIS_ERR_TIMEOUT))
+  && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
error = saLogStreamOpen_2(logHandle, , 
logFileCreateAttributes,
@@ -483,7 +491,9 @@ int main(int argc, char *argv[])
 
wait_time = 0;
error = saLogStreamClose(logStreamHandle);
-   while (error == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   while (((error == SA_AIS_ERR_TRY_AGAIN) ||
+   (error == SA_AIS_ERR_TIMEOUT))
+  && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
error = saLogStreamClose(logStreamHandle);
@@ -498,7 +508,9 @@ int main(int argc, char *argv[])
 
wait_time = 0;
error = saLogFinalize(logHandle);
-   while (error == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   while (((error == SA_AIS_ERR_TRY_AGAIN) ||
+  (error == SA_AIS_ERR_TIMEOUT))
+   && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
error = saLogFinalize(logHandle);

--
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
___
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel


[devel] [PATCH 1 of 1] log: fix saflogger tool does not handle timeout for write call [#2358]

2017-03-09 Thread Vu Minh Nguyen
 src/log/tools/saf_logger.c |  4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)


Add retry machanism when saLogWriteLogAsync() returns TIME_OUT.

diff --git a/src/log/tools/saf_logger.c b/src/log/tools/saf_logger.c
--- a/src/log/tools/saf_logger.c
+++ b/src/log/tools/saf_logger.c
@@ -143,7 +143,9 @@ static SaAisErrorT write_log_record(SaLo
 
 retry:
errorCode = saLogWriteLogAsync(logStreamHandle, invocation, 
SA_LOG_RECORD_WRITE_ACK, logRecord);
-   if (errorCode == SA_AIS_ERR_TRY_AGAIN && wait_time < TEN_SECONDS) {
+   if (((errorCode == SA_AIS_ERR_TRY_AGAIN) ||
+(errorCode == SA_AIS_ERR_TIMEOUT))
+   && wait_time < TEN_SECONDS) {
usleep(HUNDRED_MS);
wait_time += HUNDRED_MS;
goto retry;

--
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
___
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel