Lines Matching refs:zobj
1081 unsigned int zsetLength(robj *zobj) { in zsetLength() argument
1083 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zsetLength()
1084 length = zzlLength(zobj->ptr); in zsetLength()
1085 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zsetLength()
1086 length = ((zset*)zobj->ptr)->zsl->length; in zsetLength()
1093 void zsetConvert(robj *zobj, int encoding) { in zsetConvert() argument
1099 if (zobj->encoding == encoding) return; in zsetConvert()
1100 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zsetConvert()
1101 unsigned char *zl = zobj->ptr; in zsetConvert()
1115 serverAssertWithInfo(NULL,zobj,eptr != NULL); in zsetConvert()
1117 serverAssertWithInfo(NULL,zobj,sptr != NULL); in zsetConvert()
1121 serverAssertWithInfo(NULL,zobj,ziplistGet(eptr,&vstr,&vlen,&vlong)); in zsetConvert()
1129 serverAssertWithInfo(NULL,zobj,dictAdd(zs->dict,ele,&node->score) == DICT_OK); in zsetConvert()
1134 zfree(zobj->ptr); in zsetConvert()
1135 zobj->ptr = zs; in zsetConvert()
1136 zobj->encoding = OBJ_ENCODING_SKIPLIST; in zsetConvert()
1137 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zsetConvert()
1145 zs = zobj->ptr; in zsetConvert()
1162 zobj->ptr = zl; in zsetConvert()
1163 zobj->encoding = OBJ_ENCODING_ZIPLIST; in zsetConvert()
1172 void zsetConvertToZiplistIfNeeded(robj *zobj, size_t maxelelen) { in zsetConvertToZiplistIfNeeded() argument
1173 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) return; in zsetConvertToZiplistIfNeeded()
1174 zset *zset = zobj->ptr; in zsetConvertToZiplistIfNeeded()
1178 zsetConvert(zobj,OBJ_ENCODING_ZIPLIST); in zsetConvertToZiplistIfNeeded()
1185 int zsetScore(robj *zobj, robj *member, double *score) { in zsetScore() argument
1186 if (!zobj || !member) return C_ERR; in zsetScore()
1188 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zsetScore()
1189 if (zzlFind(zobj->ptr, member, score) == NULL) return C_ERR; in zsetScore()
1190 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zsetScore()
1191 zset *zs = zobj->ptr; in zsetScore()
1215 robj *zobj; in zaddGenericCommand() local
1279 zobj = lookupKeyWrite(c->db,key); in zaddGenericCommand()
1280 if (zobj == NULL) { in zaddGenericCommand()
1285 zobj = createZsetObject(); in zaddGenericCommand()
1287 zobj = createZsetZiplistObject(); in zaddGenericCommand()
1289 dbAdd(c->db,key,zobj); in zaddGenericCommand()
1291 if (zobj->type != OBJ_ZSET) { in zaddGenericCommand()
1300 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zaddGenericCommand()
1305 if ((eptr = zzlFind(zobj->ptr,ele,&curscore)) != NULL) { in zaddGenericCommand()
1317 zobj->ptr = zzlDelete(zobj->ptr,eptr); in zaddGenericCommand()
1318 zobj->ptr = zzlInsert(zobj->ptr,ele,score); in zaddGenericCommand()
1326 zobj->ptr = zzlInsert(zobj->ptr,ele,score); in zaddGenericCommand()
1327 if (zzlLength(zobj->ptr) > server.zset_max_ziplist_entries) in zaddGenericCommand()
1328 zsetConvert(zobj,OBJ_ENCODING_SKIPLIST); in zaddGenericCommand()
1330 zsetConvert(zobj,OBJ_ENCODING_SKIPLIST); in zaddGenericCommand()
1335 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zaddGenericCommand()
1336 zset *zs = zobj->ptr; in zaddGenericCommand()
1413 robj *zobj; in zremCommand() local
1416 if ((zobj = lookupKeyWriteOrReply(c,key,shared.czero)) == NULL || in zremCommand()
1417 checkType(c,zobj,OBJ_ZSET)) return; in zremCommand()
1419 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zremCommand()
1423 if ((eptr = zzlFind(zobj->ptr,c->argv[j],NULL)) != NULL) { in zremCommand()
1425 zobj->ptr = zzlDelete(zobj->ptr,eptr); in zremCommand()
1426 if (zzlLength(zobj->ptr) == 0) { in zremCommand()
1433 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zremCommand()
1434 zset *zs = zobj->ptr; in zremCommand()
1477 robj *zobj; in zremrangeGenericCommand() local
1502 if ((zobj = lookupKeyWriteOrReply(c,key,shared.czero)) == NULL || in zremrangeGenericCommand()
1503 checkType(c,zobj,OBJ_ZSET)) goto cleanup; in zremrangeGenericCommand()
1507 llen = zsetLength(zobj); in zremrangeGenericCommand()
1522 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zremrangeGenericCommand()
1525 zobj->ptr = zzlDeleteRangeByRank(zobj->ptr,start+1,end+1,&deleted); in zremrangeGenericCommand()
1528 zobj->ptr = zzlDeleteRangeByScore(zobj->ptr,&range,&deleted); in zremrangeGenericCommand()
1531 zobj->ptr = zzlDeleteRangeByLex(zobj->ptr,&lexrange,&deleted); in zremrangeGenericCommand()
1534 if (zzlLength(zobj->ptr) == 0) { in zremrangeGenericCommand()
1538 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zremrangeGenericCommand()
1539 zset *zs = zobj->ptr; in zremrangeGenericCommand()
2184 robj *zobj; in zrangeGenericCommand() local
2201 if ((zobj = lookupKeyReadOrReply(c,key,shared.emptymultibulk)) == NULL in zrangeGenericCommand()
2202 || checkType(c,zobj,OBJ_ZSET)) return; in zrangeGenericCommand()
2205 llen = zsetLength(zobj); in zrangeGenericCommand()
2222 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zrangeGenericCommand()
2223 unsigned char *zl = zobj->ptr; in zrangeGenericCommand()
2234 serverAssertWithInfo(c,zobj,eptr != NULL); in zrangeGenericCommand()
2238 serverAssertWithInfo(c,zobj,eptr != NULL && sptr != NULL); in zrangeGenericCommand()
2239 serverAssertWithInfo(c,zobj,ziplistGet(eptr,&vstr,&vlen,&vlong)); in zrangeGenericCommand()
2254 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zrangeGenericCommand()
2255 zset *zs = zobj->ptr; in zrangeGenericCommand()
2272 serverAssertWithInfo(c,zobj,ln != NULL); in zrangeGenericCommand()
2296 robj *zobj; in genericZrangebyscoreCommand() local
2339 if ((zobj = lookupKeyReadOrReply(c,key,shared.emptymultibulk)) == NULL || in genericZrangebyscoreCommand()
2340 checkType(c,zobj,OBJ_ZSET)) return; in genericZrangebyscoreCommand()
2342 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in genericZrangebyscoreCommand()
2343 unsigned char *zl = zobj->ptr; in genericZrangebyscoreCommand()
2364 serverAssertWithInfo(c,zobj,eptr != NULL); in genericZrangebyscoreCommand()
2393 serverAssertWithInfo(c,zobj,ziplistGet(eptr,&vstr,&vlen,&vlong)); in genericZrangebyscoreCommand()
2413 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in genericZrangebyscoreCommand()
2414 zset *zs = zobj->ptr; in genericZrangebyscoreCommand()
2489 robj *zobj; in zcountCommand() local
2500 if ((zobj = lookupKeyReadOrReply(c, key, shared.czero)) == NULL || in zcountCommand()
2501 checkType(c, zobj, OBJ_ZSET)) return; in zcountCommand()
2503 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zcountCommand()
2504 unsigned char *zl = zobj->ptr; in zcountCommand()
2520 serverAssertWithInfo(c,zobj,zslValueLteMax(score,&range)); in zcountCommand()
2534 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zcountCommand()
2535 zset *zs = zobj->ptr; in zcountCommand()
2566 robj *zobj; in zlexcountCommand() local
2577 if ((zobj = lookupKeyReadOrReply(c, key, shared.czero)) == NULL || in zlexcountCommand()
2578 checkType(c, zobj, OBJ_ZSET)) in zlexcountCommand()
2584 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zlexcountCommand()
2585 unsigned char *zl = zobj->ptr; in zlexcountCommand()
2600 serverAssertWithInfo(c,zobj,zzlLexValueLteMax(eptr,&range)); in zlexcountCommand()
2612 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zlexcountCommand()
2613 zset *zs = zobj->ptr; in zlexcountCommand()
2647 robj *zobj; in genericZrangebylexCommand() local
2687 if ((zobj = lookupKeyReadOrReply(c,key,shared.emptymultibulk)) == NULL || in genericZrangebylexCommand()
2688 checkType(c,zobj,OBJ_ZSET)) in genericZrangebylexCommand()
2694 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in genericZrangebylexCommand()
2695 unsigned char *zl = zobj->ptr; in genericZrangebylexCommand()
2716 serverAssertWithInfo(c,zobj,eptr != NULL); in genericZrangebylexCommand()
2744 serverAssertWithInfo(c,zobj,ziplistGet(eptr,&vstr,&vlen,&vlong)); in genericZrangebylexCommand()
2760 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in genericZrangebylexCommand()
2761 zset *zs = zobj->ptr; in genericZrangebylexCommand()
2830 robj *zobj; in zcardCommand() local
2832 if ((zobj = lookupKeyReadOrReply(c,key,shared.czero)) == NULL || in zcardCommand()
2833 checkType(c,zobj,OBJ_ZSET)) return; in zcardCommand()
2835 addReplyLongLong(c,zsetLength(zobj)); in zcardCommand()
2840 robj *zobj; in zscoreCommand() local
2843 if ((zobj = lookupKeyReadOrReply(c,key,shared.nullbulk)) == NULL || in zscoreCommand()
2844 checkType(c,zobj,OBJ_ZSET)) return; in zscoreCommand()
2846 if (zsetScore(zobj,c->argv[2],&score) == C_ERR) { in zscoreCommand()
2856 robj *zobj; in zrankGenericCommand() local
2860 if ((zobj = lookupKeyReadOrReply(c,key,shared.nullbulk)) == NULL || in zrankGenericCommand()
2861 checkType(c,zobj,OBJ_ZSET)) return; in zrankGenericCommand()
2862 llen = zsetLength(zobj); in zrankGenericCommand()
2866 if (zobj->encoding == OBJ_ENCODING_ZIPLIST) { in zrankGenericCommand()
2867 unsigned char *zl = zobj->ptr; in zrankGenericCommand()
2871 serverAssertWithInfo(c,zobj,eptr != NULL); in zrankGenericCommand()
2873 serverAssertWithInfo(c,zobj,sptr != NULL); in zrankGenericCommand()
2891 } else if (zobj->encoding == OBJ_ENCODING_SKIPLIST) { in zrankGenericCommand()
2892 zset *zs = zobj->ptr; in zrankGenericCommand()