Fixed timeout to be low for connect()
author <brian@localhost.localdomain> <>
Mon, 21 Apr 2008 19:02:17 +0000 (12:02 -0700)
committer <brian@localhost.localdomain> <>
Mon, 21 Apr 2008 19:02:17 +0000 (12:02 -0700)
Updated THANKS file.

ChangeLog
THANKS
libmemcached/memcached_connect.c
libmemcached/memcached_constants.h

index effd1d1339eeb80d825bd8127997cce9b3605ff6..ef18c9fb701a6f22076e84a7f639ceb4d754dab5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,4 @@
+  * Changed default timeout to 1 second for poll timeouts
   * Wheel uses less memory/dynamic allocation for size (no longer limited to
     512 hosts by default.
   * memslap memory leak fix
diff --git a/THANKS b/THANKS
index 35db53395a547f464936e9f82d03207069a054ab..bf6975fa094ca7d89abac0096e420a158531a813 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -9,3 +9,4 @@ Kevin Dalley - Bug Fixes
 Patrick Galbraith - work on C++ interface
 Ross McFarland - Idea for sorting servers.
 Marcelo Fernandez - TCP/IP timeout pieces
+Yin Chen - Ketama support
index 5531ad792d47175439d22c469138dbdb99575872..74469870e1ad94d22d40791737a755f1989b4b64 100644 (file)
@@ -207,7 +207,11 @@ test_connect:
             fds[0].events= POLLOUT |  POLLERR;
             error= poll(fds, 1, ptr->root->connect_timeout);
 
-            if (error != 1)
+            if (error == 0) 
+            {
+              goto handle_retry;
+            }
+            else if (error != 1)
             {
               ptr->cached_errno= errno;
               WATCHPOINT_ERRNO(ptr->cached_errno);
@@ -225,6 +229,7 @@ test_connect:
         case EISCONN: /* We were spinning waiting on connect */
           break;
         default:
+handle_retry:
           ptr->cached_errno= errno;
           WATCHPOINT_ERRNO(ptr->cached_errno);
           close(ptr->fd);
index 1d2b08ad6b800cb4ee516cc6dbb1becaeb73dc10..cb7b20959490c3ffbd463d41ca1e03308dfe29e1 100644 (file)
@@ -22,7 +22,7 @@ extern "C" {
 #define MEMCACHED_POINTS_PER_SERVER 100 
 #define MEMCACHED_CONTINUUM_SIZE MEMCACHED_POINTS_PER_SERVER*100 /* This would then set max hosts to 100 */ 
 #define MEMCACHED_STRIDE 4
-#define MEMCACHED_DEFAULT_TIMEOUT INT32_MAX
+#define MEMCACHED_DEFAULT_TIMEOUT 1000
 #define MEMCACHED_CONTINUUM_ADDITION 10 /* How many extra slots we should build for in the continuum */
 
 typedef enum {