Closed onedr0p closed 1 year ago
It is also worth noting that other applications using redis sentinel are working fine.
Based on the error, it's most probably the same that caused this https://github.com/shlinkio/shlink/issues/1684, just on a different place.
The library used to handle locks probably doesn't support predis 2.x neither, when Redis is used.
I will try to patch it like I did to solve that one, and see if I can contribute support for predis 2 to that component as well.
I'm not sure why it didn't fail so far, though. I guess the unclean shutdown might have forced a very specific path.
Hmm, it looks like the change I did should actually cover this use case as well, which makes me wonder if there's an actual bug on this specific library, but I need to investigate a bit further.
For now, I have tried to check what's the key used to set-up the lock, in case deleting it helps unblock this. Try looking for db:create
or Shlinkio\Shlink\CLI\Command\Db\CreateDatabaseCommand
(yes, this key should be prefixed with Shlink:
. I need to fix that).
Looks like it eventually self-healed overnight. /shrug
I thought that could happen.
My theory is that the lock was created, and because of the unclean shutdown, it was never released.
The next Shlink instance found it, and that's what triggered the path where this bug happens.
Once the lock expired (I think that happens after 10 minutes), Shlink was able to start again.
I will deprioritize this a bit, as it seems less critical.
Hi, thank you for your work on this cool project. Can you please provide an update on this issue? I am trying to deploy this app in an EKS cluster with Elasticache Redis instance and postgres DB. Even after waiting for a while, I do not see any change and the deployment keeps failing. Any update on this would be very helpful.
No progress so far. It needs to be solved here https://github.com/symfony/symfony/issues/49238, if you want to give it a go.
I started something, but didn't have time to continue https://github.com/symfony/symfony/compare/6.3...acelaya-forks:symfony:feature/predis-2-support
I am going to close this issue as it hasn't come up since I opened this issue, I'll be sure to re-open with updated information if it happens in the future. Thanks for all you do <3
Hi again, your favorite shlink+redis sentinel user 👋🏼
How Shlink is set up
3.5.1
ghcr.io/shlinkio/shlink
PostgreSQL
Env
Summary
Shlink is not starting due to the following error, this happened on an unclean "shutdown" of redis and shlink:
It looks like the crash caused shlink not to clean up the lock?