-
Notifications
You must be signed in to change notification settings - Fork 547
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[QUESTION] Fork status #8
Comments
No, this is just a fork from ex-community members for now. Amazon, and other companies, are aware of what what is going on (AWS employs me). |
Any reason not to join forces with KeyDB? It has a growing community. They are looking for help with v7. |
KeyDB is a pretty significant fork of Redis, and they diverged a long time ago. They don't support a lot of the latest features, and I don't agree with many of their technical directions. The one benefit they have is they have a pretty good community behind it. |
What is your opinion on the redict fork? https://redict.io/posts/2024-03-22-redict-is-an-independent-fork/ |
Hey, I'm responsible for the Redict fork. I've been in contact with some of the folks working on this fork (placeholderkv) and have invited them to work on Redict, but we have some differences:
I think those were the main differences of opinion between these forks. That said, if their placeholderkv thing gets some traction, Redict will be able to incorporate some changes from this fork, but unfortunately not vice-versa since they don't want to use a copyleft license. |
Thanks for the comparison, I just hope there will be not too much duplicate effort with all the redis forks |
[wearing my Amazon hat, as an executive sponsor of the Open Source Program Office] On representing employer interests: I have tried to make it clear both inside Amazon and publicly that @madolson's prior role as a member of the Redis core team was earned by her as an individual, and that giving her the autonomy to do what she believes is best for the Redis community was important to the project (thus important to Amazon). This was the arrangement at the outset when the Redis core team was established in 2020. I have no doubt she has her own opinions about license choice and what's best for the existing community of developers she's working with, and I don't want to speak for her. I only ask that you recognize her voice as her own, and not necessarily representing her employer (unless she explicitly say she is).
It's understandable that a community that was already productive on a platform may want to stick with it. With all the other changes that have occurred, I think you're asking lot to ask this community to change both their license and their productivity tools. I think it's asking a lot to expect them to conform to your values and policies without negotiation or building consensus.
|
There have been some breakdowns in communication here, which is not surprising given the Redis community diaspora is a bit shaken right now. I think it's a moot point to try to keep up with discussions that have been split informally across a bunch of proprietary/closed platforms, first Slack, now apparently Discord, etc. I'm glad we're chatting on GitHub now, in public. Let me try to explain my intentions more clearly. Unlike most of the stakeholders in this fork, I am not aligned with any commercial interests. I do work for a company that uses Redis, but it's not part of our value proposition. Instead my interests here are based on an expressly political free software agenda. The situation with Redis is becoming an epidemic and I intend to step up and do what I can to curtail it; thus my goal here is to establish a fork with as much continuity as possible, as quickly as possible, in a manner which expressly defends the future freedom of this software. Yes, this is politics, but it's politics you're invited to. And, yes, if you decline the invitation, we will continue the politics without you. I appreciate the open source world that you're coming from, a bit more corporate, a bit less grassroots (the "cathedral", if you're familiar with the metaphor), but it's not really how free software works, it's just a cultural norm you're used to. The software needs to be forked and renamed and something new built around it, so I've organized a community to do that work, but the result is not a new cathedral -- it's a contribution to the bazaar. I believe that in order to secure a future for this software, and to communicate to other commercial stewards of FOSS projects that pulling this trick does not work, a copyleft license is non-negotiable, and so I have selected that as the license under which I am personally willing to do the part part in establishing a fork, lest the labor I expend in this effort is simply stolen once again. I have started building a community of like minded people to facilitate this work. I have not sought consensus on the following decisions:
Our work proceeds towards building everything up under these assumptions, but there is little to nothing other than this which has been written into stone. You have all been invited to the table to establish matters of governance, process, tooling, everything. All you have to do is join us! All of the Redis contributors involved in this fork were invited from the start. We're just not waiting for you to get started.
There is no better time than now to consider these changes, and there's good reason to. But, again, none of is written in stone. Come talk about the infrastructure with us. I don't think any of us are prepared to meet you on Discord, but if you're willing to swallow your pride and join IRC or say hello on the Codeberg issues, we'll be happy to meet you there. Codeberg is just a place to organize the work, much like "placeholderkv" is organizing your efforts here. If the community decides to move it to GitHub, I might hold my nose when it happens, but, it'll happen. That said, I can think of a few people who will have some things to say in the ensuing discussion. We're ready to welcome you and collaborate, but we're not waiting for you. Tell your bosses that LGPL is the way to go, then come work with us. We should have a release ready next week and then we're going to start encouraging people to migrate, and we would very much like you to be there. Do what's right for this community. And, hell, if you really insist on using GitHub and Discord and not talking to anyone outside of your clique, just get over the LGPL thing and reuse our code and save yourself a bunch of time and effort redoing everything we've already done and will do over the next few days. That's still mission accomplished, as far as I'm concerned. |
[wearing my own hat as an individual, speaking only for myself]
Drew, I don't think you know me or my background or what the cultural norms are of the communities that I have been a part of. I'm from the camp that steadfastly used the term "Free Software" as part of an overtly political and ethical movement. I've worked on GNU software and served on the board of directors for SFC long ago. I wish I had more time to devote to those things. I believe you have taken the steps you have for principled reasons. But they are clearly (explicitly, even) politics. This naturally shifts the social dynamics of your effort, and is why it's clear to me that there are likely irreconcilable philosophical / political differences between your effort and others like this one.
I sent you a message on Matrix earlier today, and said hi on IRC. But I'm less inclined to stay logged in when you say I need to swallow my pride to use the communication tools that I have loved, and wish I was using more.
Sigh. With your rhetoric you're not making it easier for me to advocate for this direction. |
You know, you're right, and I apologize for my tone. I am feeling a bit disparaged, because from my perspective, we're here doing a lot of hard work in public and inviting collaboration while there's some discussions happening in private on Slack and Discord to establish this other fork which isn't doing any of the work. If there's a consensus process it feels like we're not a part of it and no one else is invited. It seems like the only reason this fork is not collaborating with us is hubris. I know this isn't the intention, and that things are just in flux right now, but hopefully it explains some of my frustration.
I agree that this is a means of addressing the continuity problem, but specifically, I am trying to address both continuity and preventing this from happening again. Not one or the other but explicitly both. If this fork isn't solving both then we are not going to reconcile our differences.
There is no outcome to the Redis catastrophe, for lack of a better term, which is not politics, I'm afraid. Everything we're doing here is political, and though I understand that there's discomfort in facing that truth, we'll be better off if we agree that something political is going on and we can talk about what political values we care about in that process.
I'm sorry I missed your messages, I don't use Matrix (but maybe we can consider setting up some discussions there). I just saw your IRC message a few minutes ago. I'm happy to connect there but I don't want to extend this network of private discussions to include PM'ing me over IRC -- we have an IRC channel, #redict, which is open to the public and a great place to connect. |
I would personally appreciate Matrix, both as a balance between IRC and Discord experiences (it's a free software platform that gives a lot of what people appreciate from newer chat platforms) and because it's the platform I generally prefer to interact on (I use Matrix for nearly all of my FOSS communication these days). |
Reached out on Matrix via @ddevault:systemli.org. Not super familiar with Matrix so I will need your help setting it up, but let's get it done together. |
TIL IRC survived the death of freenode .. there's an xkcd comic about this somewhere 😂 |
There is now a Matrix room too: https://matrix.to/#/#redict:matrix.org |
But then the Freenode fork almost everyone migrated to (Libera.Chat) decided to turn off the Matrix bridge, which has split the community into 2 disconnected fragments. People like me who use IRC can no longer talk to the Matrix users and the other way round. I would strongly recommend staying off Libera.Chat and using one of the IRC networks with a working Matrix bridge, such as OFTC. |
We also set up a Matrix channel and bridged it directly with IRC, FYI. |
…is missed cases to redis-server. (#12322) Observed that the sanitizer reported memory leak as clean up is not done before the process termination in negative/following cases: **- when we passed '--invalid' as option to redis-server.** ``` -vm:~/mem-leak-issue/redis$ ./src/redis-server --invalid *** FATAL CONFIG FILE ERROR (Redis 255.255.255) *** Reading the configuration file, at line 2 >>> 'invalid' Bad directive or wrong number of arguments ================================================================= ==865778==ERROR: LeakSanitizer: detected memory leaks Direct leak of 8 byte(s) in 1 object(s) allocated from: #0 0x7f0985f65867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145 valkey-io#1 0x558ec86686ec in ztrymalloc_usable_internal /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:117 valkey-io#2 0x558ec86686ec in ztrymalloc_usable /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:135 valkey-io#3 0x558ec86686ec in ztryrealloc_usable_internal /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:276 valkey-io#4 0x558ec86686ec in zrealloc /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:327 valkey-io#5 0x558ec865dd7e in sdssplitargs /home/ubuntu/mem-leak-issue/redis/src/sds.c:1172 valkey-io#6 0x558ec87a1be7 in loadServerConfigFromString /home/ubuntu/mem-leak-issue/redis/src/config.c:472 valkey-io#7 0x558ec87a13b3 in loadServerConfig /home/ubuntu/mem-leak-issue/redis/src/config.c:718 valkey-io#8 0x558ec85e6f15 in main /home/ubuntu/mem-leak-issue/redis/src/server.c:7258 valkey-io#9 0x7f09856e5d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 SUMMARY: AddressSanitizer: 8 byte(s) leaked in 1 allocation(s). ``` **- when we pass '--port' as option and missed to add port number to redis-server.** ``` vm:~/mem-leak-issue/redis$ ./src/redis-server --port *** FATAL CONFIG FILE ERROR (Redis 255.255.255) *** Reading the configuration file, at line 2 >>> 'port' wrong number of arguments ================================================================= ==865846==ERROR: LeakSanitizer: detected memory leaks Direct leak of 8 byte(s) in 1 object(s) allocated from: #0 0x7fdcdbb1f867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145 valkey-io#1 0x557e8b04f6ec in ztrymalloc_usable_internal /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:117 valkey-io#2 0x557e8b04f6ec in ztrymalloc_usable /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:135 valkey-io#3 0x557e8b04f6ec in ztryrealloc_usable_internal /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:276 valkey-io#4 0x557e8b04f6ec in zrealloc /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:327 valkey-io#5 0x557e8b044d7e in sdssplitargs /home/ubuntu/mem-leak-issue/redis/src/sds.c:1172 valkey-io#6 0x557e8b188be7 in loadServerConfigFromString /home/ubuntu/mem-leak-issue/redis/src/config.c:472 valkey-io#7 0x557e8b1883b3 in loadServerConfig /home/ubuntu/mem-leak-issue/redis/src/config.c:718 valkey-io#8 0x557e8afcdf15 in main /home/ubuntu/mem-leak-issue/redis/src/server.c:7258 valkey-io#9 0x7fdcdb29fd8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 Indirect leak of 10 byte(s) in 1 object(s) allocated from: #0 0x7fdcdbb1fc18 in __interceptor_realloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:164 valkey-io#1 0x557e8b04f9aa in ztryrealloc_usable_internal /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:287 valkey-io#2 0x557e8b04f9aa in ztryrealloc_usable /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:317 valkey-io#3 0x557e8b04f9aa in zrealloc_usable /home/ubuntu/mem-leak-issue/redis/src/zmalloc.c:342 valkey-io#4 0x557e8b033f90 in _sdsMakeRoomFor /home/ubuntu/mem-leak-issue/redis/src/sds.c:271 valkey-io#5 0x557e8b033f90 in sdsMakeRoomFor /home/ubuntu/mem-leak-issue/redis/src/sds.c:295 valkey-io#6 0x557e8b033f90 in sdscatlen /home/ubuntu/mem-leak-issue/redis/src/sds.c:486 valkey-io#7 0x557e8b044e1f in sdssplitargs /home/ubuntu/mem-leak-issue/redis/src/sds.c:1165 valkey-io#8 0x557e8b188be7 in loadServerConfigFromString /home/ubuntu/mem-leak-issue/redis/src/config.c:472 valkey-io#9 0x557e8b1883b3 in loadServerConfig /home/ubuntu/mem-leak-issue/redis/src/config.c:718 valkey-io#10 0x557e8afcdf15 in main /home/ubuntu/mem-leak-issue/redis/src/server.c:7258 valkey-io#11 0x7fdcdb29fd8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 SUMMARY: AddressSanitizer: 18 byte(s) leaked in 2 allocation(s). ``` As part analysis found that the sdsfreesplitres is not called when this condition checks are being hit. Output after the fix: ``` vm:~/mem-leak-issue/redis$ ./src/redis-server --invalid *** FATAL CONFIG FILE ERROR (Redis 255.255.255) *** Reading the configuration file, at line 2 >>> 'invalid' Bad directive or wrong number of arguments vm:~/mem-leak-issue/redis$ =========================================== vm:~/mem-leak-issue/redis$ ./src/redis-server --jdhg *** FATAL CONFIG FILE ERROR (Redis 255.255.255) *** Reading the configuration file, at line 2 >>> 'jdhg' Bad directive or wrong number of arguments --------------------------------------------------------------------------- vm:~/mem-leak-issue/redis$ ./src/redis-server --port *** FATAL CONFIG FILE ERROR (Redis 255.255.255) *** Reading the configuration file, at line 2 >>> 'port' wrong number of arguments ``` Co-authored-by: Oran Agra <oran@redislabs.com>
Hello,
Is it an official fork from AWS Elasticache Team?
The text was updated successfully, but these errors were encountered: