Skip to content

Conversation

@vyavdoshenko
Copy link

@vyavdoshenko vyavdoshenko commented Nov 28, 2025

Adds compatibility with Dragonfly - a Redis-compatible in-memory store.

Problem: Undeclared keys in Lua scripts

Dragonfly requires all keys accessed in Lua scripts to be declared upfront in the KEYS array, or the script must explicitly opt out using the --!df flags=allow-undeclared-keys directive.

Cacheops dynamically generates conjunction keys (conj:*) inside Lua scripts, which causes failures in Dragonfly without this flag.

Related Dragonfly issues:

Solution:

Added --!df flags=allow-undeclared-keys directive to all Lua scripts. This directive is a Lua comment, so it's safely ignored by Redis.

Tested with Redis 4.x and Redis 7.x - all tests pass.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant