Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbOIY-0003CS-Ki for pgsql-bugs@arkaria.postgresql.org; Wed, 20 May 2020 12:58:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jbOIX-00029t-IV for pgsql-bugs@arkaria.postgresql.org; Wed, 20 May 2020 12:58:13 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbOIX-00029m-CC for pgsql-bugs@lists.postgresql.org; Wed, 20 May 2020 12:58:13 +0000 Received: from feynman.df7cb.de ([195.49.152.168]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jbOIU-0003A5-9S for pgsql-bugs@postgresql.org; Wed, 20 May 2020 12:58:12 +0000 Received: from msg.df7cb.de (unknown [IPv6:2a02:908:1474:3de0:76e5:bff:fef3:7e00]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by feynman.df7cb.de (Postfix) with ESMTPSA id 49Rt8c19mxz3DwZ for ; Wed, 20 May 2020 14:58:08 +0200 (CEST) Date: Wed, 20 May 2020 14:58:07 +0200 From: Christoph Berg To: PostgreSQL Bugs Subject: time values past 24:00:00 (or rather 23:59:60) Message-ID: <20200520125807.GB296739@msg.df7cb.de> Mail-Followup-To: Christoph Berg , PostgreSQL Bugs MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is ok: # select '23:59:60'::time; time ────────── 24:00:00 # select '23:59:61'::time; ERROR: 22008: date/time field value out of range: "23:59:61" This is not ok: # select '23:59:60.999'::time; time ────────────── 24:00:00.999 -- value isn't read back: # select '24:00:00.999'::time; ERROR: 22008: date/time field value out of range: "24:00:00.999" -- we can even go to :01 # select '23:59:60.9999999'::time; time ────────── 24:00:01 PG 12.3. Christoph