mirror of
https://github.com/fluencelabs/redis
synced 2025-04-02 07:41:04 +00:00
Lazyfree: pending objects count in INFO output.
This commit is contained in:
parent
c69c6c80fb
commit
1f26a9468f
@ -6,6 +6,11 @@
|
|||||||
static size_t lazyfree_objects = 0;
|
static size_t lazyfree_objects = 0;
|
||||||
pthread_mutex_t lazyfree_objects_mutex = PTHREAD_MUTEX_INITIALIZER;
|
pthread_mutex_t lazyfree_objects_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||||
|
|
||||||
|
/* Return the number of currently pending objects to free. */
|
||||||
|
size_t lazyfreeGetPendingObjectsCount(void) {
|
||||||
|
return lazyfree_objects;
|
||||||
|
}
|
||||||
|
|
||||||
/* Return the amount of work needed in order to free an object.
|
/* Return the amount of work needed in order to free an object.
|
||||||
* The return value is not always the actual number of allocations the
|
* The return value is not always the actual number of allocations the
|
||||||
* object is compoesd of, but a number proportional to it.
|
* object is compoesd of, but a number proportional to it.
|
||||||
|
@ -2803,7 +2803,8 @@ sds genRedisInfoString(char *section) {
|
|||||||
"maxmemory_human:%s\r\n"
|
"maxmemory_human:%s\r\n"
|
||||||
"maxmemory_policy:%s\r\n"
|
"maxmemory_policy:%s\r\n"
|
||||||
"mem_fragmentation_ratio:%.2f\r\n"
|
"mem_fragmentation_ratio:%.2f\r\n"
|
||||||
"mem_allocator:%s\r\n",
|
"mem_allocator:%s\r\n"
|
||||||
|
"lazyfree_pending_objects:%zu\r\n",
|
||||||
zmalloc_used,
|
zmalloc_used,
|
||||||
hmem,
|
hmem,
|
||||||
server.resident_set_size,
|
server.resident_set_size,
|
||||||
@ -2818,7 +2819,8 @@ sds genRedisInfoString(char *section) {
|
|||||||
maxmemory_hmem,
|
maxmemory_hmem,
|
||||||
evict_policy,
|
evict_policy,
|
||||||
zmalloc_get_fragmentation_ratio(server.resident_set_size),
|
zmalloc_get_fragmentation_ratio(server.resident_set_size),
|
||||||
ZMALLOC_LIB
|
ZMALLOC_LIB,
|
||||||
|
lazyfreeGetPendingObjectsCount()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1414,6 +1414,7 @@ void slotToKeyFlush(void);
|
|||||||
int dbAsyncDelete(redisDb *db, robj *key);
|
int dbAsyncDelete(redisDb *db, robj *key);
|
||||||
void emptyDbAsync(redisDb *db);
|
void emptyDbAsync(redisDb *db);
|
||||||
void slotToKeyFlushAsync(void);
|
void slotToKeyFlushAsync(void);
|
||||||
|
size_t lazyfreeGetPendingObjectsCount(void);
|
||||||
|
|
||||||
/* API to get key arguments from commands */
|
/* API to get key arguments from commands */
|
||||||
int *getKeysFromCommand(struct redisCommand *cmd, robj **argv, int argc, int *numkeys);
|
int *getKeysFromCommand(struct redisCommand *cmd, robj **argv, int argc, int *numkeys);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user