Comment by antirez

6 months ago

Hi! The Redis tree contains more advanced versions of this library. Most of the development continued there, eventually.

It might be worth extracting it back out, it seems pretty useful.

  • Indeed, but in some way the Redis version is a bit too Redis-ish, that is, memory saving concerns are taken to the extreme instead of having a more balanced approach about simplicity. In my YouTube channel C course, I'm showing something similar to SDS in the latest lessons, and I may use SDS again in later course in order to show how to integrate back the useful features that diverged. Maybe an SDS3 maybe a middle ground among the Redis version, some API error that should be corrected (but not in Redis: not worth it), and other improvements.

Hi! Are there no performance penalties that come from alignment issues? Or are your prefix structs aligned to cache line sizes?