← Back to context

Comment by villuv

5 years ago

IBM Java 1.1.8 that was embedded into Lotus Notes 5 (if I remember correctly) didn't have 29th of April if it happened to be on Tuesday.

When you constructed a Date object of 29th of April with such a year that it was a Tuesday, you get the 30th of April when you read back the value. Took a while to figure out why date calculations were sometimes off. The flux of expletives was impressive when we finally did...

Any ideas on why it happened? I'm impressed you found that bug though.

  • No idea, it was years ago. JVM-s were extremely buggy. We were quite n00bs at that time also so we didn't dig into the depths of it, we had to fix production issue that we had already spent a lot of time on. We found the bug by just narrowing down a broken case further and further. Finally we wrote a code that just tried a range of dates one by one over several years to find out the pattern. Unfortunately it wasn't possible upgrade the JVM as it was embedded into Lotus Notes, so we wrote our own date implementation (yay!) that satisfied our needs. It was fixed on later Notes version, but our sh*tty date implementation lived much much longer...