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 1hOxbF-0003ow-Pr for pgsql-hackers@arkaria.postgresql.org; Fri, 10 May 2019 04:57:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hOxbE-0003FC-BO for pgsql-hackers@arkaria.postgresql.org; Fri, 10 May 2019 04:57:36 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hOxbD-000352-Pb for pgsql-hackers@lists.postgresql.org; Fri, 10 May 2019 04:57:36 +0000 Received: from mail-io1-xd42.google.com ([2607:f8b0:4864:20::d42]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hOxbA-00066R-Qx for pgsql-hackers@postgresql.org; Fri, 10 May 2019 04:57:34 +0000 Received: by mail-io1-xd42.google.com with SMTP id y6so3506037ior.5 for ; Thu, 09 May 2019 21:57:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telsasoft-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=4oJ9TKtyjBwLZgryyMp+Wo4AAX9CPmiMiEij86TrXG0=; b=jwH9U51NBZea3ueVU/SjGO3QgrSH5bE0+SQjTIvOrx8gGTynO5XhFrYeyr4vuMn4jW ctpkJ8vHAsDet8MGd1LO/n0n+jnqf2UKobZ+Xs+RpFzWknqFil2f5+t1P6l645U+KcWE qWBQn44DLwZZSsTbNspi3idQ/FkU329iYTjIbyvPmlvsKDf4u0qJBnjR4FK2JF+C5nMx 3Buen/J+Z/G82+Fa/lbI/8tUj4dceotwMh+MpPxQnCSnqurvkd65v/gQtUdYkP7O/vQ7 c3MbMgx3eHEzLA7zTyYNPgjr0xbCeNNh3ZFTc8cFn2Nq1jArogeXc6IM14OlPWS80ZYF FyTw== 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:references :mime-version:content-disposition:in-reply-to:user-agent; bh=4oJ9TKtyjBwLZgryyMp+Wo4AAX9CPmiMiEij86TrXG0=; b=kfckXT26bRCWv2LvBCfM6c+SoZfOJrs0cp5FtXNEyS3UZFKSBd3OHrBDMKB16afTtp DH2pe3BQ93mWYUc0CaDkqtsOuHSA4P6XMstnm9/gsnBGiClo6ZssBZQV3QZRZmVuQWoj dSXtyAUUk23n/jh/zC/eCWbvFzzUAXk4qS1/p19PS5uBr72qji27pvdUfRKTrEFVSrUk 7W4koff8yFxTg5PxTPF1b60RlGCqoxngSev07Z/698vZe9WOD8QxSaaARVHifdv5zGHD 4qoKqp79pfyanIVd0dTF7E6AEqsB/zZVFlDhzthUrw7YxMd1kl9OhLa7iTdmALPDrwz2 TcHg== X-Gm-Message-State: APjAAAVPQZ3H5haXtrwDVsKXDHYIgQt+GKs7kRgeEAzsFeTT3z6RrsBq g5dctapoXrZ7C3R0ppFJva54pg== X-Google-Smtp-Source: APXvYqy7f9lqsDILqTaEDVbAyddAEqth3vlyzv0E3hlJ47sXKUkKyAc5gBpjJ50/Vn0a/QSSXZWuuw== X-Received: by 2002:a6b:e502:: with SMTP id y2mr5479690ioc.149.1557464252022; Thu, 09 May 2019 21:57:32 -0700 (PDT) Received: from pryzbyj (charmander.telsasoft.com. [50.244.222.1]) by smtp.gmail.com with ESMTPSA id k7sm1488631ioh.36.2019.05.09.21.57.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2019 21:57:31 -0700 (PDT) Received: by pryzbyj (Postfix, from userid 1000) id 4801A8009A7; Thu, 9 May 2019 23:57:30 -0500 (CDT) Date: Thu, 9 May 2019 23:57:30 -0500 From: Justin Pryzby To: Amit Langote Cc: David Rowley , Bruce Momjian , Alvaro Herrera , PostgreSQL-development Subject: Re: pg12 release notes Message-ID: <20190510045730.GN3925@telsasoft.com> References: <20190508203204.GA25482@telsasoft.com> <20190510000853.xfw2djge3evzlkjq@momjian.us> <17a07ed6-4d17-838e-2a8f-fd125c22e03e@lab.ntt.co.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <17a07ed6-4d17-838e-2a8f-fd125c22e03e@lab.ntt.co.jp> User-Agent: Mutt/1.5.24 (2015-08-30) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk On Fri, May 10, 2019 at 12:45:54PM +0900, 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. > > > > This appears to be fixing something that likely should have been done > > in PG11, where partitioned indexes were added. ... > > Originally the column > > was for inheritance parent tables, then later used for partitioned > > tables. It seems partitioned indexes just overlooked setting it to > > true in PG11 and this commit fixed that. Of course, backpacking that > > fix wouldn't be very useful for partitioned indexes that were already > > created, so it was a master only change. ... > Regarding whether or not this commit needs a release note mention, I'm not > that sure but maybe we should if Justin thinks it's useful information. I don't know for sure and I don't feel strongly either way. Last month, I looked through the list of commits to master ([0] rather than using pgsql/src/tools/git_changelog), and made a list of commits I thought should probably be mentioned. I sent to Bruce, in case he could make use of it, and just now triple checked that he'd included all the stuff I could see was important. Added/changed/removed interfaces (programs, libraries, etc), GUCs, catalogs were all on my list (which is what caused me to include index_get_partition, which I agree shouldn't actually be in the relnotes). Behavior changes should sometimes to be there too, but there's internal/implementation changes which shouldn't. Justin [0] git log --oneline --cherry-pick origin/REL_11_STABLE...origin/master On Fri, Apr 12, 2019 at 02:55:38AM -0500, Justin Pryzby wrote: > I was thinking of starting to create release notes ; is it reasonable and > helpful if I put together an initial, 0th order notes document ? > > I just spent a good while identifying the interesting commits from > here...although I'm sure I've missed some. > git log --oneline --cherry-pick origin/REL_11_STABLE...origin/master > > Highlights: > 428b260 Speed up planning when partitions can be pruned at plan time. > f56f8f8 Support foreign keys that reference partitioned tables > 7300a69 Add support for multivariate MCV lists > Progress reporting: > - 03f9e5c Report progress of REINDEX operations > - ab0dfc9 Report progress of CREATE INDEX operations > - 280e5f1 Add progress reporting to pg_checksums > - 6f97457 Add progress reporting for CLUSTER and VACUUM FULL. > > Features: > > \psql: > 1c5d927 psql \dP: list partitioned tables and indexes > 27f3dea psql: Add documentation URL to \help output > 1af25ca Improve psql's \d display of foreign key constraints > d3a5fc1 Show table access methods as such in psql's \dA. > > \GUCs: > 799e220 Log all statements from a sample of transactions > 88bdbd3 Add log_statement_sample_rate parameter > 475861b Add wal_recycle and wal_init_zero GUCs. > f1bebef Add shared_memory_type GUC. > 475861b Add wal_recycle and wal_init_zero GUCs. > f7cb284 Add plan_cache_mode setting > 1a83a80 Allow fractional input values for integer GUCs, and improve rounding logic. > > \Other: > 119dcfa Add vacuum_truncate reloption. > 7bac3ac Add a "SQLSTATE-only" error verbosity option to libpq and psql. > ea569d6 Add SETTINGS option to EXPLAIN, to print modified settings. > b0b39f7 GSSAPI encryption support > fc22b66 Generated columns > 5dc92b8 REINDEX CONCURRENTLY > 8edd0e7 Suppress Append and MergeAppend plan nodes that have a single child. > 280a408 Transaction chaining > ed308d7 Add options to enable and disable checksums in pg_checksums > 0f086f8 Add DNS SRV support for LDAP server discovery. > dd299df Make heap TID a tiebreaker nbtree index column. > => and others > 01bde4f Implement OR REPLACE option for CREATE AGGREGATE. > 72b6460 Partial implementation of SQL/JSON path language > c6c9474 Use condition variables to wait for checkpoints. > f2e4038 Support for INCLUDE attributes in GiST indexes > 6b9e875 Track block level checksum failures in pg_stat_database > 898e5e3 Allow ATTACH PARTITION with only ShareUpdateExclusiveLock. > 7e413a0 pg_dump: allow multiple rows per insert > 8586bf7 tableam: introduce table AM infrastructure. > ac88d29 Avoid creation of the free space map for small heap relations. > 31f3817 Allow COPY FROM to filter data using WHERE conditions > 6260cc5 pgbench: add \cset and \gset commands > ca41030 Fix tablespace handling for partitioned tables > aa2ba50 Add CSV table output mode in psql. > 2dedf4d Integrate recovery.conf into postgresql.conf > 578b229 Remove WITH OIDS support, change oid catalog column visibility. > 9ccdd7f PANIC on fsync() failure. > 803b130 Add option SKIP_LOCKED to VACUUM and ANALYZE > ec74369 Implement "pg_ctl logrotate" command > > Interfaces: > b96f6b1 pg_partition_ancestors > a6da004 Add index_get_partition convenience function > f1d85aa Add support for hyperbolic functions, as well as log10(). > 3677a0b Add pg_partition_root to display top-most parent of a partition tree > d5eec4e Add pg_partition_tree to display information about partitions > 1007465 Add pg_promote function > c481016 Add pg_ls_archive_statusdir function > 9cd92d1 Add pg_ls_tmpdir function > > 2970afa Add PQresultMemorySize function to report allocated size of a PGresult. > > 00d1e88 Add --min-xid-age and --min-mxid-age options to vacuumdb > 354e95d Add --disable-page-skipping and --skip-locked to vacuumdb > 2d34ad8 Add a --socketdir option to pg_upgrade. > 387a5cf Add pg_dump --on-conflict-do-nothing option. > 8a00b96 Add pg_rewind --no-sync > e0090c8 Add option -N/--no-sync to pg_checksums > f092de0 Add --exclude-database option to pg_dumpall > > 17f206f Set pg_class.relhassubclass for partitioned indexes > f94cec6 Include partitioned indexes to system view pg_indexes > b13a913 Add BKI_DEFAULT to pg_class.relrewrite > > 7fee252 Add timestamp of last received message from standby to pg_stat_replication > f60a0e9 Add more columns to pg_stat_ssl > 43cbeda Extend pg_stat_statements_reset to reset statistics specific to a particular user/db/query. > > grep for pg_ Add|remove|move|Compat|Break|Release|pq|--|\ > API pg_ > \.c \.h > v1 > > Compat: > 6dd263c Rename pg_verify_checksums to pg_checksums > 342cb65 Don't log incomplete startup packet if it's empty > 6ae578a Set fallback_application_name for a walreceiver to cluster_name > 689d15e Log PostgreSQL version number on startup > XXX 478cacb Ensure consistent name matching behavior in processSQLNamePattern(). > bcbd940 Remove dynamic_shared_memory_type=none > cda6a8d Remove deprecated abstime, reltime, tinterval datatypes. > 2d10def Remove timetravel extension. > 96b00c4 Remove obsolete pg_constraint.consrc column > fe50382 Remove obsolete pg_attrdef.adsrc column > c076f3d Remove pg_constraint.conincluding > dd299df > The maximum allowed size of new tuples is reduced by an amount equal to > the space required to store an extra MAXALIGN()'d TID in a new high key > during leaf page splits. The user-facing definition of the "1/3 of a > page" restriction is already imprecise, and so does not need to be > revised. However, there should be a compatibility note in the v12 > release notes. > 1a990b2 > The API of the function BufFileSize() is changed by this commit, despite > cbccac3 Reduce the default value of autovacuum_vacuum_cost_delay to 2ms. > bd09503 Increase the default vacuum_cost_limit from 200 to 2000 > 413ccaa pg_restore: Require "-f -" to mean stdout > > Perform: > fe28069 Scan GiST indexes in physical order during VACUUM. > c24dcd0 Use pg_pread() and pg_pwrite() for data files and WAL. > 0d5f05c Allow multi-inserts during COPY into a partitioned table > 959d00e Use Append rather than MergeAppend for scanning ordered partitions. > bbb96c3 Allow ALTER TABLE .. SET NOT NULL to skip provably unnecessary scans. > 3c59263 Avoid some table rewrites for ALTER TABLE .. SET DATA TYPE timestamp. > 3a769d8 pg_upgrade: Allow use of file cloning > bb16aba Enable parallel query with SERIALIZABLE isolation. > 2a63683 Add support for nearest-neighbor (KNN) searches to SP-GiST > > Source: > d9dd406 Require C99 (and thus MSCV 2013 upwards). > > Bugs: > 036f7d3 Avoid counting transaction stats for parallel worker cooperating transaction. > ? 251cf2e Fix minor deficiencies in XMLTABLE, xpath(), xmlexists()