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 1voGC4-00HZ52-0r for pgsql-bugs@arkaria.postgresql.org; Fri, 06 Feb 2026 07:23:56 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1voGC2-002VUf-1W for pgsql-bugs@arkaria.postgresql.org; Fri, 06 Feb 2026 07:23:54 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1voGC2-002VUX-0Q for pgsql-bugs@lists.postgresql.org; Fri, 06 Feb 2026 07:23:54 +0000 Received: from mail-lj1-x22d.google.com ([2a00:1450:4864:20::22d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1voGBz-00000001K3n-23lw for pgsql-bugs@lists.postgresql.org; Fri, 06 Feb 2026 07:23:53 +0000 Received: by mail-lj1-x22d.google.com with SMTP id 38308e7fff4ca-382fb535b73so16750461fa.0 for ; Thu, 05 Feb 2026 23:23:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770362630; cv=none; d=google.com; s=arc-20240605; b=DZWhUi4rZvxozR0oIae0MZKeLZtCUTe3qj+KMKyiuNuNSX4Po1zuplT75SExaGptDq JggvLjz4wAEQ2p+0AaeygbM5m9s6sxbwmztdjK5Ra+6eMnJFNbdOHXQVkXZKLvLccRRO yH3mhIuNsunhXLTjq1GOUQxy0NniyPkkTf0WxIo4QBiNC2kow0Fvd6+19FIbLuIZ9lrG FSaTqO3FKVr1HaTAC8nG145cAftX2cxIjVeXGVYHOy/7A72Ol3T+8v+elmmUEzqTjEiC 3GafiW95tPtuN68Bh2hUoODBkJbbkbY+ZdAR4UaZ3Ird6WnEoX+8EFUpY3RyGtwBUozW kWLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=323QtoRBNPQ3cs2pFUcjmSRQsJsL20UkaCrB62wHTiM=; fh=IOoxKCz/ZrD0QDkag5ddZAKLbNfQxOhbTOMNoZxQYD8=; b=ZBTUK2CPxXimmrqQY1rQ840WfiPODaSfuIiU36kGaO0xDoflNxeEg94tZxS9vEWIlr csmzgnLbYlvf7zEVM8/N3lrSFrZxPKFcWIK8EBmw6ps50PC/nK4bSBV7wzLTeuVdnmnZ OU0a87In59E9TfIVT51Q9ax9X5bCu8FXPD86GRMngSnNronwYPYxo1ciN/Nu/KbdZQOo sCWLL7j4muW/2Vf4vVcQxue95gfQcpjfMzWaXIk2V/CiEzhsTruBdbyZiNX4hKMhIvHZ ZrB4rHmkSz2K7VBY4+HqhjLqtrzLtjrQa3vwRrjaS9n7Wrbxj/fvr+zvVmDBafxmh8ws ZnKQ==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770362630; x=1770967430; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=323QtoRBNPQ3cs2pFUcjmSRQsJsL20UkaCrB62wHTiM=; b=YDLy8UZGAaothKkOctQ6GDuk7VAMovIiRSG9Y9W0i/iS/cjdChtVc01JCQ6WYLQe43 h0t+1x28EbelG5/T48jfuK7OMzMzvBT52qD3wncui0K3HJlzK1c3Yyr6+K1TOYmcTIW6 JMlQm+WUcNF+qhof81Rdal+L27gE++9gZQbxzp01qkWa/vmJEFfwAUHGDRclI5tX3Bz1 hZXc96hZ7QerGr97UnwC284wu5SY20ITa+lFM5N2oT+qysg/uTBwv4RS0ag0eyys+clJ MfW5D9JDIa7FFzIOmq9w2L7gmci5kdf3oAHy3QxfoiwEoMu+KXpeZbIcPWR0rG3fIL8E IOKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770362630; x=1770967430; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=323QtoRBNPQ3cs2pFUcjmSRQsJsL20UkaCrB62wHTiM=; b=UBYkwSa2y5A178ckAqUn3vgng3gLSzG/P4eHy9OSMXY6/XkLYYVpwYzJuzoI8cuGvQ FSZMdEMJ2e2EIUjg4F53pjtVBRMrjWRufCb30VoaRhVb1cya9ns615qatHy9or8FVJ6A 3JYgPp8vSgnTEI2AwrCuZwXlwnzsdfiziX1UB2mCLT1wh82o9IPnOlDGNCjLIVsHGbRL KkxQXLyWKLFNf8bpWnyAGkfhU4sw30BzkZ5ptFUPeLeQqPnqfT3b/lrp0tJoLRd+zI7L uZMkXtSVfFlD039KK3GC7EXrPHorGvE3ZHRjKjcrFD3lEbNa2ydvCev/jmlkyMnK1zJw b9pg== X-Forwarded-Encrypted: i=1; AJvYcCX75x+VpmnQdRwFk4fU3w1kTdYLpXl4F1VlZepVLpHHBhIsvSQU5I00LWn4T1Tm63neTWLYiQeJjviB@lists.postgresql.org X-Gm-Message-State: AOJu0Yy60hER0vvaswzgw3m8+mJ1WukVW2IWWESAhfWMRPq0hqSQTZuz wImpLTS16w+JxXSagx6K1ZJE7h2oBT298SMy/SAB7+FO5K7oPS/ioTVHtDXT7ShNowe8CFA8M5i 737PFnaWKsueLJztNuI06RmldmBx9LYwlQplx X-Gm-Gg: AZuq6aL9vhtQpmK3zNyCOmpjk950a6cOsuYwF1Sacj/ScXbXfEY1GxmBUdKcQfqaCIi IFSiEqx2zlJjk3RhaJbinzyWS6UbFuP3GWPHkUhTjPXeC+84LUwEsOGwxeSWI69ULvf/S9N5As7 p0d5Mkm9dUJx37HBUrXPAxNJx0D79U0ZC5tIrnpuDYEVSiN/gaSmCubVrz8B20UcMzbbqzLMgVK RxaBbo/6sRF+4CVl8tOmQgJrYu3GVct0NQ8NNf+qzJPNJ4DVyOS9IszlXWQhdBzdYbmh4k= X-Received: by 2002:a05:6512:39d4:b0:597:d6f0:8816 with SMTP id 2adb3069b0e04-59e450444bdmr455398e87.7.1770362630086; Thu, 05 Feb 2026 23:23:50 -0800 (PST) MIME-Version: 1.0 References: <19393-6a82427485a744cf@postgresql.org> <2b3a2cd5f9b6e82fba6ac45b413291b01dd252ea.camel@cybertec.at> <61c535617992fff830961ecc09a9c20096bc1f36.camel@cybertec.at> In-Reply-To: <61c535617992fff830961ecc09a9c20096bc1f36.camel@cybertec.at> From: Dilip Kumar Date: Fri, 6 Feb 2026 12:53:33 +0530 X-Gm-Features: AZwV_Qj1m6XsbJMaF9ZvCLv1ex0Ira6HqhEvICeHlFlZUi_kgGNwQo55fdCltOI Message-ID: Subject: Re: BUG #19393: pg_upgrade fails with duplicate key violation when CHECK constraint named *_not_null exists To: Laurenz Albe Cc: huseyin.d3r@gmail.com, pgsql-bugs@lists.postgresql.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, Feb 5, 2026 at 10:22=E2=80=AFPM Laurenz Albe wrote: > > On Thu, 2026-02-05 at 15:58 +0100, I wrote: > > The bug is actually not in pg_upgrade, but in CREATE TABLE. The attach= ed patch > > fixes the problem for me by avoiding given constraint names when genera= ting > > the names for NOT NULL constraints. > > ... and here is v2, including a regression test. The fix LGTM. However I have one question, have you considered validating the name selection logic for other constraint types as well? I=E2=80=99m specifically thinking about AddRelationNewConstraints(). While I don't have a specific test case yet, is it possible for the AddRelationNewConstraints to choose a name that is already in use when adding a new column with a constraint? --=20 Regards, Dilip Kumar Google