You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using shlink-api with a Redis-Cluster only allowing keys with "Shlink:"-Prefix locks from AbstractLockedCommand won't work, because they use the command name (e.g. "db:create") as key without prefix.
Expected behavior
Redis keys created by locks should be prefixed with "Shlink:" as all other Redis keys are.
A possible fix we've already tried is adding "Shlink:" to the lock configuration in AbstractDatabaseCommand.php and LocateVisistsCommand.php. That fixes the lock names for those commands, but Shlink still has permissions errors upon startup. So there are most probably still other keys created in Redis without the prefix
How to reproduce
Start a Redis cluster with following ACL:
user default on >redacted ~oeamtc:lms:lms-totara* &* +@all
user shlink on >redacted ~Shlink* &* +@all
The Shlink API will fail on startup when started with user "shlink", because it can't create the key "db:create".
The text was updated successfully, but these errors were encountered:
Shlink version
3.6.3
PHP version
docker
How do you serve Shlink
Openswoole Docker image
Database engine
PostgreSQL
Database version
12
Current behavior
When using shlink-api with a Redis-Cluster only allowing keys with "Shlink:"-Prefix locks from AbstractLockedCommand won't work, because they use the command name (e.g. "db:create") as key without prefix.
Expected behavior
Redis keys created by locks should be prefixed with "Shlink:" as all other Redis keys are.
A possible fix we've already tried is adding "Shlink:" to the lock configuration in AbstractDatabaseCommand.php and LocateVisistsCommand.php. That fixes the lock names for those commands, but Shlink still has permissions errors upon startup. So there are most probably still other keys created in Redis without the prefix
How to reproduce
Start a Redis cluster with following ACL:
The Shlink API will fail on startup when started with user "shlink", because it can't create the key "db:create".
The text was updated successfully, but these errors were encountered: