Live data from Hacker News

Chess.com stopped working on 32bit iPads because 2^31 games have been played

chess.com

31–40 of 338 posts

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#31
post #7
post #2

Real world example of why Apple is killing 32 bit apps on iOS.

This has nothing to do with CPU architecture.

"The reason that some iOS devices are unable to connect to live chess games is because of a limit in 32bit devices which cannot handle gameIDs above 2,147,483,647."

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#33

"This was obviously an unforeseen bug that was nearly impossible to anticipate..." Snarky... Except that there were probably years of games to notice that you were approaching a "magic number" like 2^31.

I actually read that quote as fully sarcastic.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#34

It's fascinating... the Y2K problem never came to fruition because - arguably - of the immense effort put in behind the scenes by people who understood what might have happened if they hadn't. The end result has been that the entire class of problems is overlooked, because people see it as having been a fuss over nothing. I sometimes think it would've been better if a few things had visibly failed in January 2000.

Similar to how much effort goes into dealing with things like dangerous strains of bird flu, only to have people complain about how much money was spent on "nothing" when an outbreak doesn't occur.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#35
post #24
post #8

Self-confidence as a programmer is when starting a new project, storing the transaction ID as a long rather than an int...

Or UUID...

I pick UUIDs because experience has taught me that even for the smallest workloads, I'll inevitably have to shard my DB (to partition a shared public cloud from N isolated "enterprise" deployments), and then will inevitably want to do statistical-analysis things that involve ingesting rows from the shards (or log entries referencing those rows), and deduplicating them by ID, without generating false-positive collisions in the process.

The simplest way to do that is to just throw UUID at all problems from the start. (https://github.com/alizain/ulid s are better, but there aren't libraries to generate them in literally every language + RDBMS.)

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#36

It's fascinating... the Y2K problem never came to fruition because - arguably - of the immense effort put in behind the scenes by people who understood what might have happened if they hadn't. The end result has been that the entire class of problems is overlooked, because people see it as having been a fuss over nothing. I sometimes think it would've been better if a few things had visibly failed in January 2000.

> I sometimes think it would've been better if a few things had visibly failed in January 2000.

Having to spend billions of dollars on programmers' goofy means of saving a few bytes of memory is a pretty visible failure.

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#37
Long long time ago, I created a poll on a small website I was maintaining. I didn't expect much traffic and, so, not thinking too much about it, I put the ID column to be a TINYINT (i.e. max value = 255)...

That was a valuable lesson.

(I actually generated most entries myself while testing stuff - live in prod of course - and while there were probably fewer than 255 votes, the AUTO_INCREMENT did its job and produced an overflow).

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#38

This reminds me YouTube changed its view counter from 32-bit integers to 64-bit integers due to the popularity of 'Gangnam style' https://www.wired.com/2014/12/gangnam-style-youtube-math/

That was a joke; it was always a 64-bit integer.

WHAT?

Re: Chess.com stopped working on 32bit iPads because 2^31 games have been played

#40

It's fascinating... the Y2K problem never came to fruition because - arguably - of the immense effort put in behind the scenes by people who understood what might have happened if they hadn't. The end result has been that the entire class of problems is overlooked, because people see it as having been a fuss over nothing. I sometimes think it would've been better if a few things had visibly failed in January 2000.

I never have thought this way. If this is true then there should have been highly visible media campaign to point this out.
Post reply on HN