dragonflydb / dragonflydb/dragonfly

test_blocking_command_client_pause

Open
#4,470 0 comments 0 reactions 0 assignees View on GitHub
bug failing-test
Dominant language
C++
Stars
31.6k
Forks
1.3k
Avg merge
1d 10h
Merged PRs (30d)
137

Description

See failure in https://github.com/dragonflydb/dragonfly/actions/runs/12780733885/job/35627503311#step:6:807

```

async def lpush_command():
await async_client.execute_command("lpush src value")

blpop = asyncio.create_task(blpop_command())
brpoplpush = asyncio.create_task(brpoplpush_command())
await asyncio.sleep(0.1)

res = await async_client.execute_command("client pause 1000")
assert res == "OK"

lpush = asyncio.create_task(lpush_command())
assert not lpush.done()

await lpush
> await brpoplpush

dragonfly/connection_test.py:956:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

async def brpoplpush_command():
res = await async_client.execute_command("brpoplpush src dest7 2")
> assert res == "value"
E AssertionError: assert equals failed
E None 'value'

```

Contributor guide

Open the contributing guide

Research direction

Start by running the failing test test_blocking_command_client_pause in dragonfly/connection_test.py and inspect the setup around line 956. Trace the CLIENT PAUSE interaction with the blocking BRPOPLPUSH command; done means the command returns "value" and the test passes consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python
Domain
database, testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.