I really wish Redis wouldn't use the "master/slave" terminology. Primary/replica or even Master/replica are better terms. I know I'll probably get flamed for saying this, but it's a pox on a project that I otherwise very much love.
Redis 4.0
171–180 of 184 posts
Re: Redis 4.0
#172Earlier quoted context omitted.
'Bash' is too violent as well. We should rename it to 'hug'.
`bash` is also pretty evangelical ;) On a serious note, I've never actually understood where the term "hung" comes from in computing. Why is the process "hung" and not simply "stalled" or something else.
Re: Redis 4.0
#173Interesting coincidence (or maybe not...) Redis was discussed on the Floss podcast that I listened to earlier today and now I have an inkling of what Redis is. My first exposure to Redis was to ponder where it came from after I tried to run Gitlab on my puny (J1900, 4GB RAM and spinning rust) file server. It was spectacularly non-performant with most page loads timing out. I suppose it was because Redis had insuffici…
The issues you had may have come from GitLab not having enough resources available to handle everything, as opposed to Redis itself; anecdotally, I have an application with a couple thousand keys in it that only uses ~5MiB of RAM.
Re: Redis 4.0
#174Earlier quoted context omitted.
To be fair only a compacting GC can do that
That isn't strictly true. You do not need to do garbage collection to compact memory. The data needed to do memory compaction and garbage collection largely overlaps, so you may as well do both, but you don't have to. To implement either you need to do a scan of all pointers in memory - for a garbage collection you save a currently in use list, for compaction you need to a map of where they are so you can change them…
Re: Redis 4.0
#175Earlier quoted context omitted.
How do you solve this problem? Can you use headless K8S services for that?
You can use a StatefulSet which gives a fixed hostname per pod. Then you can have a sidecar pod that monitors the cluster, discovers the IPs of all pods, and uses redis_trib to create and maintain the cluster. It's a hassle to make it robust though.
Re: Redis 4.0
#176"9) Active memory defragmentation. Redis is able to defragment the memory while online..." I'm so amazed that this is a thing.
Re: Redis 4.0
#177Earlier quoted context omitted.
That isn't strictly true. You do not need to do garbage collection to compact memory. The data needed to do memory compaction and garbage collection largely overlaps, so you may as well do both, but you don't have to. To implement either you need to do a scan of all pointers in memory - for a garbage collection you save a currently in use list, for compaction you need to a map of where they are so you can change them…
Compaction is rather trivial with stop the world phase. Doing it without is a lot more challenging.
Re: Redis 4.0
#178Earlier quoted context omitted.
Do you understand the phrase "technical correctness" or is that open to interpretation as well?
In this case, the "technical correctness" of your argument is up for debate.
Re: Redis 4.0
#179Earlier quoted context omitted.
>What is easier having to have this conversation EVERY time the term gets used for the rest of eternity, or making the change once and being done with it? That's not very compelling. Just because certain people make a lot of noise doesn't mean we have to do what they want us to do. >For most projects it seems like a pretty easy change. You could add new keywords, alias the old methods/commands to them. You don't even…
Thank you. This argument is absurd. I'm fucking tired of social justice warriors trying to take over everything with their God damn oppression Olympics.
Re: Redis 4.0
#180Earlier quoted context omitted.
I think the m/s terminology is not technically correct. The actual behavior of a "slave" would better be described as a "follower" or a "replica". In an IRL master/slave dynamic the master does not first do the work only to be copied by a slave. The slave does all the work while the master whips them. It's better to choose a more technically correct metaphor/terminology.
You chose the wrong definition of slave to make your argument... https://en.wikipedia.org/wiki/Master/slave_(technology) In the computing world, this is what master/slave means. And has for 40 years. It doesn't matter what the words can also mean, just like it doesn't matter that the word whip can mean a kind of desert, or to stir. You need a dictionary.
The old term is confusing to newcomers, and changing it to something else would not break the brains of any tech oldtimers.