#include <libmemcached/common.h>
#include <libmemcached/memcached/protocol_binary.h>
-memcached_return_t memcached_delete(memcached_st *memc, const char *key, size_t key_length,
+memcached_return_t memcached_delete(memcached_st *shell, const char *key, size_t key_length,
time_t expiration)
{
- return memcached_delete_by_key(memc, key, key_length, key, key_length, expiration);
+ return memcached_delete_by_key(shell, key, key_length, key, key_length, expiration);
}
-static inline memcached_return_t ascii_delete(memcached_server_write_instance_st instance,
+static inline memcached_return_t ascii_delete(memcached_instance_st* instance,
uint32_t ,
const char *key,
const size_t key_length,
return memcached_vdo(instance, vector, 6, is_buffering ? false : true);
}
-static inline memcached_return_t binary_delete(memcached_server_write_instance_st instance,
+static inline memcached_return_t binary_delete(memcached_instance_st* instance,
uint32_t server_key,
const char *key,
const size_t key_length,
bool should_flush= is_buffering ? false : true;
- request.message.header.request.magic= PROTOCOL_BINARY_REQ;
+ initialize_binary_request(instance, request.message.header);
+
if (reply)
{
request.message.header.request.opcode= PROTOCOL_BINARY_CMD_DELETE;
memcached_return_t rc;
if (memcached_fatal(rc= memcached_vdo(instance, vector, 4, should_flush)))
{
+ assert(memcached_last_error(instance->root) != MEMCACHED_SUCCESS);
memcached_io_reset(instance);
}
server_key= 0;
}
- memcached_server_write_instance_st replica= memcached_server_instance_fetch(instance->root, server_key);
+ memcached_instance_st* replica= memcached_instance_fetch(instance->root, server_key);
if (memcached_fatal(memcached_vdo(replica, vector, 4, should_flush)))
{
+ assert(memcached_last_error(instance->root) != MEMCACHED_SUCCESS);
memcached_io_reset(replica);
}
else
return rc;
}
-memcached_return_t memcached_delete_by_key(memcached_st *memc,
+memcached_return_t memcached_delete_by_key(memcached_st *shell,
const char *group_key, size_t group_key_length,
const char *key, size_t key_length,
time_t expiration)
{
+ Memcached* memc= memcached2Memcached(shell);
LIBMEMCACHED_MEMCACHED_DELETE_START();
memcached_return_t rc;
}
uint32_t server_key= memcached_generate_hash_with_redistribution(memc, group_key, group_key_length);
- memcached_server_write_instance_st instance= memcached_server_instance_fetch(memc, server_key);
+ memcached_instance_st* instance= memcached_instance_fetch(memc, server_key);
bool is_buffering= memcached_is_buffering(instance->root);
bool is_replying= memcached_is_replying(instance->root);
}
LIBMEMCACHED_MEMCACHED_DELETE_END();
- return memcached_last_error(memc);
+ return rc;
}