Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w4fmq-002R3P-1u for pgsql-admin@arkaria.postgresql.org; Mon, 23 Mar 2026 13:57:44 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w4fmp-000RNg-0O for pgsql-admin@arkaria.postgresql.org; Mon, 23 Mar 2026 13:57:43 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w4fmo-000RNS-2Z for pgsql-admin@lists.postgresql.org; Mon, 23 Mar 2026 13:57:43 +0000 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w4fmn-00000000dIe-103c for pgsql-admin@lists.postgresql.org; Mon, 23 Mar 2026 13:57:42 +0000 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-487035181a7so14463585e9.2 for ; Mon, 23 Mar 2026 06:57:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=google; t=1774274259; x=1774879059; darn=lists.postgresql.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=1igSUctexByi4eXM1VLODpAIhMjbwTT4eS0OVzdknIs=; b=dQOL7AO+/04qHMdhoJBfeRdEGp2jS0A+VNped9V/uOozuR+DWj/ZKMtLnB6cdFEk1q MSGEra1OuVGRduDhof815qgwlMZLcAVVXVzfTIHmPoLXiSaOLUUZ1SUNAmbECfYwZDSX HotQW/DamFMbSRdOoHrJIsFt8MPyPOkw5wgbREfdUH3yt3rFVtepFYzJmkXqg2VOBmZN hQWoF0YktSG3ME58kiRTiyEMFur1VFeh3e8CeS50PNGIXlwOSxbYqjpykLVfgkfrvbW+ 0pbiujIf9XYJ8OVXkeECdjtPaa7+AKTFRW9EpHdIM0sUSQrHkhUpfOaMVQp5OXjqiOqY j42Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774274259; x=1774879059; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1igSUctexByi4eXM1VLODpAIhMjbwTT4eS0OVzdknIs=; b=JLjb9SaLfl7I8UtZHjoLmuUr9YL1XG6uiYzy5tAOa0/W548DPFUdpFJG8pfzpkgRYm 4PLoqRVZMthrGXUpTPEuV0rf6MWAqr+HJM3jBSsocW2TXs6gZT3t+9QRYTFnkDoOsLSF Z2cG+VMDBmfxWw0U9yll7c5EAVWOchEIDFPGk+1GK/OgvszhTMmR/y/xeUdMj/oLbK/B KcT3zFHUwWm0XT+vZVMVyr+i2BPzAEA0PYpZqX1XW/yWQgTM0Eyp6DWtaDczeynRPQG3 B0DI1oG5jg7BhxQJE5p0C98k5KpRMfdXmXmJskjRFtFCLMzQ3JX40HEhuz80ptX4bkgl 5p4g== X-Forwarded-Encrypted: i=1; AJvYcCV361oZ03bPWY9Mj7n8anmDDljg36pGySBH8S9Af72l86ihj9812z9FEQL0nqH1FNvZbyoszsE2Ci9A/w==@lists.postgresql.org X-Gm-Message-State: AOJu0Yyvch/PBlSsMLIZne+6UyVcg0W9C42NSTp33iJi2iH8HzTYmBQ2 KKtamp8v7ac0lsuuOm5P/BK2GlsO5mkO9vi+ABBgvUOKmMYeCnks3h++ZLQk1NnWWnw= X-Gm-Gg: ATEYQzwQUA4zR119OmAaoDMG2LxRiibTGL6x01o6T3i4T9Bi/8qd8ZLMDeXrgQHhpzL /NpnaCbe25v10ZxIjHDnN8x9wjtARGML1dcUYDNTNt9uYNYgpFjDffAS4i7ORClTWntL+WF7kZK TKNDJavF/KtJRWvJcajvyGrrz8dRK4umwCwLBC6r10N7nie7qv0yRGYHCX6vw+D6EoFdwI1RuHs eiJ9h0hmBqvQJjrDw3Qk0cIAHBR2Sgqe4Jbl4HbZfY/CVP8hYFMBAI5MEpkTGao5sZ9LxmXrTqb FV8we6K/ziszUaGgzelZ/ZpS1ANeNBbR15+VHowMXme1yupImdjKDDvr1wa6hQH1lSb0iBQVMjt H3XBQOrut3KKmZH3xdcts6KbdkJwi16isd92OIaXkzzHByrisGGCPIq/Qn1762TDOUON84lZJxk hsriTmLB0n4ovA2XYB57VjTgMzk4fN0HYF8Wn2YAUgcRJ3iTJK88ozXA== X-Received: by 2002:a05:600c:468b:b0:477:54f9:6ac2 with SMTP id 5b1f17b1804b1-486feb5f9c1mr182921105e9.0.1774274258394; Mon, 23 Mar 2026 06:57:38 -0700 (PDT) Received: from laurenz.albe-K4N0CV00F97414D ([2001:871:70:809b:1e6a:2037:fdcf:bd81]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486ff1e6029sm141384995e9.9.2026.03.23.06.57.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Mar 2026 06:57:38 -0700 (PDT) Message-ID: <4b3b47cbf91c31767d99222a9a849827f7e01620.camel@cybertec.at> Subject: Re: Technical validation on altering atttypmod for numeric column in PostgreSQL From: Laurenz Albe To: Holger Jakobs , pgsql-admin@lists.postgresql.org Date: Mon, 23 Mar 2026 14:57:37 +0100 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.58.3 (3.58.3-1.fc43) MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, 2026-03-23 at 14:47 +0100, Holger Jakobs wrote: > > UPDATE pg_attribute SET atttypmod =3D (18 << 16 | 4) + 4 WHERE attrelid= =3D 'table'::regclass =C2=A0AND attname =C2=A0=3D 'column'; > >=20 > > =C2=A0=C2=A0Is this approach considered safe from a data integrity > > =C2=A0=C2=A0perspective? >=20 > this change can lead to problems, because numbers with more than 16 digit= s before the decimal > point wouldn't fit into the new data type. Aww, right. Goes to show how dangerous such operations are. Yours, Laurenz Albe