[prev in list] [next in list] [prev in thread] [next in thread]
List: prelude-cvslog
Subject: [prelude-cvslog] r9848 - libprelude/trunk/src
From: noreply () prelude-ids ! org
Date: 2007-08-23 16:05:46
Message-ID: 20070823160546.84A39E18857 () mail ! prelude-ids ! org
[Download RAW message or body]
Author: yoann
Date: 2007-08-23 18:05:45 +0200 (Thu, 23 Aug 2007)
New Revision: 9848
Modified:
libprelude/trunk/src/prelude-connection-pool.c
Log:
Improved failover reporting. Check FD_SETSIZE in connection_pool_check_event().
Modified: libprelude/trunk/src/prelude-connection-pool.c
===================================================================
--- libprelude/trunk/src/prelude-connection-pool.c 2007-08-23 16:05:18 UTC (rev 9847)
+++ libprelude/trunk/src/prelude-connection-pool.c 2007-08-23 16:05:45 UTC (rev 9848)
@@ -391,12 +391,14 @@
do {
size = prelude_failover_get_saved_msg(failover, &msg);
- if ( size < 0 )
- continue;
-
if ( size == 0 )
break;
+ if ( size < 0 ) {
+ prelude_log(PRELUDE_LOG_ERR, "error reading message from \
failover: %s", prelude_strerror(size)); + break;
+ }
+
if ( clist ) {
broadcast_message(msg, clist->and);
if ( clist->dead )
@@ -420,8 +422,8 @@
} while ( 1 );
- prelude_log(PRELUDE_LOG_WARN, "%s from failover: %u/%u messages flushed (%" \
PRELUDE_PRIu64 " bytes).\n",
- (count == available) ? "Recovered" : "Failed recovering", count, \
available, (uint64_t) totsize); + prelude_log(PRELUDE_LOG_WARN, "Failover \
recovery: %u/%u messages flushed (%" PRELUDE_PRIu64 " bytes).\n", + \
count, available, (uint64_t) totsize);
return ret;
}
@@ -1202,7 +1204,7 @@
{
cnx_t *cnx;
fd_set rfds;
- int ret, i = 0;
+ int ret, i = 0, fd;
prelude_list_t *tmp;
struct timeval tv, *tvptr = NULL;
prelude_connection_pool_event_t global_event = 0;
@@ -1228,7 +1230,10 @@
if ( ! prelude_connection_is_alive(cnx->cnx) )
continue;
- ret = \
FD_ISSET(prelude_io_get_fd(prelude_connection_get_fd(cnx->cnx)), &rfds); + \
fd = prelude_io_get_fd(prelude_connection_get_fd(cnx->cnx)); + \
assert(fd < FD_SETSIZE); +
+ ret = FD_ISSET(fd, &rfds);
if ( ! ret )
continue;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic