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 1pZmF1-0004Jc-LU for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Mar 2023 05:21:31 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pZmF0-0003Z3-Ho for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Mar 2023 05:21:30 +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 1pZmF0-0003Yu-52 for pgsql-hackers@lists.postgresql.org; Wed, 08 Mar 2023 05:21:30 +0000 Received: from mail-ua1-x92c.google.com ([2607:f8b0:4864:20::92c]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pZmEx-0004oD-JF for pgsql-hackers@postgresql.org; Wed, 08 Mar 2023 05:21:29 +0000 Received: by mail-ua1-x92c.google.com with SMTP id m5so10450583uae.11 for ; Tue, 07 Mar 2023 21:21:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bowt-ie.20210112.gappssmtp.com; s=20210112; t=1678252886; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=A2lEn+duNCO557RmnQnvjtuGmGS/9aAk6aw8TIdWRgs=; b=vLlvptKCLbabqR/f3uTGCFjoQ+DhgL/Cos8wekiO5HjgsIdmysKux+IuRymM3NdBtK TmdPVxMDMOO4tnvaLlc+D7zUjLtZBU2AfvBTYHR4u5m/D5KbtohrgIHOI0QnUGE/yE8R gtEc/LHXjauWf+Xv2VCERIkfcX1emCP43WXSsn0Y98ASlMRe+ntrSoCLfsmRoGPbqaQw q3/01lNyjPAfYeXTRJyvChFYyZ2VIcA98UjJsJom0AwqZRxaancctaIn1Ei/gtuCQ47X Y7RTWwDWHItS+YSHhyp5ZhGz+GGlUpJLeck+4s1AA+RIbZW4iRV7WUOJxNfzHH22sWKr qgZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678252886; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=A2lEn+duNCO557RmnQnvjtuGmGS/9aAk6aw8TIdWRgs=; b=tsSwYMSWlP5ybY1GaZtURolZ5UVWKYpiazepB/tKhzg6n1jxab8cdHYmoTKfAjhaSP y6brNfvi8Mow33Tn+qy4h7bcsPrF4aUV8MLryTzGIu9pEnwBeUSGXi+TWIM8ouOPKUCj 4ZBrBfJBoCiOaW7rZJQZ0TrCIcxFiYxn+bznjdr5fi1u1z5yxcv/1tLh0AGrd8cZm+bP qBrejBslcHMOfPHz4tw0/fHCsdy1JJALeWgHOO7HnIfQReyHOUPPsfq/LqJlKA892NiS uzSiBUrQqtSD8ZMmfC44R0WG1vT04cnVuc4urWtPCzUL+HcDmlib30RbGoqavmc1nm4E nNGw== X-Gm-Message-State: AO0yUKXUG16v4toiWZmSD4zBt7r5RTwmwdF9dkrIz1Q3Pia0r4TpvDwq G7mkrEWtZF+GcfRTxLLtI0zEErHUmIaa77coRFQUEw== X-Google-Smtp-Source: AK7set+bg6L2IvIKjWA3mtaWDvqHboP/aYQypqD4HKKWVZVt3Nh0uTou6R5cmkIB+PRFEZ2s2eZ5uRXLmQr0qkoCt6E= X-Received: by 2002:a1f:2d50:0:b0:401:4daf:d581 with SMTP id t77-20020a1f2d50000000b004014dafd581mr11011924vkt.0.1678252886268; Tue, 07 Mar 2023 21:21:26 -0800 (PST) MIME-Version: 1.0 References: <20210423204306.5osfpkt2ggaedyvy@alap3.anarazel.de> <20210611011850.detxnd7bnffg3daz@alap3.anarazel.de> <64524348-b10e-9904-4858-8fe62d058b14@iki.fi> In-Reply-To: <64524348-b10e-9904-4858-8fe62d058b14@iki.fi> From: Peter Geoghegan Date: Tue, 7 Mar 2023 21:21:00 -0800 Message-ID: Subject: Re: Testing autovacuum wraparound (including failsafe) To: Heikki Linnakangas Cc: Ian Lawrence Barwick , Masahiko Sawada , Andres Freund , Anastasia Lubennikova , pgsql-hackers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, Mar 3, 2023 at 3:34=E2=80=AFAM Heikki Linnakangas = wrote: > I took a different approach to consuming the XIDs. Instead of setting > nextXID directly, bypassing GetNewTransactionId(), this patch introduces > a helper function to call GetNewTransactionId() repeatedly. But because > that's slow, it does include a shortcut to skip over "uninteresting" > XIDs. Whenever nextXid is close to an SLRU page boundary or XID > wraparound, it calls GetNewTransactionId(), and otherwise it bumps up > nextXid close to the next "interesting" value. That's still a lot slower > than just setting nextXid, but exercises the code more realistically. Surely your tap test should be using single user mode? Perhaps you missed the obnoxious HINT, that's part of the WARNING that the test parses? ;-) This is a very useful patch. I certainly don't want to make life harder by (say) connecting it to the single user mode problem. But...the single user mode thing really needs to go away. It's just terrible advice, and actively harms users. --=20 Peter Geoghegan