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 1p1DTH-00019I-HI for pgsql-bugs@arkaria.postgresql.org; Fri, 02 Dec 2022 21:21:23 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1p1DTG-00047o-DD for pgsql-bugs@arkaria.postgresql.org; Fri, 02 Dec 2022 21:21:22 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p1DTG-00047f-0f for pgsql-bugs@lists.postgresql.org; Fri, 02 Dec 2022 21:21:22 +0000 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1p1DTD-0007j4-Bh for pgsql-bugs@postgresql.org; Fri, 02 Dec 2022 21:21:21 +0000 Received: by mail-pl1-x62d.google.com with SMTP id p24so5771061plw.1 for ; Fri, 02 Dec 2022 13:21:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20210112.gappssmtp.com; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=qP/B3eKgHs48qsxdvG8PwTL5HBIw0MtPS5qi59XOUBA=; b=O81CePq9hcioOeMQqdwae8EL8806GmJmqGOCq8dgykaWtsOOfNeIH2WNYwfqyx3G2i M/a0ziHSv8Cy/Qt2/Z0B/Np5gJ7H9FLsu2/1C7ngFLOSMWcCfTn5GyE6ymW8au7czOg7 4O0NO/gbkfIqhpvHTTf51hA4uhSn249z4SGgx3fIIAkmIJCt42DGnJOCE4H17g6LSC9n bga/00F8+eL3OvN7jne5BHY0e3SMV4fd0f4Cb/rHvNe5vS9IQsY9Cb0b7nstUI4nvB5p dhW4rM5NzaQdPW8CpvQlBEabw293f7kyPFc0zD33uWDfANjBLXT9yDWOmRouv1lZT3TT u+rA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=qP/B3eKgHs48qsxdvG8PwTL5HBIw0MtPS5qi59XOUBA=; b=Zwx6GLSgOE3LCd8elyBqZwT8pXNEjcCPEzO6zKrCexRvmnDyBpgznjfXIumupvFHZa v7bW8q8fhZnkqN27R+VhRFnQi0XlyZVzqd8YeyyFkNkWeZXqlAr8AoWDXzq+ziROmsfg QZHP7mR5FHboZSAqLg6VNMYQaw3ue24Qc9ZTko7reMtWDP3gWVJwNzLA8lbJJVd+HpZg wvWmJ6XbUbgQMAFK8JDYn4E2bTyYrWY5jSoej1HFGrBDgpYmPMAEMgxJ2FuNjHvlcC4x A5Wpj41gt/N/ICQdSpsCjp6HLCm0/AKf5hwNoS2SShaDRMAvO/ihPuV6EsgHhZzPkM70 Bjew== X-Gm-Message-State: ANoB5plV+q2QQjgF9wPYhY4jmXzNvnY/JJ5AANLKWbmcilmiGUaz63Cl RYRlRwHsxy3eq9DiaSGadZnUUQ== X-Google-Smtp-Source: AA0mqf50IKH8HDoJ/56F7npcNqrCHDzSmaN222x1zPlCRkqZ4oiwJKhDvF7IUPJNOqUPnNqO+btmkg== X-Received: by 2002:a17:902:da88:b0:189:967b:97a5 with SMTP id j8-20020a170902da8800b00189967b97a5mr23557300plx.40.1670016077273; Fri, 02 Dec 2022 13:21:17 -0800 (PST) Received: from jeff-laptop.lan (c-73-231-146-4.hsd1.ca.comcast.net. [73.231.146.4]) by smtp.gmail.com with ESMTPSA id d14-20020a170902654e00b0016c0c82e85csm5996111pln.75.2022.12.02.13.21.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 02 Dec 2022 13:21:16 -0800 (PST) Message-ID: Subject: Re: hashing bpchar for nondeterministic collations is broken From: Jeff Davis To: Richard Guo Cc: pgsql-bugs@postgresql.org Date: Fri, 02 Dec 2022 13:21:08 -0800 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.44.4-0ubuntu1 MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, 2022-12-02 at 10:30 +0800, Richard Guo wrote: >=20 > I'm not familiar with the backporting policy, but I also think we > need > to as this fixes an obvious oversight. The standard I use is that backpatching something should be safe enough that users feel safer updating to a minor release (containing ~100 such fixes) than *not* updating to a minor release. The only demonstrable problem that I'm aware of[1] relies on an undocumented type (undocumented before 16, that is) combined with a non-deterministic collation and hash partitioning. The intersection of those users is likely to be the empty set. But assuming someone does use that combination of features in 15.1, and we release 15.2 with my fix in it, then the consequences could be severe: a pg_dump with default options on their bpchar- nondeterministic-collation-hash-partitioned table in 15.1 would be unrestorable in 15.2. They'd need to take a new pg_dump from 15.1 with "--load-via-partition-root" and then restore it in 15.2. Obviously that would be bad in any case, but it's more tolerable going between servers of different major versions. So, given that this fix is unlikely to help many people in 15 and earlier, and that there's a chance that the fix is really painful for someone; I'm electing not to backpatch it. [1]=20 https://www.postgresql.org/message-id/7692740d4736e79032a5dac689cf2e304c03f= a78.camel@j-davis.com