d0942edf4005e71b306c1d5e67036f0d59cbfd5e
2 Startup, and shutdown the memcached servers.
5 #define TEST_PORT_BASE MEMCACHED_DEFAULT_PORT+10
12 #include <libmemcached/memcached.h>
14 #include "libmemcached/libmemcached_config.h"
17 void server_startup(server_startup_st
*construct
)
21 if ((construct
->server_list
= getenv("MEMCACHED_SERVERS")))
23 printf("servers %s\n", construct
->server_list
);
24 construct
->servers
= memcached_servers_parse(construct
->server_list
);
25 construct
->server_list
= NULL
;
31 char server_string_buffer
[8096];
33 end_ptr
= server_string_buffer
;
35 for (x
= 0; x
< construct
->count
; x
++)
37 char buffer
[1024]; /* Nothing special for number */
43 sprintf(buffer
, "%s -d -P /tmp/%umemc.pid -t 1 -p %u -U %u -m 128",
44 MEMCACHED_BINARY
, x
, x
+ TEST_PORT_BASE
, x
+ TEST_PORT_BASE
);
48 sprintf(buffer
, "%s -d -P /tmp/%umemc.pid -t 1 -p %u -U %u",
49 MEMCACHED_BINARY
, x
, x
+ TEST_PORT_BASE
, x
+ TEST_PORT_BASE
);
51 fprintf(stderr
, "STARTING SERVER: %s\n", buffer
);
52 status
= system(buffer
);
53 count
= sprintf(end_ptr
, "localhost:%u,", x
+ TEST_PORT_BASE
);
58 construct
->server_list
= strdup(server_string_buffer
);
60 printf("servers %s\n", construct
->server_list
);
61 construct
->servers
= memcached_servers_parse(construct
->server_list
);
64 assert(construct
->servers
);
68 for (x
= 0; x
< memcached_server_list_count(construct
->servers
); x
++)
70 printf("\t%s : %u\n", construct
->servers
[x
].hostname
, construct
->servers
[x
].port
);
71 assert(construct
->servers
[x
].fd
== -1);
72 assert(construct
->servers
[x
].cursor_active
== 0);
78 void server_shutdown(server_startup_st
*construct
)
82 if (construct
->server_list
)
84 for (x
= 0; x
< construct
->count
; x
++)
86 char buffer
[1024]; /* Nothing special for number */
87 sprintf(buffer
, "cat /tmp/%umemc.pid | xargs kill", x
);
90 sprintf(buffer
, "/tmp/%umemc.pid", x
);
94 free(construct
->server_list
);