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 1pQ84U-0003xb-JM for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Feb 2023 14:38:46 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pQ84T-0006gB-ES for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Feb 2023 14:38:45 +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 1pQ84T-0006g2-1m for pgsql-hackers@lists.postgresql.org; Thu, 09 Feb 2023 14:38:45 +0000 Received: from esa10.fujitsucc.c3s2.iphmx.com ([68.232.159.247]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pQ84L-0004Ty-3O for pgsql-hackers@lists.postgresql.org; Thu, 09 Feb 2023 14:38:44 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1675953517; x=1707489517; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=/VA033RE9BvG7g1P4uEWe30oUIsR01Z1662OU6cDXWk=; b=YWpQAE07qgEqmXjOA+vJq3dISNlgUkqjLTMPUpe3ouf86z6VC/X8+EIB nAb9Pk/XN3/QbtYpTUNHmCkWOU2iJyiq50GuFqfnoAgsGIY6OX3xUvcnb tyMBVpkLPTWaQI293Tu7lzwn5OhaDZcwVIJPde6gEOxLjDWT97OCQoYRF zNRi0q/cq2gQeJf7wGkBmx2Qa14s3iwQvAWwbfQ8qoi11s7BCc3LYzEnc ajIuz9HNiQ/489LvjdaJ7ccLoFO5vGbsofrKgm+03cnq92bPFHY9GQpBK c9q2d78KpsRsvPwidXuByTjJUqEmkmb5Z6/ojC7WAYfkq/Etd8mPNpDpX g==; X-IronPort-AV: E=McAfee;i="6500,9779,10615"; a="76715692" X-IronPort-AV: E=Sophos;i="5.97,283,1669042800"; d="scan'208";a="76715692" Received: from mail-psaapc01lp2040.outbound.protection.outlook.com (HELO APC01-PSA-obe.outbound.protection.outlook.com) ([104.47.26.40]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2023 23:38:33 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cao9SCZI5Hiph3pVnp0ECeZgfb5bz4m5hCRs+PK8MBdcULnQzeGJ6fZcIqA9t2JZ9JkDdcOjAmVgoZQNdHVP0odKU09nE1KqzXNEGa/gjrL2Q+432TXBvCq3HghC2Cyha1QXrWv1ur9M4lqeNyldeDihxndOygm7L0EdOMY5Z+PrBJNl4dCMPDUJf+KOnnG8DHnMQRWfQ3QgdWQG289sps3ckfavQvr2c43lGDvy2jb/+2z043sVEh3Hch9vNboIJnc7LHwqB4mGfJyShkBSBVO03TWYE9bSf8/NUofz1iv1CpPTjY/IrBEYCnIbXYpTfrgALNTPnIBZQIbvCcnS1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0Ny4D+Rjts8VzPEhw9QtsKSFrI+8yodoBVB+XgQAM3A=; b=KvBML/LmCsgKZzAyuUj448IZKH0tgNeKjbTctHAPeYRK+YPbNIvJQlUpMgkp0JeHfjW8tAuJrO0h8/yegudmERbTb+l0gr+/FoWoz++FiHhaV6N4+QOLwRbb0ZCpiZgHVqeOXOg41+QqrkibRKfSVPCMHoFTPD7kctRhQbqt9P6zLEPdArM7Gsdl0Plo6IkRSbXiBTsOa+l1Tr1wSlJ6+arnq4/bNYQF2Gy8Gsa8E3UdQFAGbJYNIWwZixnlm6k7T0IT1GKGP/VWDKUhgLdkq+1Qa11p5YGIXol2hvsSwfXecrpuMf18pOOQAbWJf4N3M9xLQDO2XJtaELO3HZ8rEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none Received: from TYAPR01MB5866.jpnprd01.prod.outlook.com (2603:1096:404:8056::13) by TYBPR01MB5552.jpnprd01.prod.outlook.com (2603:1096:404:8026::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.19; Thu, 9 Feb 2023 14:38:30 +0000 Received: from TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::30c6:f973:2d10:5130]) by TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::30c6:f973:2d10:5130%3]) with mapi id 15.20.6086.019; Thu, 9 Feb 2023 14:38:30 +0000 From: "Hayato Kuroda (Fujitsu)" To: 'Kyotaro Horiguchi' CC: "katsuragiy@oss.nttdata.com" , "yuzhihong@gmail.com" , "tgl@sss.pgh.pa.us" , "vignesh21@gmail.com" , "pgsql-hackers@lists.postgresql.org" , "onderkalaci@gmail.com" , "masao.fujii@oss.nttdata.com" , "Shinya11.Kato@oss.nttdata.com" Subject: RE: [Proposal] Add foreign-server health checks infrastructure Thread-Topic: [Proposal] Add foreign-server health checks infrastructure Thread-Index: AdfNNjec7xk22WznTt+52qg+YpAmvANdE8aAAG+tXeAALaEGgADyvFSgAOXdLoAAHbFoIAAJMQQAAVzrX4ABVSpkgAcm+qGAAFKrs2AALpHaMABlDPQAAZXPwNAAQjmEAALZMWcAADGlIkAAC7y9AADsTM0AAAZl5AAAATiOkAAEa8NQAAKKo4AAWAdDgAGbNSLQJuCMuwAAoOugoAI4TMiAACGQ9/AAAsDDgAABIZnQAAoMxAAAF66VEAGrPlUAAOu0qvAAeBgsAAKNT0GQAe1YiIACwRN2kAI41iQAABfOBaAChYGx0ALSd9iAAVF24eAAAY4aAAAYCjbwAAGTDIAAHpfZEAAF6AnAAcX2foAAM4kSQAACpiCAAFMwRkAAbPeWAAAFpxUwAFRsd8AABDA30AKIHYCAABJ4GsA= Date: Thu, 9 Feb 2023 14:38:30 +0000 Message-ID: References: <20230209.113149.2028095933259376311.horikyota.ntt@gmail.com> In-Reply-To: <20230209.113149.2028095933259376311.horikyota.ntt@gmail.com> Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Enabled=true; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SetDate=2023-02-09T11:20:45Z; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Method=Standard; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Name=FUJITSU-RESTRICTED?; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SiteId=a19f121d-81e1-4858-a9d8-736e267fd4c7; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ActionId=cc9837ec-405c-4919-9e67-9439fd1a3416; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ContentBits=0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYAPR01MB5866:EE_|TYBPR01MB5552:EE_ x-ms-office365-filtering-correlation-id: d3033b4c-fcab-4f05-ff49-08db0aab504a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: vBcwBmB+aPE+vNjIXBvxlDHjDluzEvECxjmHCuK3e6wVIMr8X153g4rKr1Did7iT8O3tDJPZCVytkp5CHbqJ4h9xBYrsGrkmiG0KH2e/irH2avzdEoPGdBwe/0ZNa5BCopzNZb5kqW3xRh0F7kScOfTJrf+O5X6mmBZp0rnvWKx8D1BfEXXgX3rBUrJLv92lfHO8fm2BHqt15XTA/0LGEQfreChQT1XkOjKQw2Fr6+W3EN/Ch/tWpozCneMgVm8+dwjsTHax9PWehTIjPxOzgPW/Auof8MRxzbdqwEDkooichy1MuebvR8sK172HC1sI8RkcBiByXpUmwxLjZFBseflC7/QXrey8TbHxNFVRq7d3UWRAq2vabSbrnW9gduna6ya/+zjn16IYNo+zggiVGKkPv8JvUQycAHAlSYGgdwKY8BkhritsHB+VaEoUwCxEsH83VkmdamUUcPkPaHdz63uDltUP2BkA7Hc20XVEnxPnrjD/S+EgPXVUY1ltNp6tSdGdHbKUh/ZfXsIOZlleyezG9XWRVR3nbIRYHfB2LKAlOFGyExaHu70gsnqYuXsn7U+Cjzdo3RK8tHY/gHTC0nYkZwrWLcg0jIfiOhLHD5dyXoWGsOrnJOutRgKB7S6WRv7Am4HFYrD7Io3xnj35/QiMlX0aFGXGoougDddICp5sNBCrF8Cub5HciT9uIH1SNB7xyfb3sy0X5tAG33DWqqlMUQrd54zi3re30/NI0AugkR7Igmx+2zJNEY/pFhg4CedLZRS2F7t15deVQmXaoQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYAPR01MB5866.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(39860400002)(136003)(366004)(346002)(376002)(396003)(451199018)(1590799015)(1580799012)(8676002)(38100700002)(85182001)(38070700005)(316002)(45080400002)(76116006)(4326008)(64756008)(66446008)(66476007)(66556008)(6916009)(66946007)(5660300002)(54906003)(86362001)(966005)(478600001)(122000001)(83380400001)(33656002)(71200400001)(7696005)(6506007)(82960400001)(9686003)(186003)(26005)(2906002)(41300700001)(55016003)(8936002)(52536014);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-2022-jp?B?TWRDS0VmRzM3RGFGN1BzSW0zejY1L1lMcUV0Zy9OOHhPa0RRRnIxUUN3?= =?iso-2022-jp?B?SlhNRE1la0Y5eHY5WW5LSzc4WmpwSDB1TzdTU2h6cjlONVR1alhnalpS?= =?iso-2022-jp?B?dmVuNHhZNWpZN3VjMzdlaTBFU09pZWhxWERKZmVOU1UrSGVVcExpN2pK?= =?iso-2022-jp?B?eVRzSkN2Mm1Ka0hDSDZGZjZUa1BzcFdZNVc2SXgyZDRUdmJOQjltT2hn?= =?iso-2022-jp?B?a2lDVDg0ajNuVFRoT0R4aXk2a3YzVzZvWWxHb0YweHVrYnpBdW5WQjZR?= =?iso-2022-jp?B?T2dacUZLdE9YUEJ2dm9JblFWbWwyY2FEaXBWZklFYi8rcjV5UktRbVlp?= =?iso-2022-jp?B?blN3WUtSRmMrRDhSbWwyM3BkZ3BNV2VFSUkvdXVwV29zbkluWnU3SFpW?= =?iso-2022-jp?B?bXFNTTJWa09LbWJ2cFRVTE9HbVNXWW1WQ0NSMGRiZCs2WnVPWTlHaENa?= =?iso-2022-jp?B?V0EwYkxETExVdFFnN25Ldm14aUpYSUJKTUMrZUM4b1VpYlp3QXN3YTJa?= =?iso-2022-jp?B?WTB4cm9uM2paelQ2RWtRRWdCSk1KOFBqUkZuRHptSlczcDh0MWVjWTgv?= =?iso-2022-jp?B?cU40azAvUUUvaFpRdE1CeEgreXRHSzBrVmtTSmFGSWhhNlNBNDFOT3ZI?= =?iso-2022-jp?B?bGI5RHRGcEY0Q2ZucERraXI4ZDVpVFZqOEduYUQrOUtjTWdtZmhTa3E0?= =?iso-2022-jp?B?VDhZN2ViVmx0R3k0cDVKOVNOYVVrV3VTMzEwWGZ1TmVTaWczT1NZU3lw?= =?iso-2022-jp?B?OGtIQ1JQSEMxTUk0YXBuUTdNMVRzbTcrYkdDSDZ3Nm8xRjV2YnZ4dXZm?= =?iso-2022-jp?B?OEFXT3I5aUhHV3VLZVh1WW9taFJKV2FSZVVZYXVERkVFM1NoZkd5THNL?= =?iso-2022-jp?B?VENYaFlxZHBoRHpaREpCTFo2RzJvQzVEZEw2K3A4SlVQRFExNVlBRVU2?= =?iso-2022-jp?B?VzlJOUczeVczVGRpLzhWU1FhVjdyeElNZ3VERVh3c0NnanJwYTJoaVZW?= =?iso-2022-jp?B?ZHRNNnluWUY1RU1aZkZLVGtCTTlVK04wbFdNKzdYS3Q3TmpvY0RJdzRv?= =?iso-2022-jp?B?YVhRSnFtVnpyeTBPclpTY1M2ZkkwWkY3L0QzazB2dHRzL1N2YXdnM3NX?= =?iso-2022-jp?B?WmtqR3JPcFMvbjdQU0c2ZVZDbWk1bUc1eHJNZkxhbjdaM1JYMDBOOEhp?= =?iso-2022-jp?B?YkVjSmh2RUs4K0J5aU9TaXM4c2JtRkNVQit4bmVYVHM5TlRKMHpBdUQv?= =?iso-2022-jp?B?ZVZFcDA4ZW5tY1lqc2gvckwvYXJvQnJQRDVnL09QYnVZd2IrU2Q2SVZO?= =?iso-2022-jp?B?Uk9yMkp4UzZ6ZVc2SkE0Zy9xVERjdGV3VXpjUytCL0pFQkRQYnllcnk1?= =?iso-2022-jp?B?RlNRNTBTY0ZhNnY2bzRNS2hSSjJpZDFpYU1ncmxzWmNtQUFpM3QxdU9j?= =?iso-2022-jp?B?bWZoMlVPSjFvRUZIZDk0QzlCL2JyYVBxRkJweHI0Q29UM1d0Wks0Nk0v?= =?iso-2022-jp?B?M0JzNUZSMHJSdGxDdnlXTmxRV242Tm9Bd1JXb29zR2F2L3h5dnlpMXJ4?= =?iso-2022-jp?B?ZVA5Q01RZ3FielEyY045SjUzWVo1cUxmMld2NFJKNjdBV01xVmlrUTV3?= =?iso-2022-jp?B?QzQ5b1RkMVdPREdUL3hpdEN6NElYZjJ0Z2wvME5ObFduVzh4eFBLeVFF?= =?iso-2022-jp?B?aGtSRkZleldOUEhKeGlJdytOWEhsSE1HckxVYkE3eE9Wc0t1RjZjdEhL?= =?iso-2022-jp?B?dzJCNCtNWGdSb0FTOWRTWDRBcldLQkJsT0VSNXI3Qm5MUzBUWkFNRWRt?= =?iso-2022-jp?B?L0xaRCswZy8rU0RLaUtqNWhKOEtKS0IzQmhicUZvOGQ2Vmx0cUFaL2R4?= =?iso-2022-jp?B?ZVgxNmN6TGRERmF2Q3IwM0FhTXJEMHc0cXhCbkhueVNpeDFtTU1uRUJJ?= =?iso-2022-jp?B?bGFaSTEzbFJxSldPTnJiYS9BQzVsa216TjFHcFh3VCt3NnRQZzQxYVZx?= =?iso-2022-jp?B?aEFIaUt2OTQ2bGZ4WHB1VHloTTllVFVvOWdUWU5lSXcwVlM1MXBUUzA3?= =?iso-2022-jp?B?dUVMVmdDRjE0cWVSTFZLY2paVzk5U3Z0dDZndUZpYlZRVmU1YUhZdjlr?= =?iso-2022-jp?B?STl4Q052cnZ6dUV5b1J2b2N2UG5aYzRqOGlocVBJUEdZUkMwNUZxNUh4?= =?iso-2022-jp?B?L3VZdFZhRS80eVpndzFWelYzS05YN2pCZzJmQW11V1p4a2U3eXUvV29l?= =?iso-2022-jp?B?VFozWlBmY2NPTWh2UlB4R2wzSWFtUEtVUkFVVFJqN2JaSnl2UUt2WEJ0?= =?iso-2022-jp?B?TGhQRDVsU2IxeFBBSytVWk82dDNIbGRoQ0E9PQ==?= Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: hyeLzKfeA6T5//eSqkdLQHK+NC9FQW5qMhLxUVIV6Jieqo0varJ8aAKW3v7J2jernE4yEltGMNN6mKRfcDe/ZSbKe/udMNipUYgYzT96T1ir1btoXAFS8In4ITjqz5pG/MzIuqyKB3Nx92XDOQoyPbdNDk4Sn+VLiBMb9J0Qr4xAoUbTSy75AHcyQEC+Xc2xoutbGslpwS+qM6ISyirqbhESy0UF8rTePr0uLdNHNwQtAUz04MlnY4D2dYbuw/zMndJ26hC+ZyWjWKjGqFt7w/tYqc6KmqGe2jVRAJRvwqwECmPCWJd4lQk5svdQvoujXcoj/0sx6c7YwmRLsUI55FR4kSYdtd+4kVC452ac4xOHp6C9PTtGuJEoyxyOqr85bTFsXHqd+3t3gXtEwmV16XyUTK4ikJctj+15RoLrrHkx6rYsjYaX0cfPfx6fJkTiyMouIK9LvD/w/c/pqJJV+iWIc8Y3VKnrC37X2u3clrk2kQ2Nc0ck3Yzx3pzjeboJI9/UTcyXCezcbGRYNNFhmvraMjZsg9o0UM09el80FL1CgEpqw29k70ufBefsdEui7mRrhagx9ltFtOk3uyB8Im0ZUf56UsuCFmos+sGMdQeZ5QloKVEu41TfulwMoFHKNQFcPMBehtdH9NSf5Ik6mwyiXGkrcblJWIomUBJqfn4LULlTN4agHLzT7+pLWBQT48rnkJXHYsZISOfDLfzSxgNBxzY+l/+rNPENLldrggfcGtlLXwVYq5QhxpWg5jqLBxJypCKuOHrwFSaV40UqKd2I92fUaLfbR2xwWanF6qLZ8CxDyX2hq4OB/9TTKfP2jVgcAYLBsIg3OpI0sWZEcyX5DAV/2vZwkQatk+4ul3cpl9e3tTIP+AIbcO9JJTDL9GPtb0oiCBDjL7/zIHj2hQ== X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYAPR01MB5866.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3033b4c-fcab-4f05-ff49-08db0aab504a X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Feb 2023 14:38:30.5209 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: BER3CAJqF4KYmwPOwkIsOmxOUui+v6E94f4VdgEINFuyvnz7zLj/1Pu4PFwEhwt3ft0v7rFDRCR/OBOEjLd10XI45+v/5JU5xa/QuXwUcXk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYBPR01MB5552 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Dear Horiguchi-san, Thank you for checking! The patch will be attached to another mail. > At Fri, 27 Jan 2023 06:57:01 +0000, "Hayato Kuroda (Fujitsu)" > wrote in > > I found cfbot failure, PSA fixed version. >=20 > + Unlike , this function checks s= ocket > + health. This check is performed by polling the socket. This funct= ion is > + currently available only on systems that support the non-standard > + POLLRDHUP extension to the > poll system >=20 > I find it quite confusing that we have pqSocketCheck and PQconnCheck, > that does almost the same thing.. Since pqSocketCheck is a static > function, we can modify the function as we like. Renamed to pqSocketIsReadableOrWritableOrValid(), but seemed very bad... > I still don't understand why we need pqconnCheck_internal separate > from pqSocketPoll(), and PQconnCheck from pqSocketCheck. pqconnCheck_internal() was combined into pqSocketPoll(), but PQconnCheck() = still exists. libpq-fe.h, did not include standard header files except stdio.h. I= 'm not sure whether we can add an inclusion of time.h, because it may break the co= mpatibility that some platform may not have the header. If there are not such a system,= we may able to export pqSocketCheck() and remove PQconnCheck(). The side effect of this changes is that codes become dirty when we add kque= ue() support... > https://www.postgresql.org/message-id/flat/TYAPR01MB58665BF23D38EDF1 > 0028DE2AF5299%40TYAPR01MB5866.jpnprd01.prod.outlook.com#47d21431bf9 > fa94f763c824f6e81fa54 > > IIUC, pqSocketCheck () calls pqSocketPoll(), > > and in the pqSocketPoll() we poll()'d the POLLIN or POLLOUT event. > > But according to [1], we must wait POLLRDHUP event, > > so we cannot reuse it straightforward. >=20 > Yeah, I didn't suggest to use the function as-is. Couldn't we extend > the fucntion by letting it accept end_time =3D 0 && !forRead && > !forWrite, not causing side effects? Modified accordingly. Is it what you expected? Best Regards, Hayato Kuroda FUJITSU LIMITED