Skip to content

Commit 4381be5

Browse files
committed
bug fix
1 parent 37f8425 commit 4381be5

File tree

2 files changed

+21
-5
lines changed

2 files changed

+21
-5
lines changed

django_valkey/async_cache/client/default.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -468,11 +468,19 @@ async def get_many(
468468
try:
469469
pipline = await client.pipeline()
470470
for key in keys:
471-
await self.aget(key=key, version=version, client=pipline)
472-
await pipline.execute()
471+
key = await self.make_key(key, version=version)
472+
await pipline.get(key)
473+
values = await pipline.execute()
473474
except _main_exceptions as e:
474475
raise ConnectionInterrupted(connection=client) from e
475476

477+
recovered_data = {}
478+
for key, value in zip(keys, values):
479+
if not value:
480+
continue
481+
recovered_data[key] = await self.decode(value)
482+
return recovered_data
483+
476484
aget_many = get_many
477485

478486
async def set_many(

django_valkey/base_client.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -591,7 +591,7 @@ def get_many(
591591
keys: Iterable[KeyT],
592592
version: int | None = None,
593593
client: Backend | None = None,
594-
):
594+
) -> dict:
595595
"""
596596
non-atomic bulk method.
597597
get values of the provided keys
@@ -601,12 +601,20 @@ def get_many(
601601
try:
602602
pipeline = client.pipeline()
603603
for key in keys:
604-
self.get(key=key, version=version, client=pipeline)
605-
pipeline.execute()
604+
key = self.make_key(key, version=version)
605+
pipeline.get(key)
606+
values = pipeline.execute()
606607

607608
except _main_exceptions as e:
608609
raise ConnectionInterrupted(connection=client) from e
609610

611+
recovered_data = {}
612+
for key, value in zip(keys, values):
613+
if not value:
614+
continue
615+
recovered_data[key] = self.decode(value)
616+
return recovered_data
617+
610618
def set_many(
611619
self,
612620
data: Dict[KeyT, EncodableT],

0 commit comments

Comments
 (0)