Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ujqbo-00ChHn-T9 for pgsql-hackers@arkaria.postgresql.org; Thu, 07 Aug 2025 02:44:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1ujqbm-002K8D-Av for pgsql-hackers@arkaria.postgresql.org; Thu, 07 Aug 2025 02:43:58 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ujqbl-002K7z-Vs for pgsql-hackers@lists.postgresql.org; Thu, 07 Aug 2025 02:43:58 +0000 Received: from mail-oa1-x36.google.com ([2001:4860:4864:20::36]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1ujqbj-001AtL-1O for pgsql-hackers@lists.postgresql.org; Thu, 07 Aug 2025 02:43:57 +0000 Received: by mail-oa1-x36.google.com with SMTP id 586e51a60fabf-30b8a7fa7e1so207230fac.2 for ; Wed, 06 Aug 2025 19:43:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1754534633; x=1755139433; darn=lists.postgresql.org; 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=ljkVjPzk0hwrAcWJcd6D/YToIKpVCJcgkWstvanX9JM=; b=DLaHPXeuQxBvnbkeUHF8XHL24DWla30t0w87muMV9dduBKchEEPJf9TKesin80t13H vU+df89tK4+22kE7+O/LnYTqrwKLC0WhHlNcg7+K2ZvY0xCFdY+h3m2GMbn+l16+k+cZ L5EKJSd6/OqqKIK7v7dBwPC8tq3GbxHeBS27zSdMwFXKlCrZdkWdOrrswqzuw0peGCjn 2hsJvy7SQ61/HyrMmul5j15cUYSNP64jjUS3g5Gq+RwTRFWdeJULxV0YL0dT7McEXeD7 kFrmMFyVRfsiiag7OBofrPbzIGHJbRUwHy+BrhMfaA++IR3Gyoz+ibWG404DQtoYYo+1 7cXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1754534633; x=1755139433; 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=ljkVjPzk0hwrAcWJcd6D/YToIKpVCJcgkWstvanX9JM=; b=Q65TYi4uHi/qJb9TdW53PIxz8vZ5gAS1NvFmejOATMBAhzgVMc9NfwHqSi6Xq706uT XKkStTLDa+ivF2PlD4fgQBkQRDCHYgyO/26mco73+Q685vfF2x0m0w/dglecW/tXW5+N eLfYp+GCLeRe7jNyHQdVcMjyVx1ZLHtpOOYo/bbNLIAsr8nKyoXMl1WLlhNzD5S7+iMS pOyHSgE6rWrQuBY+PRq9qRygWq8yYrHT+Z75KflTAv4dmtNuPOiEneaylHdrdXpCfBxc gfHqb1v1P22Qzc5gbGBoA84MNiB0TKzAs8sPjWE97DZhqh49JE57YjTHxaBpMpARIklo IlvQ== X-Gm-Message-State: AOJu0YzbJbJl4Kntp+u3FyIAQ2eIvuWwS0HpQA2xBfW2Y87vRXFodUly 4Br/vXINJCKZFHg9ufiHpVgYIe5n0wFoUygBNkSvP68MOinaqee3HT9wlTqI9gLzrtpiDu2sr2B 7W4Yovb5YcICoXnE9854zdbHW+ey8Pzg= X-Gm-Gg: ASbGncstBsTM+wGIcIWcy4h7V1MvROrTJiwGnQHxHnlznhXqNIcc7qkppKG+csLc00T Ng4CGZllDEIr9bcQ1FSrwyZV/MhcW5RPSXXQwSDpzSfbCcUlBK/hYr5cUmZEJZtJggaZ7qk45fX UmJb3HYZz9ATvmTl4XJmSucHOKkNLXIJWgNPwiqFe+EMLtEjSfR31GD9BoKoj92c6mqy+VaRn0+ msf1JaMD3JUW9Qg9h7DktNPEmOaa8+0GTmUpQX1 X-Google-Smtp-Source: AGHT+IHKj+5SmrzG7EP7OUfeHE2DB4sMw0mmQX19W4vqd7Y2CepK8Mv7mUPqu3n9m33qeDiRfIR9D3flvIxu9o80Nxs= X-Received: by 2002:a05:687c:2b84:b0:30b:8429:e3ef with SMTP id 586e51a60fabf-30be2c0d355mr1328860fac.5.1754534633496; Wed, 06 Aug 2025 19:43:53 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Thomas Munro Date: Thu, 7 Aug 2025 14:43:17 +1200 X-Gm-Features: Ac12FXyMIAr7YdUnceeGonSLrDxqrxntXlZjKUkyFfspv_oNubk-_gOjTwHldQ4 Message-ID: Subject: Re: [PATCH] OAuth: fix performance bug with stuck multiplexer events To: Jacob Champion Cc: PostgreSQL Hackers , Daniel Gustafsson , Peter Eisentraut 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 Thu, Aug 7, 2025 at 1:45=E2=80=AFPM Thomas Munro wrote: > I like the C TAP test. PostgreSQL > needs more of this. I should add, I didn't look closely at that part since you said it's not in scope for back-patching. I'd like to, though, later. I wonder if you would be interested in this attempt at centralised infrastructure for unit testing our C code over here. I'm not suggesting it for your immediate problem, just noting the overlap: https://www.postgresql.org/message-id/flat/CA%2BhUKG%2BajSQ_8eu2AogTncOnZ5m= e2D-Cn66iN_-wZnRjLN%2Bicg%40mail.gmail.com Basically I would like to be able to dump easy-to-write files into the tree that say stuff like this =E2=86=93 and have the build scripts find the= m, build them and test them without all the module boilerplate stuff or a running server (though that aspect is obviously not relevant for your frontend case). Like you find in googletest or various xunit-style systems in other projects, but integrated with our TAP universe (or whatever replaces it if we escape from Perl). But I never got the configure part of it working. PG_BEGIN_TESTS(); ... PG_EXPECT_EQ(pg_preadv(fd, iov, 2, 11), 0); PG_EXPECT_EQ(pg_pread(fd, buffer, 10, 0), 10); PG_EXPECT_EQ_STR(buffer, "helloworld"); ... PG_END_TESTS();