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 1uZjZO-007Hkf-Ev for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Jul 2025 05:11:42 +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 1uZjZL-008DUr-WE for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Jul 2025 05:11:40 +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 1uZjZL-008DU9-GP for pgsql-hackers@lists.postgresql.org; Thu, 10 Jul 2025 05:11:40 +0000 Received: from mail-japanwestazlp170100001.outbound.protection.outlook.com ([2a01:111:f403:c406::1] helo=OS0P286CU011.outbound.protection.outlook.com) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uZjZJ-006mgG-3C for pgsql-hackers@postgresql.org; Thu, 10 Jul 2025 05:11:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YuJb//VxhCDwbZrkMa2yxNXVYeNbAczQh5tdax2jamAUjfRh+UIikRrwkkx+9dXDOg3d7Htu47QWxVGnjO1+RildYtaW18gu8YPRvKviYtewj37zIumQOJfWEaexiliAKP1Mbqxz1qUYb0p8kV8sTIVJtPB2NWB8X2GeEuZbDwuXwT7uxDvUQt6cGAnf50otoD1QlZq3FWv9tmQFGq3+hYg4sj9gbCgkTYkfBHIOluSPwQQFXrfB3sH1A6/cgMjcWasaGcGvMg9dhSblwbU9VmQF+ku9lttc1re0qnDLhtVeLNVl7grbXuEBXvl30F/LG/yelxsLPzQkFsZ8dTTYsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=8FYoEGyXfSl21WMRZUBRLU37IeXsk+cIt32+Cz+aKBQ=; b=W3OKf9DAfN6U8iJHzHszXnSr0PU0jrkTp1VyuFgf0pZaAkne6uUkjLPMpmoBKDd9RJ/V1QVYfpO9P1WRwA6DzHsQtrvTdOtTlKjpyqC1O8JNJEfHxd8yfTmFs3b9kwivTAMl0P5hIl5ST0eZ/6pJyFBeKCLvB7nFXpi5QuZmSaAUPVx4bHdZH0zE33ixH1oTTROs5T2YbMPcZuFLQ7jB5GD9tPOn+rBIU0WgJl69+yandbwFkEzV2Hho36YenhfQQ1L3Rl+5wzb62DG4XrABq+5ZytznKs9R+NYTPJjV5fLf2fTYUWkp9wIHH/CgkRcyPFaAYEvCgRNMZgtNhstscw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sraoss.co.jp; dmarc=pass action=none header.from=sraoss.co.jp; dkim=pass header.d=sraoss.co.jp; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sraoss.co.jp; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8FYoEGyXfSl21WMRZUBRLU37IeXsk+cIt32+Cz+aKBQ=; b=HIw7llvFTOVnfdyGiB07Z0JHWtG7zGiSG8lmWOT/v8RUTOFuvVsi3iE/y+tys0CUxUiqQQBRlACDRqceVoFfHdKTBSpDTExVUpXHtkr2I/hwQKvUeYAn0k0fAJlL+BcX2aOaxCzZ4xSik7jJSS/QoAi0elgtqpJinlXdhytfgZ2lM665P7WjvvuN68iyMxkwjevjr8MXxyWgXeFJQDx55Xvss/ZEjnRU8d6Hjh3RBPdrJslvs0MeLVxwf//miyB+n0phh2eHCAy49/eIsTTMz1yl+uKOFve6RHAkwOB0yNj/jE7ZIvpeY5ROy42PLJKMaYWVt1lWgEbeOuqnKDu1Qg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=sraoss.co.jp; Received: from OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:189::12) by TYCP286MB3820.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:43a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8922.21; Thu, 10 Jul 2025 05:11:31 +0000 Received: from OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM ([fe80::a4f:22fd:288:2dcb]) by OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM ([fe80::a4f:22fd:288:2dcb%5]) with mapi id 15.20.8922.017; Thu, 10 Jul 2025 05:11:30 +0000 Date: Thu, 10 Jul 2025 14:11:29 +0900 From: Yugo Nagata To: Fujii Masao Cc: Laurenz Albe , Nathan Bossart , Tom Lane , Subject: Re: Extend ALTER DEFAULT PRIVILEGES for large objects Message-Id: <20250710141129.94cb58f465e706fa37c1b9d2@sraoss.co.jp> In-Reply-To: <610c7506-3cd2-41c6-8346-581d120cf841@oss.nttdata.com> References: <20240424115242.236b499b2bed5b7a27f7a418@sraoss.co.jp> <3602391.1713930458@sss.pgh.pa.us> <20240424210839.GA863220@nathanxps13> <20240426175406.13e47ea3904de814afbfe496@sraoss.co.jp> <20240913161801.b1e60534d77fa9df447b775f@sraoss.co.jp> <9c0c4d7881d2450baf70edb0ae95415a81ac8cb1.camel@cybertec.at> <20250123192220.9bad2b9aec110bf335521276@sraoss.co.jp> <20250403230418.f41b23d155f6c6cb3cebcd92@sraoss.co.jp> <20250408122857.b2b06dde4e6a08290af02336@sraoss.co.jp> <20250611114937.b067c542192f8e5e740a2a4a@sraoss.co.jp> <20250611135737.bb7d3135141248819704ebca@sraoss.co.jp> <20250710103041.f93be994017e4ab61b9b9c35@sraoss.co.jp> <610c7506-3cd2-41c6-8346-581d120cf841@oss.nttdata.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Content-Type: multipart/mixed; boundary="Multipart=_Thu__10_Jul_2025_14_11_29_+0900_WtsizlP9soM8NNZ1" X-ClientProxiedBy: TYCP286CA0259.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:455::7) To OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:189::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: OSZP286MB2160:EE_|TYCP286MB3820:EE_ X-MS-Office365-Filtering-Correlation-Id: b234ac86-73b1-4e05-84e4-08ddbf703b25 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|4013099003|4053099003|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?K6SVcM29I3fJdLV7IFubMTL/MKJAc1FJe8D2VZ/ttK5SheqYxEMZ+dWZOee5?= =?us-ascii?Q?/2cITRzb3iItKvKYgXHoIdJFXILyc5RpbSH1KajqXBgdP+fUQkHc2JLnUeCo?= =?us-ascii?Q?NhnSv65DrRX5+zv2HaBwI3hOm0nLAV+bE8eG4ALgZuCoOfh3qSTQ6jGMPSHO?= =?us-ascii?Q?c4nYj9xB7UYdywUmr7EZ7aYWavi2eCCzIBwkqaAhOx8dB20qf8N2NAXi5wgk?= =?us-ascii?Q?WJJRek9Hc8ryOgznQaVbu7iDhTa7THlz2Q6GEQQ2EkNclaltbqCj3I3Es3n4?= =?us-ascii?Q?wP16gMBO4NlnUZD3O+S2LEn9QhgN4/G3x93d4IzMORrvzsn3k9jQ2ZYKk0gl?= =?us-ascii?Q?YCxaHzr2NpBjCs3rm9fnw5X5kta7PkfAUAd9MRdeqfbe2/D7BFWjnQ0/ELt7?= =?us-ascii?Q?owyUethqsyDwWL/eq+V0qVM01F8ctrVVzqdbVCXzs9lsRL8YjAwo0BlZQQbd?= =?us-ascii?Q?hPRSlhe5WAWVAOA9JiB9vOMLUf5Kn6H1HOURbsbiErLnjqLjjp/EXUih6JAm?= =?us-ascii?Q?Hn6IOeOI20n5TkQVZeHjuPtxbEQHHoJajs162XAvaOThOwvNM/5pS5dX+/NV?= =?us-ascii?Q?bDC0zMZIwJjs5537BNMELvn3mN4ajf27K9kloSVt0h9eP4CPHFlqyFodg9Qh?= =?us-ascii?Q?oNOkIz/8iZzr+cjZQ/QkDIUCat3l8pb/tNMFGNLyUFb5xqPJj0D2FTcQ34qC?= =?us-ascii?Q?ahwRX1WNVN9PV47oSkGWM00DbHeEq5euGfIhjcBnoCLVwSdtgYrlVXiGYdzj?= =?us-ascii?Q?8HTuh6clDaSQbr9dBpdkaA2l/dP1ZhoozVFqLHfsNNk0HQecdBNvBrCq4FcR?= =?us-ascii?Q?XfhqSFavQmUGR0kd1ndQPs1al+4DPeK3rQ54hP250t3Q3YA26TKSBI5dVa4J?= =?us-ascii?Q?6UCVNV2mppxo1qvPfhNwi7qeLqum3/vkr2NvvRMvRiWrty70Gha413hwMy4c?= =?us-ascii?Q?RkXo8Joj/tRHucvPLwyjDPVMEjPVj2R8Lx/mwFMS/NtVsJV3nn0gZVI0Mh9G?= =?us-ascii?Q?voRmk5/2T+Nhi/CY9zeDszwZ7oodEJHFyY7H3n+QLl9z4vU64HPJptelm1Wa?= =?us-ascii?Q?WWsvRTMoNAi5zx2SLWUPOeA3GywSpohth+n9GRbep46FOR5F+G0128PyyyS9?= =?us-ascii?Q?qfWC/IN6F9KU2bq8tfWWSy5EZAy5muS1D7DI+ilK0MNiLxLHcjhToCo631Oa?= =?us-ascii?Q?3UdLKJtwYyZ4TiUlBhaCGXTgdd1gMrlR1ASxvMzUfDcmvqcIbrERbnEGRpBL?= =?us-ascii?Q?ro2bHLnYz7SCck/vGGoan6OGnQWQzeRDgA/jI7+kOE1wZJ2wvKlPiDxsgvut?= =?us-ascii?Q?ookdVKN3w5KUuSj2M/m+ZcyOEZIILeDeWCehjThFxhJR6pYKg938HYM+zYYA?= =?us-ascii?Q?Cu0aQCzdVsuYVOonQQWg4gMAOHnZxC+sloLb7d3KBnJEUrOFcQ/CuyiClO/I?= =?us-ascii?Q?DTT5UEMh2kM=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(4013099003)(4053099003)(7053199007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/VWi9qw3yd86A1MxHf4jPeeFd0rby5pkvtiRmHB9G6IUW7GhIO8+dJxB6T2q?= =?us-ascii?Q?g01+FKMjYubet4QCtOVyIkwD/9ohGrXlQmkXLKlD9s8fvbyDsJiiA0nauOB/?= =?us-ascii?Q?3RfqgXFE834A6fhDVrJwRjTT/c3CS8NNf3tmKtl4jC5W9mQgMQoGdLDoLm22?= =?us-ascii?Q?epodcFO0/iXLu3krPn6/2/o43uJqUDDyP2QRXsAFFsHEbbTWi3twNTmZjYfp?= =?us-ascii?Q?jxFClRVHfOgxTSuNRJpntFlKXCweZBaoo1Yz9oz15uoxJMWymFvEVFaOwfSl?= =?us-ascii?Q?n3oaEsOULoDC8FzPVDmYiHY1G+TDQh9yD6LWTcdsTfcMBNXwOmH/IJS6tiqW?= =?us-ascii?Q?mf6+PUbDCvpcsFp6R9ErbN4CmdbMwNc0QV3JiHbgRLgoTTunwioDlF9nVu00?= =?us-ascii?Q?iPO6tomr2UDZwfQ4o+Mkabw0JWsVr1NiV7vQFO3el0R+98RR1BTrwFK05qVc?= =?us-ascii?Q?YKa8pFXWeT0uWWoX2drytxcR5PZHxI2NMCWJTEpTasEvp1zIZh8P8TTpStv0?= =?us-ascii?Q?cWfKYsqOCNBjaJzBlfK9VrMmOi/BF+XK68tLGQ8+ZR2+pEOuJbmAi2Iss7cy?= =?us-ascii?Q?+8quMRnZlgF9uUmurgJrOMFlH5weWJWmS+quobiqU+2JDg7ejGhG1rN9C79T?= =?us-ascii?Q?pFuSbez1fxjGIYK4u8CwmT6H4+Q5q5+4iAFpcKX99JHrNcd5SDgXA/PIw+8T?= =?us-ascii?Q?okMV9GwgjzzXR/OmUbNzIbaw+ofuHykiop8ZZnY1IzbbqfU2d1Pvj3oLa2ZW?= =?us-ascii?Q?zlBJi02KE2I/w60WVabISnXu4Wcy52JHilcbI6D1T8Q1VI2RaiisLQpV0Eon?= =?us-ascii?Q?2aFU67UFnCC9sSGSwnJyR5+CD9kHYV7H98nxTfOF66Ai7BnthpOT8Coq/5U3?= =?us-ascii?Q?SyXXAB9HbOGo7TucnnD1eNBHYog4yo2ZeypxfYvpIEM5B3q0b/eSVnR7vyL4?= =?us-ascii?Q?T+oeszMtZuJLffLQkemrHkaDmiPTAShvuSxiSTjOGBA0vVZ2vFrVbpMY+F3c?= =?us-ascii?Q?B5CWmw+EviVmWeBkl0eD+/Qih9wzzvMsini709Vy2FmUR/kAUwAFr7LAZSwr?= =?us-ascii?Q?GfzDQYFVwZlAdqXkHnGmWUJ+sP2KCjnh/9igh++gvdywBSR/48ABo63t4k0I?= =?us-ascii?Q?Mj2FtBpeWvkEyu/+ruiLkx2AvnzKAmAhdPURnygclkr+Le2tYMjWoPknHyAA?= =?us-ascii?Q?0L3afbmGRDIA0+BmtUTiUusZaKzWMhT3MkbSaiHXl2P/QW3SeAYNk3169rsd?= =?us-ascii?Q?HF2UhhCfxvzHJYIp7MKGT82jPpQv4AfgQDWK7NmfM58foUgRFaFa9U5zLsqT?= =?us-ascii?Q?ak9vJjhcP4ksz82YVOps8zXWDzzDfchEOgTs3gu5N+xNobJ/U6dxBShayc6b?= =?us-ascii?Q?iJqrW2rafy80u6ftAtmEco0/JQW19Aoj805ODmBQFUkAUTF4iFmR/fKFYqh9?= =?us-ascii?Q?v2DucbTYkYDRf0VwHHmlVvJMyw8zLuyqlEIneE295v83aE7Mp7Y0O/QvTL2J?= =?us-ascii?Q?ObphkI1b9i/ehe2q2poIOSxnvYlg4a0n2DIim6cVEr7vDHF3uoJo5Xs5/L7P?= =?us-ascii?Q?/pnM/lor15kA0+8E6hJQTpNWLFGrCkO9SpE4y6kX?= X-OriginatorOrg: sraoss.co.jp X-MS-Exchange-CrossTenant-Network-Message-Id: b234ac86-73b1-4e05-84e4-08ddbf703b25 X-MS-Exchange-CrossTenant-AuthSource: OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jul 2025 05:11:30.8614 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 75db6c32-352e-4063-ae79-cafb8623f6db X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: G2rYq6Ezz95XO0Q7HSHTMfwTy+1Lpt42ZyLmdQqsUg1H4jzT/T1WL6TfDit/M/GG0Mvj5KgYvukU3YhK2kp7Vw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYCP286MB3820 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --Multipart=_Thu__10_Jul_2025_14_11_29_+0900_WtsizlP9soM8NNZ1 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Thu, 10 Jul 2025 13:23:47 +0900 Fujii Masao wrote: > > > On 2025/07/10 10:30, Yugo Nagata wrote: > > You're right. I must have overlooked something. I think I saw "TO" being > > suggested after "FOREIGN SERVER" when no foreign servers were defined. > > > > The attached patch still prevents "TO/FROM" from being suggested after > > "FOREIGN SERVER" in such cases. > > Based on your patch, I'm thinking of simplifying the code like this: > > - else if (Matches("GRANT", MatchAnyN, "ON", MatchAny, MatchAny)) > - COMPLETE_WITH("TO"); > - else if (Matches("REVOKE", MatchAnyN, "ON", MatchAny, MatchAny)) > - COMPLETE_WITH("FROM"); > + else if (Matches("GRANT|REVOKE", MatchAnyN, "ON", MatchAny, MatchAny) && > + !TailMatches("FOREIGN", "SERVER") && !TailMatches("LARGE", "OBJECT")) > + { > + if (Matches("GRANT", MatchAnyN, "ON", MatchAny, MatchAny)) > + COMPLETE_WITH("TO"); > + else > + COMPLETE_WITH("FROM"); > + } Thank you for your review! I agree with your suggestion and have updated the patch accordingly. > > > But perhaps this corner case doesn't really > > need to be handled? > > Probably I failed to get your point here. Could you clarify what you meant? I'm sorry for not explaining it clearly. Currently, TO or FROM could be suggested immediately after FOREIGN SERVER, but only when no foreign servers are defined. When foreign servers do exist, their names are correctly suggested instead, as expected. The patch fixed the behavior so that TO or FROM are not suggested after FOREIGN SERVER, even when no foreign servers are defined. However, I've started to wonder if it's worth fixing such a corner case. What do you think? Regards, Yugo Nagata -- Yugo Nagata --Multipart=_Thu__10_Jul_2025_14_11_29_+0900_WtsizlP9soM8NNZ1 Content-Type: text/x-diff; name="v4-0001-psql-Some-improvement-of-tab-completion-for-GRANT.patch" Content-Disposition: attachment; filename="v4-0001-psql-Some-improvement-of-tab-completion-for-GRANT.patch" Content-Transfer-Encoding: 7bit