X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fio.c;h=e94c136f0c5785c9886f8cd18b2884beb5502b6e;hb=2591754352720dd6d6aaf5980b06804e39016ed3;hp=6ecac2457bb64b44dfcd8f4a94fb814e4eda89f7;hpb=d34abf03f393784c300e2957894aaf8b4eedc1f5;p=m6w6%2Flibmemcached diff --git a/libmemcached/io.c b/libmemcached/io.c index 6ecac245..e94c136f 100644 --- a/libmemcached/io.c +++ b/libmemcached/io.c @@ -12,8 +12,6 @@ #include "common.h" -#include - typedef enum { MEM_READ, MEM_WRITE @@ -107,6 +105,11 @@ static memcached_return_t io_wait(memcached_server_write_instance_st ptr, return MEMCACHED_FAILURE; } +memcached_return_t memcached_io_wait_for_write(memcached_server_write_instance_st ptr) +{ + return io_wait(ptr, MEM_WRITE); +} + /** * Try to fill the input buffer for a server with as much * data as possible. @@ -384,7 +387,6 @@ static ssize_t _io_write(memcached_server_write_instance_st ptr, should_write= length; if (ptr->write_buffer_offset + should_write > buffer_end) { - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; } } @@ -427,7 +429,6 @@ static ssize_t _io_write(memcached_server_write_instance_st ptr, WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET); if (io_flush(ptr, &rc) == -1) { - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; } @@ -579,7 +580,6 @@ static ssize_t io_flush(memcached_server_write_instance_st ptr, if (rc != MEMCACHED_SUCCESS && rc != MEMCACHED_STORED) { - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; } } @@ -595,7 +595,6 @@ static ssize_t io_flush(memcached_server_write_instance_st ptr, // UDP Sanity check, make sure that we are not sending somthing too big if (ptr->type == MEMCACHED_CONNECTION_UDP && write_length > MAX_UDP_DATAGRAM_LENGTH) { - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; } @@ -619,7 +618,7 @@ static ssize_t io_flush(memcached_server_write_instance_st ptr, if (ptr->type == MEMCACHED_CONNECTION_UDP) increment_udp_message_id(ptr); - assert(ptr->fd != -1); + WATCHPOINT_ASSERT(ptr->fd != -1); sent_length= send(ptr->fd, local_write_ptr, write_length, 0); if (sent_length == SOCKET_ERROR) { @@ -654,15 +653,14 @@ static ssize_t io_flush(memcached_server_write_instance_st ptr, continue; memcached_quit_server(ptr, true); - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; } case ENOTCONN: case EPIPE: default: - fprintf(stderr, "%s:%d (%s)(%s)\n", __FILE__, __LINE__,__func__, strerror(errno));fflush(stdout); memcached_quit_server(ptr, true); *error= MEMCACHED_ERRNO; + WATCHPOINT_ASSERT(ptr->fd == -1); return -1; } } @@ -671,7 +669,6 @@ static ssize_t io_flush(memcached_server_write_instance_st ptr, (size_t)sent_length != write_length) { memcached_quit_server(ptr, true); - fprintf(stderr, "%s:%d (%s)\n", __FILE__, __LINE__,__func__);fflush(stdout); return -1; }