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 1jZK4K-000104-Ki for pgsql-hackers@arkaria.postgresql.org; Thu, 14 May 2020 20:03:01 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jZK4J-0007ii-8r for pgsql-hackers@arkaria.postgresql.org; Thu, 14 May 2020 20:02:59 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jZK4I-0007gf-99 for pgsql-hackers@lists.postgresql.org; Thu, 14 May 2020 20:02:59 +0000 Received: from wforward4-smtp.messagingengine.com ([64.147.123.34]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jZK4F-0003n2-37 for pgsql-hackers@postgresql.org; Thu, 14 May 2020 20:02:56 +0000 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailforward.west.internal (Postfix) with ESMTP id 5AAB163B; Thu, 14 May 2020 16:02:53 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Thu, 14 May 2020 16:02:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=pzc3QSnX+8bN1M3kQjKv55FndrTNgTJD1hBuXqM3g fY=; b=DVNW1n56osJOH0YwO8ZB0FHzc4zA0rHTNpKQFdKY8zurMV9Bf0SbrrkO4 ToKThmzmFCqUikWDfgM3Ehb6/NI3m37D9S945bpVIpJJZ+ycLTCf+I595WOENeyH NMNoExf42c9MXlccwSPZTqVvkVKBnV5TOyRoj3dvx/+l0xu/lv8khWV1cCR/FC9k Nhtmrzj9DKO9vPXccOXuAxxRvUsr/8CB+SqtMktSdTaZAoRSIgZop0NpowEFxQHS zcU6qqISX04bCTNFASTd9ybD1OL/+pvlGC7S9t8HUFWy3eppCem6tloBXLB7KF0e 7KTj89jBk5wgaJlrPMXH7ghk9uAZw== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrleeigddufeeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepuffvfhfhohfkffgfgggjtgfgsehtjeertddtfeehnecuhfhrohhmpefrvght vghrucfgihhsvghnthhrrghuthcuoehpvghtvghrrdgvihhsvghnthhrrghuthesvdhnug hquhgrughrrghnthdrtghomheqnecuggftrfgrthhtvghrnhepveeuteelvdeuudfggfev udegudfhvdekgeeufefhtdeguedugefhheeugeefhfeinecuffhomhgrihhnpedvnhguqh hurggurhgrnhhtrdgtohhmnecukfhppeelfedrvdegvddrvdegrdeijeenucevlhhushht vghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvghrrdgvihhsvg hnthhrrghuthesvdhnughquhgrughrrghnthdrtghomh X-ME-Proxy: Received: from april.pezone.net (p5df21843.dip0.t-ipconnect.de [93.242.24.67]) by mail.messagingengine.com (Postfix) with ESMTPA id DB6043060EF2; Thu, 14 May 2020 16:02:50 -0400 (EDT) Subject: Re: new heapcheck contrib module To: Mark Dilger , Robert Haas , Peter Geoghegan References: <12ED3DA8-25F0-4B68-937D-D907CFBF08E7@enterprisedb.com> <20200420194210.sevnpi4lyghoanxi@alap3.anarazel.de> <23E60C3C-C20A-4508-84AC-E0CEA59E784A@enterprisedb.com> <5F743835-3399-419C-8324-2D424237E999@enterprisedb.com> Cc: Andres Freund , PostgreSQL-development From: Peter Eisentraut Organization: 2ndQuadrant Message-ID: <9317e6a4-4be9-de73-a2b5-4c9fda936aaf@2ndquadrant.com> Date: Thu, 14 May 2020 22:02:49 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <5F743835-3399-419C-8324-2D424237E999@enterprisedb.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk On 2020-05-11 19:21, Mark Dilger wrote: > 1) A new module, pg_amcheck, which includes a command line client for checking a database or subset of a database. Internally it functions by querying the database for a list of tables which are appropriate given the command line switches, and then calls amcheck's functions to validate each table and/or index. The options for selecting/excluding tables and schemas is patterned on pg_dump, on the assumption that interface is already familiar to users. Why is this useful over just using the extension's functions via psql? I suppose you could make an argument for a command-line wrapper around almost every admin-focused contrib module (pageinspect, pg_prewarm, pgstattuple, ...), but that doesn't seem very sensible. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services