mirror of https://github.com/valkey-io/valkey
121 lines
3.8 KiB
JSON
121 lines
3.8 KiB
JSON
{
|
|
"BZMPOP": {
|
|
"summary": "Removes and returns a member by score from one or more sorted sets. Blocks until a member is available otherwise. Deletes the sorted set if the last element was popped.",
|
|
"complexity": "O(K) + O(M*log(N)) where K is the number of provided keys, N being the number of elements in the sorted set, and M being the number of elements popped.",
|
|
"group": "sorted_set",
|
|
"since": "7.0.0",
|
|
"arity": -5,
|
|
"function": "bzmpopCommand",
|
|
"get_keys_function": "blmpopGetKeys",
|
|
"command_flags": [
|
|
"WRITE",
|
|
"BLOCKING"
|
|
],
|
|
"acl_categories": [
|
|
"BLOCKING",
|
|
"SLOW",
|
|
"SORTEDSET",
|
|
"WRITE"
|
|
],
|
|
"key_specs": [
|
|
{
|
|
"flags": [
|
|
"RW",
|
|
"ACCESS",
|
|
"DELETE"
|
|
],
|
|
"begin_search": {
|
|
"index": {
|
|
"pos": 2
|
|
}
|
|
},
|
|
"find_keys": {
|
|
"keynum": {
|
|
"keynumidx": 0,
|
|
"firstkey": 1,
|
|
"step": 1
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"reply_schema": {
|
|
"oneOf": [
|
|
{
|
|
"description": "Timeout reached and no elements were popped.",
|
|
"type": "null"
|
|
},
|
|
{
|
|
"description": "The keyname and the popped members.",
|
|
"type": "array",
|
|
"minItems": 2,
|
|
"maxItems": 2,
|
|
"items": [
|
|
{
|
|
"description": "Keyname",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"description": "Popped members and their scores.",
|
|
"type": "array",
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "array",
|
|
"minItems": 2,
|
|
"maxItems": 2,
|
|
"items": [
|
|
{
|
|
"description": "Member",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"description": "Score",
|
|
"type": "number"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"arguments": [
|
|
{
|
|
"name": "timeout",
|
|
"type": "double"
|
|
},
|
|
{
|
|
"name": "numkeys",
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"name": "key",
|
|
"type": "key",
|
|
"key_spec_index": 0,
|
|
"multiple": true
|
|
},
|
|
{
|
|
"name": "where",
|
|
"type": "oneof",
|
|
"arguments": [
|
|
{
|
|
"name": "min",
|
|
"type": "pure-token",
|
|
"token": "MIN"
|
|
},
|
|
{
|
|
"name": "max",
|
|
"type": "pure-token",
|
|
"token": "MAX"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"token": "COUNT",
|
|
"name": "count",
|
|
"type": "integer",
|
|
"optional": true
|
|
}
|
|
]
|
|
}
|
|
}
|