Open dbascoules opened 7 months ago
Hi @dbascoules. In order to upgrade Superset's cachelib dependency to 0.12.0, which contains the support for callable keys, we need flask-caching to also update their requirements to allow that version.
Is this still an issue, and if it is, is it a Superset issue? I would be tempted to close this as stale, but thought I should seek opinions here first. Mabye it's worth filing an issue on flask-caching
if they haven't published a new release since this issue was opened nearly 5 months ago.
Bug description
The hability to specify a function as a key_prefix for RedisCache doesn't work anymore in Superset.
Expected type 'str', got '() -> str' instead
error is thrown.This was fundamental for my usecase where I use the subdomain of the Superset URL as an ingredient of my PostgreSQL RLS. Each subdomain correspond to a subset of the data that users may query through Superset (only one instance).
Introducing the notion of subdomain in the Redis cache key prefix avoids a cache mismatch between subdomains and data subsets. It's implemented with a function parametrized in RedisCache key_prefix.
I submitted a PR in the concerned lib project : pallets-eco/cachelib#332.
How to reproduce the bug
Screenshots/recordings
No response
Superset version
3.0.3
Python version
3.11
Node version
Not applicable
Browser
Not applicable
Additional context
`Expected type 'str', got '() -> str'
Checklist