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 1lu5lD-0006nT-G2 for pgsql-hackers@arkaria.postgresql.org; Fri, 18 Jun 2021 04:05:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lu5lB-0005cT-0B for pgsql-hackers@arkaria.postgresql.org; Fri, 18 Jun 2021 04:05:37 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lu5lA-0005cK-Oe for pgsql-hackers@lists.postgresql.org; Fri, 18 Jun 2021 04:05:36 +0000 Received: from mail-pf1-x42e.google.com ([2607:f8b0:4864:20::42e]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1lu5l7-0002Tl-My for pgsql-hackers@postgresql.org; Fri, 18 Jun 2021 04:05:36 +0000 Received: by mail-pf1-x42e.google.com with SMTP id p13so6739073pfw.0 for ; Thu, 17 Jun 2021 21:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=FxW2e7Rn0DmaA4as7Kzg37b3il9ABZkHsPoNX4RycAk=; b=QsWHTs8PXSim7qv2vJeDczRSyyGT7w6tdESN7jtcCZ3GKTTHHPPpKfG3ser8fMBeKQ nJE9KOXX0RFMpZcdd+MX81nNzum0lRV1g5aMvnaRM0nNAfbugmB7+/Qmtr+AezPR+1fn KLKyWca/Pf53N8yHG0t+GsAnWW3GKyycZk8ss= 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=FxW2e7Rn0DmaA4as7Kzg37b3il9ABZkHsPoNX4RycAk=; b=VJMPo4VqA3lkg4rhR6YqjbTwFUBT4EbTSGiUTD1WNPVY2cue/iB2z80aochTZaml62 eJcIiopWq4u4riGkjgdt0QCWyBCnpLqEhRhJ0KApZwc0bi/nHBy8puEuSS26ttkjiJ7e iZTx9ZY8r0YTbdYb0fl0xcJa87TAzwW83Uep1dJX1qJ3WUcAfIdrzY3nalcN1N8j65rU KEfLcaDyjyf625rnuMnBt4xTw5ruPgRmyjLJqBRnBvz29oQb2duDkwZwMI/FwYo6sehB 6Pe429fvIgpRX/E+H/hXALPs2WfPidXyAlNoFflrVEZfLAxhwr36bXytVGc1pazukdra aHyg== X-Gm-Message-State: AOAM532GgwLzK9VjgMTqp1MP+k7v8sqHgX0KG4eU6dakux8MHLy32QK8 yTfHz6dZMeCp0Uwpf1uU0jIPmQ== X-Google-Smtp-Source: ABdhPJzFNQJhGkNaZpX9jRt4tGhVHIAuaxSprwTFW7L/IFDs3UOZHFJ+3RvlKQtaB17VQGam5Eqtow== X-Received: by 2002:a63:181f:: with SMTP id y31mr8053433pgl.145.1623989131322; Thu, 17 Jun 2021 21:05:31 -0700 (PDT) Received: from rfd.leadboat.com ([2600:1702:a20:5750::46]) by smtp.gmail.com with ESMTPSA id m126sm6899684pfb.15.2021.06.17.21.05.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Jun 2021 21:05:30 -0700 (PDT) Date: Thu, 17 Jun 2021 21:05:28 -0700 From: Noah Misch To: Andrew Dunstan Cc: Fabien COELHO , Gregory Smith , PostgreSQL-development , david.christensen@crunchydata.com Subject: Re: pgbench logging broken by time logic changes Message-ID: <20210618040528.GA1066073@rfd.leadboat.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Wed, Jun 16, 2021 at 03:13:30PM -0400, Andrew Dunstan wrote: > On 6/16/21 2:59 PM, Fabien COELHO wrote: > > The key feedback for me is the usual one: what is not tested does not > > work. Wow:-) > > Agreed. > > > I'm unhappy because I already added tap tests for time-sensitive > > features (-T and others, maybe logging aggregates, cannot remember), > > which have been removed because they could fail under some > > circonstances (eg very very very very slow hosts), or required some > > special handling (a few lines of code) in pgbench, and the net result > > of this is there is not a single test in place for some features:-( > > I'm not familiar with exactly what happened in this case, but tests need > to be resilient over a wide range of performance characteristics. One > way around this issue might be to have a way of detecting that it's on a > slow platform and if so either skipping tests (Test::More provides > plenty of support for this) or expecting different results. Detection would need the host to be consistently slow, like running under Valgrind or a 20-year-old CPU. We also test on systems having highly-variable performance due to other processes competing for the same hardware. I'd perhaps add a "./configure --enable-realtime-tests" option that enables affected tests. Testers should use the option whenever the execution environment has sufficient reserved CPU.