MCPcopy Create free account
hub / github.com/Snapchat/KeyDB / defragModule

Function defragModule

src/defrag.cpp:824–833  ·  view source on GitHub ↗

Defrag a module key. This is either done immediately or scheduled * for later. Returns then number of pointers defragged. */

Source from the content-addressed store, hash-verified

822 * for later. Returns then number of pointers defragged.
823 */
824long defragModule(redisDb *db, dictEntry *kde) {
825 robj *obj = (robj*)dictGetVal(kde);
826 serverAssert(obj->type == OBJ_MODULE);
827 long defragged = 0;
828
829 if (!moduleDefragValue((robj*)dictGetKey(kde), obj, &defragged))
830 defragLater(db, kde);
831
832 return defragged;
833}
834
835/* for each key we scan in the main dict, this function will attempt to defrag
836 * all the various pointers it has. Returns a stat of how many pointers were

Callers 1

defragKeyFunction · 0.85

Calls 2

moduleDefragValueFunction · 0.85
defragLaterFunction · 0.85

Tested by

no test coverage detected