alt.hn

7/22/2026 at 12:27:35 AM

A flaky test exposed a Redis client use-after-free

https://buildkite.engineering/how-a-flaky-test-exposed-a-redis-use-after-free/

by DrNemski

7/22/2026 at 4:45:58 AM

> Harder still is when the cause of the bug happens prior to its manifestation.

I've yet to debug a big where the manifestation happens prior to the cause... Sounds even harder. :p

by toast0

7/22/2026 at 6:18:31 AM

> I've yet to debug a big where the manifestation happens prior to the cause... Sounds even harder. :p

UB in C++ can have the manifestation occur prior to the cause :-/

by lelanthran

7/22/2026 at 10:49:16 AM

Paragraphs and paragraphs of shaggy-dog setup, then "a coworker enabled ASAN and reported a bug [here]" with no elucidation. Disappointing.

by StilesCrisis

7/22/2026 at 2:00:09 AM

Thank you very much! This is great read! Though, no actual steps mentioned, including the:

> From this, he ascertained that the exception was triggered by a call to the C function memmove. While the source and destination addresses for this call looked sane, the size field was set to...

I do get the most of these stated, but it would be awesome to know more about how he did actually find it, and with what toolset. Was is gdb, Valgrind, JetBrains, IDA Pro, or some another general/complex dump viewer/toolset?

And, the interactive miracle, at the top of the website is freaking marvelous... It reminded me of the articles of the fluid simulation algorithms of Yusuke Endoh! Heartfelt gratitude to the developer, the artist who implemented it!

Apparently, behind the scene, the fluid colors are contained in an array where every single color has a defined meaning!

     // categories in STACK order: index 0 at the floor → 4 at the surface
     const CATS = [
       { key: "Code", rgb: [133, 232, 157] },
       { key: "Craft", rgb: [179, 146, 240] },
       { key: "Lessons", rgb: [249, 117, 131] },
       { key: "Story", rgb: [255, 171, 112] },
       { key: "Opinion", rgb: [158, 203, 255] },
     ];

by serious_angel

7/22/2026 at 2:43:37 AM

> And, the interactive miracle, at the top of the website is freaking marvelous

That's the work of https://x.com/CoreyGinnivan.

by pinzonjulian

7/22/2026 at 2:49:10 AM

Roger that! Thank you for the reference to the Artist!

by serious_angel

7/22/2026 at 2:49:56 AM

Thanks! This happened two years ago and it took me quite some time to piece together all the information of when it happened. I will see if I can get the original gdb output and add it to the blog post.

by DrNemski

7/22/2026 at 3:00:20 AM

Roger that! I'll look forward for an update, and hope to catch the moment and learn from it!

Meanwhile, I do wish you, and the whole team, success, stability, and peace!

by serious_angel

7/22/2026 at 7:20:04 AM

Thanks! I’ve added a screenshot of the gdb output to the blog

by DrNemski

7/22/2026 at 1:50:45 AM

That makes no grammatical sense.

by VerifiedReports

7/22/2026 at 1:56:11 AM

A (flaky test) exposed a (Redis client) use-after-free [bug]

by paulannesley

7/22/2026 at 1:52:37 AM

Works on my machine. (Even though HN's filters removed the leading "How")

by Retr0id

7/22/2026 at 1:57:10 AM

I don't think you're replying to the right comment, since I didn't mention anything working.

by VerifiedReports

7/22/2026 at 1:58:04 AM

The "machine" in question is my brain (or at least, the part of it that parses grammar).

by Retr0id