SWAPDB Redis command
github.com
SWAPDB Redis command
1–10 of 20 posts
Re: SWAPDB Redis command
#2I'd imagine something like this would already have been possible with a proxy (i.e. hot swap upstream without closing client connections).
Also, any idea how this handles clients that execute scripts via EVALSHA? If a client already loaded the script, wouldn't this break that expectation or does the client contract not allow caching that?
Re: SWAPDB Redis command
#3Looks cool. What would be the prototypical use cases for something like this? I'd imagine something like this would already have been possible with a proxy (i.e. hot swap upstream without closing client connections). Also, any idea how this handles clients that execute scripts via EVALSHA? If a client already loaded the script, wouldn't this break that expectation or does the client contract not allow caching that?
Re: SWAPDB Redis command
#4Re: SWAPDB Redis command
#5I'm blown away by how small the implementation is.
Re: SWAPDB Redis command
#6I'm blown away by how small the implementation is.
Yes, it's just a matter of swapping a few pointers and fixing inconsistencies with blocking clients, however this was conceptually possible thanks to the "lazyfree" work that is able to reclaim the old DB incrementally, and is a much larger implementation.
Re: SWAPDB Redis command
#7Looks cool. What would be the prototypical use cases for something like this? I'd imagine something like this would already have been possible with a proxy (i.e. hot swap upstream without closing client connections). Also, any idea how this handles clients that execute scripts via EVALSHA? If a client already loaded the script, wouldn't this break that expectation or does the client contract not allow caching that?
Re: SWAPDB Redis command
#8Does redis cluster only support one database? If that's still the case, then this is probably not available for the larger redis deployments.
Re: SWAPDB Redis command
#9Interesting. I can think of a number of scenarios where this makes sense if you're using Redis for caching and you don't have a proxy in your architecture. Does redis cluster only support one database? If that's still the case, then this is probably not available for the larger redis deployments.