Earlier quoted context omitted.
I think it is a horrible assumption to think that Reddit won't grow and will take exactly the same length of time to double the number of unique ids required. But still 64 bits should be plenty for a while. And presumably if it comes closer to using that many they'll have enough time to switch to 128
Doubling the number of bits does not double the number of values, but squares it. 2^31 seconds is 68 years, a middling human lifetime. 2^63 seconds is 290 billion years.
Reddit's photo albums broke due to Integer overflow of Signed Int32
121–130 of 142 posts
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#122Earlier quoted context omitted.
I think what your describing was actually a problem that I introduced in our bind configuration back when we used DNS for service discovery. Its not exactly what your describing but I can totally see how it would appear that way externally. So initially we used 2 bind servers with authoritative zones serving using round robin. This worked fairly well as the load on each server was high enough to keep the round robin…
This is awesome and completely retconning a 10 year old project for me. I was working on social media analytics at Disney and we were exploring ways to measure twitter conversation of our brands, which led to us attempting to estimate total conversation volume, which is why this technical nuance was relevant to us. It was a wildly experimental time. Thanks for the story!
I will have an especially hard time phrasing questions in a respectful manner for the Adobe devs, though ))
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#123I'm just curious, I know it's a long running joke about how we're so stupid to think that we would never run out of unique digits with 2^32 possible values, but is this also the case with 64 bit values? Every new bit doubles the amount of information, so if 32 bits lasted reddit 10 years, presumably 33 bits would last them 20 years, 34 would last 40 and so on. Eventually, 64 bits would last them 10×2^32 years, which…
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#124Earlier quoted context omitted.
This is awesome and completely retconning a 10 year old project for me. I was working on social media analytics at Disney and we were exploring ways to measure twitter conversation of our brands, which led to us attempting to estimate total conversation volume, which is why this technical nuance was relevant to us. It was a wildly experimental time. Thanks for the story!
This thread is amazing.. thank you both for sharing!
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#125I'm just curious, I know it's a long running joke about how we're so stupid to think that we would never run out of unique digits with 2^32 possible values, but is this also the case with 64 bit values? Every new bit doubles the amount of information, so if 32 bits lasted reddit 10 years, presumably 33 bits would last them 20 years, 34 would last 40 and so on. Eventually, 64 bits would last them 10×2^32 years, which…
"we assigned everyone 9 digit phone numbers, but that ran out after 50 years of population growth led to over a billion people. Now we assign everyone an 18 digit phone number. Personally, I'm worried we might run out in another 50 years."
Infinite options at that point.
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#126Earlier quoted context omitted.
Awesome to hear from someone on the other side of the API with knowledge of this. This is ringing bells for me. Yeah, the id parameter was how we knew how many servers there were, and we saw more assignment in some servers than others that neatly mapped to a int32 max failing to divide by the number of IDs we saw. I thought I recall Twitter confirming that was how round robin happened but I could be totally misrememb…
Also, totally unrelated Twitter story (because I am nostalgic lately and you reminded me of it) Early in my time there we had a major, unexpected load spike in the middle of the day. People where tweeting like crazy, breaking records for volume, etc. The system was groaning under strain but it mostly held. Turns out Michael Jackson had died. We sustained 452 (or maybe 457, it was roughly 450-something) tweets a secon…
[1]https://twitter.com/elonmusk/status/1595505413113323520?s=20...
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#127Earlier quoted context omitted.
"we assigned everyone 9 digit phone numbers, but that ran out after 50 years of population growth led to over a billion people. Now we assign everyone an 18 digit phone number. Personally, I'm worried we might run out in another 50 years."
We should've dropped phone numbers and just make it like email - dial person-name@verizon Infinite options at that point.
I feel like there's also implications for spam, like you want to target X demographic, all you have to do is try numbers with common name combinations from various cultures. Like in Nathan For You when he made a targeted billboard for a psychic that said "Maria Garcia, I had a dream about you" so all the Maria Garcias who saw the sign would become potential customers.
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#128Earlier quoted context omitted.
Awesome to hear from someone on the other side of the API with knowledge of this. This is ringing bells for me. Yeah, the id parameter was how we knew how many servers there were, and we saw more assignment in some servers than others that neatly mapped to a int32 max failing to divide by the number of IDs we saw. I thought I recall Twitter confirming that was how round robin happened but I could be totally misrememb…
Also, totally unrelated Twitter story (because I am nostalgic lately and you reminded me of it) Early in my time there we had a major, unexpected load spike in the middle of the day. People where tweeting like crazy, breaking records for volume, etc. The system was groaning under strain but it mostly held. Turns out Michael Jackson had died. We sustained 452 (or maybe 457, it was roughly 450-something) tweets a secon…
Kind of obvious now, but I bet we could detect major world news just by sampling traffic size of chat sites.
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#129Earlier quoted context omitted.
Also, totally unrelated Twitter story (because I am nostalgic lately and you reminded me of it) Early in my time there we had a major, unexpected load spike in the middle of the day. People where tweeting like crazy, breaking records for volume, etc. The system was groaning under strain but it mostly held. Turns out Michael Jackson had died. We sustained 452 (or maybe 457, it was roughly 450-something) tweets a secon…
Musk claimed a record of 20,000 of tweets per second recently [1]. How does that square with what you’re saying? 300 times 450 is closer to 150,000. Am I missing something? [1] https://twitter.com/elonmusk/status/1595505413113323520?s=20...
The event also did not reach 20,000, it "almost" hit it.
Re: Reddit's photo albums broke due to Integer overflow of Signed Int32
#130A long time ago we discovered Twitter used a round robin of three servers for assigning IDs to tweets. We inferred the round robin was done by doing mod 3 of a signed int32, and because that space doesn't divide neatly by two it meant one of the three servers saw less load than the others and we could map ID assignment volume according to how often it overflowed and hence estimate total tweet volume for a given perio…