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 1lZzMo-0000M2-Uh for pgsql-hackers@arkaria.postgresql.org; Fri, 23 Apr 2021 17:13:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lZzMn-0006py-R2 for pgsql-hackers@arkaria.postgresql.org; Fri, 23 Apr 2021 17:13:21 +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 1lZzMn-0006pr-KS for pgsql-hackers@lists.postgresql.org; Fri, 23 Apr 2021 17:13:21 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lZzMl-0000g3-Fy for pgsql-hackers@postgresql.org; Fri, 23 Apr 2021 17:13:20 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 13NHDFXT1442881; Fri, 23 Apr 2021 13:13:15 -0400 From: Tom Lane To: Andres Freund cc: Thomas Munro , pgsql-hackers Subject: Re: A test for replay of regression tests In-reply-to: <20210423170452.hfyinzvaeef5y3dm@alap3.anarazel.de> References: <20210423152031.unkv7mmvhw4pbjuc@alap3.anarazel.de> <1356862.1619193215@sss.pgh.pa.us> <20210423170452.hfyinzvaeef5y3dm@alap3.anarazel.de> Comments: In-reply-to Andres Freund message dated "Fri, 23 Apr 2021 10:04:52 -0700" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1442879.1619197995.1@sss.pgh.pa.us> Date: Fri, 23 Apr 2021 13:13:15 -0400 Message-ID: <1442880.1619197995@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Andres Freund writes: > On 2021-04-23 11:53:35 -0400, Tom Lane wrote: >> Yeah. I found out earlier that wal_consistency_checking=all is an >> absolute PIG. Running the regression tests that way requires tens of >> gigabytes of disk space, and a significant amount of time if your >> disk is not very speedy. If we put this into the buildfarm at all, >> it would have to be opt-in, not run-by-default, because a lot of BF >> animals simply don't have the horsepower. I think I'd vote against >> adding it to check-world, too; the cost/benefit ratio is not good >> unless you are specifically working on replay functions. > I think it'd be a huge improvement to test recovery during check-world > by default - it's a huge swath of crucial code that practically has no > test coverage. I agree that testing by default with > wal_consistency_checking=all isn't feasible due to the time & space > overhead, so I think we should not do that. I was mainly objecting to enabling wal_consistency_checking by default. I agree it's bad that we have so little routine test coverage on WAL replay code. >> The two things I'd say about this are (1) Whether to use >> wal_consistency_checking, and with what value, needs to be >> easily adjustable. (2) People will want to run other test suites >> than the core regression tests, eg contrib modules. > I don't think there's actually that much need to test contrib modules > through recovery - most of them don't seem like they'd add meaningful > coverage? The exception is contrib/bloom, but perhaps that'd be better > tackled with a dedicated test? contrib/bloom is indeed the only(?) case within contrib, but in my mind that's a proxy for what people will be needing to test out-of-core AMs. It might not be a test to run by default, but there needs to be a way to do it. Also, I suspect that there are bits of GIST/GIN/SPGIST that are not well exercised if you don't run the contrib modules that add opclasses for those. regards, tom lane