Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hP63P-0002it-B3 for pgsql-hackers@arkaria.postgresql.org; Fri, 10 May 2019 13:59:15 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hP63N-0002QM-Ln for pgsql-hackers@arkaria.postgresql.org; Fri, 10 May 2019 13:59:13 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hP63N-0002QF-7s for pgsql-hackers@lists.postgresql.org; Fri, 10 May 2019 13:59:13 +0000 Received: from mail-qt1-x844.google.com ([2607:f8b0:4864:20::844]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hP63J-0001xw-P8 for pgsql-hackers@postgresql.org; Fri, 10 May 2019 13:59:12 +0000 Received: by mail-qt1-x844.google.com with SMTP id o7so6678617qtp.4 for ; Fri, 10 May 2019 06:59:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=2ndquadrant-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:mime-version:content-disposition :content-transfer-encoding:in-reply-to:user-agent; bh=NvMuJyZ51YYXIzBJxabjmqs4w7yZQy5Xbgf4Zxrp7Jo=; b=RFeD7UKJwtuCPZwqjxPNqULkkVPA6LLWHOj4byoUscu0QiBJcmpik4W7OyGJ/nC3zA 1nvA0qqBM9LuP+D5ovuqcSqmNTPcxAkUV1p/9PvK0qs8f5N2ESSynZnP8ZvIg3LRXtr6 Sx9j48MNHvgymZfumiLfZsOHjWIxZSg3jXu7QIRg9TJ+iWJMJ0pFV6DETspn/3N0RxLo 1rQWMKZ9pLOQDHdQIAKvIxsmm32QaGPgamkWldYDKgQoIOMsTKexHCUQVQrJMxOHv8OF IpbGhNfSkJ1haBaue+ZI9bAydXKkR3K0bkyGF+JeFKEDA14NoL/bOzc91Spi0hn/jg0D xPwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=NvMuJyZ51YYXIzBJxabjmqs4w7yZQy5Xbgf4Zxrp7Jo=; b=JLWics9yD6fcZqDyA6QUnUC/DxUFiRTqmayiv0ChYBmeIFX4oJQkFwrODr1u4SKLZS kylhqO8m6ZhzT6a8FvAYbO+Eao7eoCzid2xW+vivR5EUxywRBzPZcyJNttXEvgGF0gJB cOXe3GT5W8EfFieVW4/65ivuJx5jox1S068yCSJn6lc3j1NllqkZCSMRirPwNXVeoEEL hADrOGLd3ABuAFHA6O5lgTlPVy8httIrZvRip7B3pr3AdxnWMUnwSEVxMhvo3a9VNVxp IzE0J+sqVDWnHebT+6LjG7JXaAv1Au8nVFhFbavNA10Zp1qDgHd7NKzM8N8A8F/L95bB Hazg== X-Gm-Message-State: APjAAAXUDKdlqPcEj1UxOm5wt3eKnc4W2exQaOpTfeFOB0uXzxLpYdGB Sfsz0UsFCuuHNLS7vUwa2l/nfQ== X-Google-Smtp-Source: APXvYqw1aNWcCM7gKFcPV8Jg5R+PP2C2u1k2kJfevZgkRuPsPdTbk5MbxIh2rl6KqTRf8zFVkpuc1A== X-Received: by 2002:a0c:b92c:: with SMTP id u44mr9090075qvf.225.1557496747993; Fri, 10 May 2019 06:59:07 -0700 (PDT) Received: from nimloth.alvh.no-ip.org ([179.56.30.197]) by smtp.gmail.com with ESMTPSA id o44sm3812165qto.36.2019.05.10.06.59.06 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:59:07 -0700 (PDT) Received: by nimloth.alvh.no-ip.org (Postfix, from userid 1000) id D77AA120C22; Fri, 10 May 2019 09:59:04 -0400 (-04) Date: Fri, 10 May 2019 09:59:04 -0400 From: Alvaro Herrera To: Amit Langote Cc: David Rowley , Bruce Momjian , Justin Pryzby , PostgreSQL-development Subject: Re: pg12 release notes Message-ID: <20190510135904.GA32055@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <17a07ed6-4d17-838e-2a8f-fd125c22e03e@lab.ntt.co.jp> User-Agent: Mutt/1.9.4 (2018-02-28) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk On 2019-May-10, Amit Langote wrote: > On 2019/05/10 12:18, David Rowley wrote: > > On Fri, 10 May 2019 at 12:08, Bruce Momjian wrote: > >>> 17f206f Set pg_class.relhassubclass for partitioned indexes > >> > >> I need help with this one. I know the system column existed in previous > >> releases, so how is it different now? Do we document system table > >> changes that are implementation-behavior in the release notes? Usually > >> we don't. I very much doubt that the change is relevant to the release notes. > > This appears to be fixing something that likely should have been done > > in PG11, where partitioned indexes were added. > > That's true. We (Michael and I) felt the need to do this change, because > it allowed the pg_partition_tree() code (which is also new in v12) to use > the same infrastructure for both partitioned tables and indexes; checking > the relhassubclass flag allows to short-circuit scanning pg_inherits to > find out that there are no children. I'm of two minds about backpatching that fix. In pg12 it makes sense to have the fix, to allow the SRF functions to work correctly. Since we don't use that flag for partitioned indexes anywhere in the backend in pg11, it seems pretty useless to have it there. On the other hand, if any user tool is inspecting catalogs, it might fail to point out descendants for partitioned indexes, if the user asked for a report... but frankly I doubt there are any tools that do that, or users that care for such a report, or even that that report exist ... and even if that report existed, I doubt that it would optimize out the read of pg_inherits by checking relhassubclass beforehand. Still, it's an inconsistency in pg11. I vote -0 to getting it backpatched, mostly because it seems like more work than is warranted. (I think the work consists not only of testing that the backpatched commit works correctly, but also documenting for 11.4 release notes how to fix existing catalogs after upgrading.) -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services