const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode);
char *memcached_get_by_key(memcached_st *ptr,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode);
char *memcached_get_by_key(memcached_st *ptr,
- *error= memcached_mget_by_key_real(ptr, master_key, master_key_length,
+ *error= memcached_mget_by_key_real(ptr, group_key, group_key_length,
static memcached_return_t binary_mget_by_key(memcached_st *ptr,
uint32_t master_server_key,
static memcached_return_t binary_mget_by_key(memcached_st *ptr,
uint32_t master_server_key,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode);
static memcached_return_t memcached_mget_by_key_real(memcached_st *ptr,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode);
static memcached_return_t memcached_mget_by_key_real(memcached_st *ptr,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode)
{
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
bool mget_mode)
{
const char *get_command= "get ";
uint8_t get_command_length= 4;
unsigned int master_server_key= (unsigned int)-1; /* 0 is a valid server id! */
const char *get_command= "get ";
uint8_t get_command_length= 4;
unsigned int master_server_key= (unsigned int)-1; /* 0 is a valid server id! */
if (ptr->flags.verify_key && (memcached_key_test(keys, key_length, number_of_keys) == MEMCACHED_BAD_KEY_PROVIDED))
return MEMCACHED_BAD_KEY_PROVIDED;
if (ptr->flags.verify_key && (memcached_key_test(keys, key_length, number_of_keys) == MEMCACHED_BAD_KEY_PROVIDED))
return MEMCACHED_BAD_KEY_PROVIDED;
- if (ptr->flags.verify_key && (memcached_key_test((const char * const *)&master_key, &master_key_length, 1) == MEMCACHED_BAD_KEY_PROVIDED))
+ if (ptr->flags.verify_key && (memcached_key_test((const char * const *)&group_key, &group_key_length, 1) == MEMCACHED_BAD_KEY_PROVIDED))
- master_server_key= memcached_generate_hash_with_redistribution(ptr, master_key, master_key_length);
- is_master_key_set= true;
+ master_server_key= memcached_generate_hash_with_redistribution(ptr, group_key, group_key_length);
+ is_group_key_set= true;
- return binary_mget_by_key(ptr, master_server_key, is_master_key_set, keys,
+ return binary_mget_by_key(ptr, master_server_key, is_group_key_set, keys,
struct libmemcached_io_vector_st vector[]=
{
{ .length= get_command_length, .buffer= get_command },
struct libmemcached_io_vector_st vector[]=
{
{ .length= get_command_length, .buffer= get_command },
{ .length= key_length[x], .buffer= keys[x] },
{ .length= 1, .buffer= " " }
};
{ .length= key_length[x], .buffer= keys[x] },
{ .length= 1, .buffer= " " }
};
if ((memcached_io_writev(instance, vector, 4, false)) == -1)
{
if ((memcached_io_writev(instance, vector, 4, false)) == -1)
{
if ((memcached_io_writev(instance, (vector + 1), 3, false)) == -1)
{
memcached_server_response_reset(instance);
if ((memcached_io_writev(instance, (vector + 1), 3, false)) == -1)
{
memcached_server_response_reset(instance);
for (uint32_t x= 0; x < memcached_server_count(ptr); x++)
{
memcached_server_write_instance_st instance=
for (uint32_t x= 0; x < memcached_server_count(ptr); x++)
{
memcached_server_write_instance_st instance=
/* We need to do something about non-connnected hosts in the future */
if ((memcached_io_write(instance, "\r\n", 2, true)) == -1)
{
/* We need to do something about non-connnected hosts in the future */
if ((memcached_io_write(instance, "\r\n", 2, true)) == -1)
{
const char * const *keys,
const size_t *key_length,
size_t number_of_keys)
{
const char * const *keys,
const size_t *key_length,
size_t number_of_keys)
{
- return memcached_mget_by_key_real(ptr, master_key, master_key_length, keys,
+ return memcached_mget_by_key_real(ptr, group_key, group_key_length, keys,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
- rc= memcached_mget_by_key(ptr, master_key, master_key_length, keys,
+ rc= memcached_mget_by_key(ptr, group_key, group_key_length, keys,
key_length, number_of_keys);
ptr->callbacks= original_callbacks;
return rc;
key_length, number_of_keys);
ptr->callbacks= original_callbacks;
return rc;
static memcached_return_t simple_binary_mget(memcached_st *ptr,
uint32_t master_server_key,
static memcached_return_t simple_binary_mget(memcached_st *ptr,
uint32_t master_server_key,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys, bool mget_mode)
{
memcached_return_t rc= MEMCACHED_NOTFOUND;
const char * const *keys,
const size_t *key_length,
size_t number_of_keys, bool mget_mode)
{
memcached_return_t rc= MEMCACHED_NOTFOUND;
struct libmemcached_io_vector_st vector[]=
{
{ .length= sizeof(request.bytes), .buffer= request.bytes },
struct libmemcached_io_vector_st vector[]=
{
{ .length= sizeof(request.bytes), .buffer= request.bytes },
.message.header.request= {
.magic= PROTOCOL_BINARY_REQ,
.opcode= PROTOCOL_BINARY_CMD_GETK,
.message.header.request= {
.magic= PROTOCOL_BINARY_REQ,
.opcode= PROTOCOL_BINARY_CMD_GETK,
struct libmemcached_io_vector_st vector[]=
{
{ .length= sizeof(request.bytes), .buffer= request.bytes },
struct libmemcached_io_vector_st vector[]=
{
{ .length= sizeof(request.bytes), .buffer= request.bytes },
static memcached_return_t binary_mget_by_key(memcached_st *ptr,
uint32_t master_server_key,
static memcached_return_t binary_mget_by_key(memcached_st *ptr,
uint32_t master_server_key,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
const char * const *keys,
const size_t *key_length,
size_t number_of_keys,
- rc= simple_binary_mget(ptr, master_server_key, is_master_key_set,
+ rc= simple_binary_mget(ptr, master_server_key, is_group_key_set,
keys, key_length, number_of_keys, mget_mode);
}
else
keys, key_length, number_of_keys, mget_mode);
}
else