Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eWN9P-0003h4-7l for pgsql-hackers@arkaria.postgresql.org; Tue, 02 Jan 2018 14:02:43 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eWN9O-0001a0-2B for pgsql-hackers@arkaria.postgresql.org; Tue, 02 Jan 2018 14:02:42 +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_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1eWN9N-0001Zq-S5 for pgsql-hackers@lists.postgresql.org; Tue, 02 Jan 2018 14:02:41 +0000 Received: from smtprelay0229.b.hostedemail.com ([64.98.42.229] helo=smtprelay.b.hostedemail.com) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1eWN9F-0001cQ-SY for pgsql-hackers@postgresql.org; Tue, 02 Jan 2018 14:02:41 +0000 Received: from filter.hostedemail.com (10.5.19.248.rfc1918.com [10.5.19.248]) by smtprelay01.b.hostedemail.com (Postfix) with ESMTP id C89562D2A1C; Tue, 2 Jan 2018 14:02:29 +0000 (UTC) X-Session-Marker: 616C76686572726540616C76682E6E6F2D69702E6F7267 X-Spam-Summary: 50,0,0,,d41d8cd98f00b204,alvherre@alvh.no-ip.org,:::::::::::,RULES_HIT:41:355:379:599:967:973:988:989:1260:1277:1311:1312:1313:1314:1345:1359:1437:1515:1516:1518:1519:1534:1539:1593:1594:1595:1596:1711:1730:1747:1777:1792:2198:2199:2393:2525:2560:2563:2682:2685:2828:2859:2933:2937:2939:2942:2945:2947:2951:2954:3022:3138:3139:3140:3141:3142:3352:3865:3866:3867:3868:3871:3872:3873:3874:3934:3936:3938:3941:3944:3947:3950:3953:3956:3959:4605:5007:6261:9025:9121:10004:10400:10848:11026:11232:11658:11914:12438:13069:13311:13357:13439:13894:13895:14764:21080:21324:21627:30054,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:,MSBL:0,DNSBL:none,Custom_rules:0:0:0,LFtime:2,LUA_SUMMARY:none X-HE-Tag: straw77_6cf55737c9206 X-Filterd-Recvd-Size: 1773 Received: from alvin.alvh.no-ip.org (unknown [179.57.113.18]) (Authenticated sender: alvherre@alvh.no-ip.org) by omf01.b.hostedemail.com (Postfix) with ESMTPA; Tue, 2 Jan 2018 14:02:28 +0000 (UTC) Received: by alvin.alvh.no-ip.org (Postfix, from userid 1000) id 52A337CC; Tue, 2 Jan 2018 11:02:26 -0300 (-03) Date: Tue, 2 Jan 2018 11:02:26 -0300 From: Alvaro Herrera To: Peter Eisentraut Cc: David Rowley , Amit Langote , Michael Paquier , Robert Haas , Pg Hackers Subject: Re: pg_(total_)relation_size and partitioned tables Message-ID: <20180102140226.qen2d4tskjueryno@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <93bef1b2-2ed0-c257-158e-efdf5b0ff9dd@2ndquadrant.com> User-Agent: NeoMutt/20170306-137-4415bd-dirty (1.8.0) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Peter Eisentraut wrote: > But what are the uses for dealing with partial partition hierarchies? > How easy do we need to make that? If you have multilevel partitioning, say partitions per year per site. What is the volume of 2017 compared to 2016, on each site? I don't think it needs to be super easy, but it should be reasonable. I think pg_partition_parent() should be a simple function doing one catalog lookup (already implemented as get_partition_parent(), but needs a "missing_ok" case), and pg_partition_root() an iterative version of that. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services