title: Why is the range of the timestamp type 4713 BC to 294276 AD?
body: <p>Postgresql has a <code>timestamp</code> datatype with resolution 1 microsecond and range 4713 BC to 294276 AD that takes up 8 bytes (see <a href="https://www.postgresql.org/docs/current/datatype-datetime.html" rel="nofollow noreferrer">https://www.postgresql.org/docs/current/datatype-datetime.html</a>).</p>
  <p>I have calculated the total number of microseconds in that range as (294276 + 4713) × 365.25 × 24 × 60 × 60 × 1000000 = 9.435375266×10¹⁸. This is less than 2⁶⁴ = 1.844674407×10¹⁹, but also more than 2⁶³ = 9.223372037×10¹⁸.</p>
  <p>I might be off by a few days due to calendar weirdness and leap years, but I don't think it's enough to push the number below 2⁶³.</p>
  <p>So, why were the limits chosen like that? Why not use the full range available with 64 bits?</p>