Standalone Batch
Home / python / standalone_batch
glide.async_commands.batch.Batch
Bases: BaseBatch
Batch implementation for standalone GlideClient. Batches allow the execution of a group of commands in a single step.
Batch Response
An array
of command responses is returned by the client exec
command,
in the order they were given. Each element in the array represents a command given to the Batch.
The response for each command depends on the executed Valkey command.
Specific response types are documented alongside each method.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
is_atomic
|
bool
|
Determines whether the batch is atomic or non-atomic. If |
required |
See Valkey Transactions (Atomic Batches) and Valkey Pipelines (Non-Atomic Batches) for details.
Note for Standalone Mode (Cluster Mode Disabled): Standalone Batches are executed on the primary node.
Examples:
Atomic Batch - Transaction:
>>> transaction = Batch(is_atomic=True) # Atomic (Transaction)
>>> transaction.set("key", "value")
>>> transaction.get("key")
>>> result = await client.exec(transaction, false)
>>> print(result)
[OK, b"value"]
Non-Atomic Batch - Pipeline:
>>> pipeline = Batch(is_atomic=False) # Non-Atomic (Pipeline)
>>> pipeline.set("key1", "value1")
>>> pipeline.set("key2", "value2")
>>> pipeline.get("key1")
>>> pipeline.get("key2")
>>> result = await client.exec(pipeline, false)
>>> print(result)
[OK, OK, b"value1", b"value2"]
Source code in glide/async_commands/batch.py
5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 |
|
copy(source, destination, destinationDB=None, replace=None)
Copies the value stored at the source
to the destination
key. If destinationDB
is specified, the value will be copied to the database specified by destinationDB
,
otherwise the current database will be used. When replace
is True, removes the
destination
key first if it already exists, otherwise performs no action.
See valkey.io for more details.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
source
|
TEncodable
|
The key to the source value. |
required |
destination
|
TEncodable
|
The key where the value should be copied to. |
required |
destinationDB
|
Optional[int]
|
The alternative logical database index for the destination key. |
None
|
replace
|
Optional[bool]
|
If the destination key should be removed before copying the value to it. |
None
|
Command response
bool: True if the source was copied.
Otherwise, return False.
Since: Valkey version 6.2.0.
Source code in glide/async_commands/batch.py
5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 |
|
move(key, db_index)
Move key
from the currently selected database to the database specified by db_index
.
See valkey.io for more details.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
key
|
TEncodable
|
The key to move. |
required |
db_index
|
int
|
The index of the database to move |
required |
Commands response
bool: True if key
was moved.
False if the key
already exists in the destination database
or does not exist in the source database.
Source code in glide/async_commands/batch.py
5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 |
|
publish(message, channel)
Publish a message on pubsub channel.
See valkey.io for more details.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
message
|
TEncodable
|
Message to publish |
required |
channel
|
TEncodable
|
Channel to publish the message on. |
required |
Command Respose
int: Number of subscriptions in that shard that received the message.
Source code in glide/async_commands/batch.py
5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 |
|
select(index)
Change the currently selected database.
See valkey.io for details.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
index
|
int
|
The index of the database to select. |
required |
Command response
A simple OK response.
Source code in glide/async_commands/batch.py
5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 |
|