Submitter | Jun Wu |
---|---|
Date | Feb. 8, 2017, 10:52 p.m. |
Message ID | <5fc577761fb78168fcbd.1486594350@x1c> |
Download | mbox | patch |
Permalink | /patch/18355/ |
State | Accepted |
Headers | show
Return-Path: <mercurial-devel-bounces@mercurial-scm.org> X-Original-To: patchwork@mercurial-scm.org Delivered-To: patchwork@mercurial-scm.org Received: from localhost (localhost [127.0.0.1]) by mercurial-scm.org (Postfix) with ESMTP id 62B6F2C142; Wed, 8 Feb 2017 17:52:55 -0500 (EST) X-Virus-Scanned: Debian amavisd-new at mercurial-scm.org Received: from mercurial-scm.org ([127.0.0.1]) by localhost (mercurial-scm.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id HswBT8q8Lliq; Wed, 8 Feb 2017 17:52:55 -0500 (EST) Received: from mercurial-scm.org (localhost [IPv6:::1]) by mercurial-scm.org (Postfix) with ESMTP id F28322C143; Wed, 8 Feb 2017 17:52:54 -0500 (EST) X-Original-To: mercurial-devel@mercurial-scm.org Delivered-To: mercurial-devel@mercurial-scm.org Received: from localhost (localhost [127.0.0.1]) by mercurial-scm.org (Postfix) with ESMTP id 829AE2C15D for <mercurial-devel@mercurial-scm.org>; Wed, 8 Feb 2017 17:52:52 -0500 (EST) X-Virus-Scanned: Debian amavisd-new at mercurial-scm.org Received: from mercurial-scm.org ([127.0.0.1]) by localhost (mercurial-scm.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id UwYoZj622hCU for <mercurial-devel@mercurial-scm.org>; Wed, 8 Feb 2017 17:52:51 -0500 (EST) Received: from mx0a-00082601.pphosted.com (mx0a-00082601.pphosted.com [67.231.145.42]) by mercurial-scm.org (Postfix) with ESMTPS id DBF792C143 for <mercurial-devel@mercurial-scm.org>; Wed, 8 Feb 2017 17:52:51 -0500 (EST) Received: from pps.filterd (m0044008.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.20/8.16.0.20) with SMTP id v18MnBBF021306 for <mercurial-devel@mercurial-scm.org>; Wed, 8 Feb 2017 14:52:51 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=content-type : mime-version : content-transfer-encoding : subject : message-id : date : from : to; s=facebook; bh=24hrNnmXHsrTic1Jhnx2FjoGVc7tmo2yWOdU0NfJ13M=; b=Ztmt61d9hDfiIQBvUwtDDQzxb/P5CdnSfOsIVvoQrnUvBjwy/pv13+qjkRhOxh5LGCdE gyKAk3/caJq2RzVXQFtGDttHnit0uV8Mc277uFSf3XWqHEdZnlkw0u4wwAblatwNVRKK feSTYVMEcfoJw8biiRJNQ6EUTLWabJMQZe4= Received: from mail.thefacebook.com ([199.201.64.23]) by mx0a-00082601.pphosted.com with ESMTP id 28g59k1ufq-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT) for <mercurial-devel@mercurial-scm.org>; Wed, 08 Feb 2017 14:52:51 -0800 Received: from NAM01-BN3-obe.outbound.protection.outlook.com (192.168.54.28) by o365-in.thefacebook.com (192.168.16.14) with Microsoft SMTP Server (TLS) id 14.3.294.0; Wed, 8 Feb 2017 14:52:50 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.onmicrosoft.com; s=selector1-fb-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=24hrNnmXHsrTic1Jhnx2FjoGVc7tmo2yWOdU0NfJ13M=; b=AKfmLlnT/094OcDQkDFqflA4U+n8SlEuVWniC8rv2iOFB9kv6aysOdS+dMCXqZz9JrvvR5CssC5duFN068n6F4CHFKgAMRgM5vLNPpInABRb3kCrEhSY1TS9DetTtEywavzGF+l4Xh8QiqUh+QpQfROuiUXrLkundHzB6slEmi4= Received: from [10.0.2.15] (199.201.64.130) by MWHPR15MB1517.namprd15.prod.outlook.com (10.173.235.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Wed, 8 Feb 2017 22:52:47 +0000 MIME-Version: 1.0 Subject: [PATCH 1 of 2 V2] commandserver: prevent unlink socket twice X-Mercurial-Node: 5fc577761fb78168fcbd7ec93d911a1b7b4989c9 X-Mercurial-Series-Index: 1 X-Mercurial-Series-Total: 2 Message-ID: <5fc577761fb78168fcbd.1486594350@x1c> X-Mercurial-Series-Id: <5fc577761fb78168fcbd.1486594350@x1c> User-Agent: Mercurial-patchbomb/4.0.1+392-291391bfcbea+20161223 Date: Wed, 8 Feb 2017 14:52:30 -0800 From: Jun Wu <quark@fb.com> To: <mercurial-devel@mercurial-scm.org> X-Originating-IP: [199.201.64.130] X-ClientProxiedBy: BN6PR05CA0010.namprd05.prod.outlook.com (10.174.92.151) To MWHPR15MB1517.namprd15.prod.outlook.com (10.173.235.14) X-MS-Office365-Filtering-Correlation-Id: b585ccd9-9291-41f6-4dd2-08d450753427 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:MWHPR15MB1517; X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1517; 3:cLynkbIuMbRXXzmkI7OuUQ/8nL5e/l87icdkYvEmu7cjw6slw+7GNAvLoGQoPdOtJ8+tv4/WSSoEst8vWg6wjiRJtgzlT7TYYk/SQxyskOUSmhhmM1OmhFb9OXz6wlRUkSJdIVE8bcgwfjKqyHEmsKVS39vCUFNbM9tGyPF/m/crAzpIeGYrpPmCC44PP2t3M+F+l5MN25mwPAw6bam3CvdsJmHxeySepZS1mxv7g8ryhPcSQqYRvlQfMmUHbhtr4l5sdSQdkvFXr/q3zCDJPQ==; 25:1i0+C4MRrXI3QCy1G6Lp995uMxllrlQH9F5viSUeojFgc6DU9A8M0rez9jUN2xoiMnkmc/7P4o2RdVYTB2zys25dq+FHOjmbYIn5aVZAMiD5FlMN8A9H77qfzbZRP2A0ll0jbf3EfiCfB6BE5MXoo0YKhN3OsQcCLPW8W5Ku9QOQWxCFgRZ9CDF45uRbTjkE75is+4bgCtPFt2y0gFuA9o91nkoka48+6/daMxsZgbvoh2EGe2JSyLUPPIb6ZVePgg3DI9lWoED135xowbkTfF1tQlImBP8OSNfEhuNibtSmf0+Am3xS3hPqBWqtFt1a3JMGw3n11Nm0yODTdmpzYM1rCdCV2F07dHTNxFUOhedvmdU306MrNR0jqhlfNCdJ0Xnfw06ZED9ZUnoSTzPF0whNzLhH3RFkxC0FB4jtFJWFZdZXO/8YCbU4eavzxbPamwTPiTRcPV9W1GlCdU+ATQ== X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1517; 31:r2liNcNsd0IZVv3A1c/9fJozMDFev9Pvjo235EfLQj7bQeer6Tq8wtCb21aDNLpWZl5kO7X9aasgj5w1Z8WSoD0NmNqGBPxvtRKTCDmjxlFw324cXdyifhpx2T5vpPb66teNY+yNxlLbXkoLjHdC48BZGqlNc6M/7W/txqeAF44WRmSkpx3yY52tobEu8xSY0mnot/SsMby30wrWvvQIYleOLyFtTAzdiQ38zjCgkkZeTV1s6n3QkHIImc/ZVy5V0bcJasvtW0huLIoOXcuqeQ==; 20:uMowoM2rHB9uLml7vCTWdZ8Dt3zcjUXAPuDLTROxnnwIfk3J0zX3cA2viQ8Hu2EhZQcX+2y1SOs7Z/gTtfEngRCGPAOq3YHDT7WKzujOWL9L5kfP5WtkiMaxkT3mi5Ouvho48Nv5N190K4/gtDdNaqi2x5H6SuUuvuf24rxWephU6K6Mohvz022ncungBsT7j9FmMuYAsXr3BEmgLahmMgkGYJ4FEvC4vaPF8CsM0m4D0wiOl54gUVE2aJmxqXCoWqO8ZxycG/fe9L9CTyJ9rhzQL7FEX47XAI5wP8kWIwBuMEEzpKVvxFPlHWadu25Rk7RtklCPr+iEYXYCKB5PzG34IJfijhaGsT69sTAPWhmIMuOrXVApf0D9ZyX2SmYkV/ib5ku3aRnVepWLRSRHKVUhSWp3QQoMEkmCN7BqnlDhYgbbO3pYIb7YQ+/Jz2kiJAxWX1SuAlUKGKI+I8NR0GmkOd8s6xjeIScQDPD+eXIFqfm44penFgKTOOrhbhdf X-Microsoft-Antispam-PRVS: <MWHPR15MB1517B09892C941AF9308FC93CD420@MWHPR15MB1517.namprd15.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:(67672495146484)(63843785518722); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(20170203043)(2017020702029)(10201501046)(3002001)(6041248)(20161123555025)(20161123560025)(20161123558025)(20161123562025)(20161123564025)(6072148); SRVR:MWHPR15MB1517; BCL:0; PCL:0; RULEID:; SRVR:MWHPR15MB1517; X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1517; 4:qNYglQtO3HyQfM2RUx0qCNikUVivCgofnJE4K02Wfqpfqwpfize7bVB+ZLNw8aL+Yow0HftJNpDAUb3UYxW/5SAIbXkAOU6jfPMXCLF4+aMKB3aQAiaaixjcX31WyEQ0WVN8UovgQY2BIFIGiT/2rU61Nz7FUDRV9edcdaxyqjwJDzAxlm1AtdKcXeMHTF6nAXY9hXElPeHMlGVSUojtGfvfPHHFQKEk7DNxk9au7piFlLZnHqBX9QV69VrahpMTtwt07t0sY3Bb9I+D/1l/Q5rIPqDPzPSQgfMxX9leo9T6wZagF8rumdL/t42BYWrObJAT2c+WeaASTG/tkKzDRSbSeTMD0hRBw/5E0Qa+FOeZZxph8HdGMtJXtp5WQZUAz8yUpt5up8CE/zffPTJl+7lX97aPgVXQM5qgfeuacna2jRnyT8qQU/kJgSJj037AV4Byt2jaJeydceFZqVbJiEp2gioBriBdrxBs4welRNl3ijpj05bOzpRHoD6/plhNNC3ZYO41fC7UlL8+Ditk6uJAfoR2mMV98bRzZwpR+ZJdg6SosmYnrpcYAJqCcZWRGc2VtoiqlzqbKKMK9Ii6Xcx04xTTgMRXAxSs6CzX18C0FbQuEHefTgkzR9GvHlm463bQgeO57eI3BD169Sh6RrH00sRIASh7zFgiL7MA9yldDxuPbg7w9IOiIhJ7TBN+yb1fPDDZ65FQuuEPWnDBZ4uAlajr+tr+xoouS4DQD/FnBgO0/6ZOAHUpuX/cdks/ X-Forefront-PRVS: 0212BDE3BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6049001)(6009001)(7916002)(39450400003)(39830400002)(39410400002)(189002)(199003)(189998001)(53936002)(6916009)(4001350100001)(3846002)(77096006)(6306002)(6486002)(97736004)(33646002)(305945005)(9686003)(90366009)(33716001)(7736002)(25786008)(6666003)(101416001)(97756001)(47776003)(66066001)(5660300001)(54356999)(50986999)(8676002)(81166006)(83506001)(81156014)(86362001)(105586002)(42186005)(50466002)(2351001)(46406003)(2906002)(38730400002)(92566002)(230700001)(23726003)(68736007)(110136004)(450100001)(6116002)(106356001); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR15MB1517; H:[10.0.2.15]; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: fb.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR15MB1517; 23:kyYyRTfhfBzx0sCBG3ei2bhAGTCmWBngpywfEMI05?= =?us-ascii?Q?6XzqYXsrtiKZrmKq0Cq2bghL0BVBnFPZXsXXUHpqD/m133181qxB2OC0ApDB?= =?us-ascii?Q?/NTrVfUXGzb2X08cr9G9BZRgdn49L4KVU/nGEJmn91+DNiULjJ8V9eZja6au?= =?us-ascii?Q?xjFy5RBv0GR46atW4h9/Ll0ThgxRUvYFxQUyNmTu4CT2i6Fq7RAi6+4jeES7?= =?us-ascii?Q?aqHszHwxQgnPTK+7A1/le1y9urf7+k2Q/er9o/S8Ll9IzWTgG9HD+d84G0Zp?= =?us-ascii?Q?33JMVQxDfc5oIxcsoXbLbVwdXgWrAuqzelCWbD9DTGdM7VGgxC++sR5CaExo?= =?us-ascii?Q?1Vu5WhhjB1Ewy9maNAUR9B/hCkXjV2XE1LEfZEqVlWQYdekOpWB4KSZUWI+u?= =?us-ascii?Q?6PWAuVWaZWfinZTsw0I4e3+V98vuRHvFzW4tbRPAI6CWUxcPjwRpmN2Djx8H?= =?us-ascii?Q?wzyW5Orih2OOVjB1cJTAYXD4p9BSvEWehowmI639EWUKyPadFLkhc+Q2JS0t?= =?us-ascii?Q?D7IW0vANT2I8s3ziTOPaNs3/GySfmuc7E0xIfKWsrqhlROewzsOyEgfbiBax?= =?us-ascii?Q?V2YcJWTcsfh3IJYkIDLWYq30ogBncP//WmGQEzU2pcrwkqrjhyj/YkbwduDo?= =?us-ascii?Q?AeYRKenKrNEYPFI9kNOfL8s/eoeqljl2VjHziCNfiZhZMQNOuRG5WpcJfl7r?= =?us-ascii?Q?1i8crYyMGSLr4XyK5+ToqPwwnQLkJSFLL6atHg+dIcbKvRrZ7C1EEDKNKVTi?= =?us-ascii?Q?gdsExeaXroLVoP9qpieUJHxIZbJZL8zs1p97bWIj3TvCC2V/gUQx3ma3KuZI?= =?us-ascii?Q?42tU668vFZDy322unrwtIsiiS0dH/lTnGN+Bn4wlTFME1+BKQnyZor6f7PmV?= =?us-ascii?Q?C69zMpnVEnUqWiQsawbZvaMETpymt+s69XaNAVfNA/e1m2h+3o30XUEKPaE9?= =?us-ascii?Q?YEoy2bT3atFnY08GdfWiWStKPFbyxXMyGadYyWcsF8h6+niJAlji3qGD1oxs?= =?us-ascii?Q?tMF/YuySu8lQFBqaZUxniglniTzlVkTprdaNL7UNGymgAv6BUajiNp01SxXv?= =?us-ascii?Q?u0pc+jJYkkTC15MiYCRedP1xisIGXp/UZWZ2ONQHIWBeE8IFIFX7i3ZMkEn8?= =?us-ascii?Q?rVGq7JYlZNw6tY+oVEUWyj32JrBNW28SGvZSMxEXh8y/yxzQ3QDtB/ZbTHA1?= =?us-ascii?Q?I/YQYFT66L7z2rQvzd7iwrENFhMvoDSibqmv/IEH8dPCUlYiyWQLD2aR3xWj?= =?us-ascii?Q?cx/z7ljML1fIpZm+9FM62WFdMiH/Kz0pllBGMfK?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1517; 6:YoYFW8Dck7tIT36QpIVp5SFWYHvU6oaKZ6wO5H1DmiAnKUGaZiMpQRo47judnWLj8wFmG5IvRp+eMpWXOOxemDKymdgTA3yi1yLibK5fAuWJTYEbTwaZqL5XUCvy5+AgT0fBFDSTUpxeqwT7ll6FcNxvHobCLmAlI4KN3KTNZzrMiRSKG3D4UqFcduSrgK5jwbZza/isMoc3bvcVceLW4FAO02cTzFScXO/RuJEyBNUClInAzw8jyl064ClspYnC8qiR4tGzSwMoVjApoD9xHW7ZGj0aDl531/M2CJIzLvSnYEJK3/gK53hIwafb3T+v9b2l1icqBjQRbapVVbaH9XoEmlv/HlIzYPItnrXrNis0o7gPlU6hj3w6zveS5xyDkvUZUwE23RaOtGMlaNR6rw==; 5:aaKfFDL+1hNj+C+9+fnf6/bCuqVr0zBT+TSLx9AtFr6OhHRfGAOJmtPkDQ0jH7kEQ/X7B2JbnUNANXmFWLM6u79/1ZEAidheonfijVBT99gfYO0RWG2MMrOc3X0x7u4WjiVr4fzBkbsiOzfpwSiCEc7XIhkRyQnmPc4rRpqJaHM=; 24:B24PT/AM/nktoZoINM0QszKHIBTyVlnWMZD/pnCCqtW4yRZes+aRGREnTw9CsBouJjCLWxZ9ky9Q52Pi2IPjdAyrNz68f9njKKsWeZkSFGs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1517; 7:4hjHfgbKdpa7qJXh3uL0nTcorpfiS57Zopi/L9hJsnx2hbyFSdsGo3+la2xRSaFKHJF0njFXFi9YJpnnVMhVfPQsechMTHdUwekYfeoBn+n+y6Fa/OdWIR38QpUsG2t3vJp+YVpT7ljjR+u80u6SfzaTxU3aLTArbrgDu4IIGteow7cyDw7Z/P2o+v/8AR5eu8luPY8LxMEnZJ9cI4+Clsp4+J1sruPvoe8FEmNDoO3S7pHgHe2y0KCvEr9zR0/nEpgqYzKAw1ohVYt2nJb/9HFlgS/Z4fa+JXbWc2c9urGXFqr8QTJYENP+g790MttR7AmSQJovztv/kd91wsrJtLQiUwxcYoLppsTgR2lneVTST7GLg50fIpqEOKKeD6ACmkAZCTdBA7+lesHtQOrwlg0byoHdgZ4n/Xwm/r2U9qRBJ1S/f33l3aRFXzhpLlTrqLydisDo+80N2PiW4O6ZBSb/2UieyAqhTSDsKg/CmMgDY3sD86LtgPV6FYj4dlczzaYhGU8Xt/PVIACstUnU7g==; 20:/u6Gt6iiYXONZm1baS4MfRU2VI/8zaAC6Ht73iz4BXy+LwuMa+xDMxRItSfuFumwH4W50S9o8QYKyyM41LaoMszI9pIPtoUfCjjwG5DrpPBF4PWrMz0ZiTdFWlB6k7LF9ybAgP5c4nk0hx5VBa2hMvJ4+24syKnyhF/BBC5jdl8= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Feb 2017 22:52:47.6103 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR15MB1517 X-OriginatorOrg: fb.com X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2017-02-08_12:, , signatures=0 X-BeenThere: mercurial-devel@mercurial-scm.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <mercurial-devel.mercurial-scm.org> List-Unsubscribe: <https://www.mercurial-scm.org/mailman/options/mercurial-devel>, <mailto:mercurial-devel-request@mercurial-scm.org?subject=unsubscribe> List-Archive: <http://www.mercurial-scm.org/pipermail/mercurial-devel/> List-Post: <mailto:mercurial-devel@mercurial-scm.org> List-Help: <mailto:mercurial-devel-request@mercurial-scm.org?subject=help> List-Subscribe: <https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel>, <mailto:mercurial-devel-request@mercurial-scm.org?subject=subscribe> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: mercurial-devel-bounces@mercurial-scm.org Sender: "Mercurial-devel" <mercurial-devel-bounces@mercurial-scm.org> |
Comments
Jun Wu - Feb. 8, 2017, 10:52 p.m.
Patch
diff --git a/mercurial/commandserver.py b/mercurial/commandserver.py --- a/mercurial/commandserver.py +++ b/mercurial/commandserver.py @@ -448,4 +448,5 @@ class unixforkingservice(object): self._oldsigchldhandler = None self._workerpids = set() # updated by signal handler; do not iterate + self._socketunlinked = None def init(self): @@ -456,9 +457,15 @@ class unixforkingservice(object): self._oldsigchldhandler = o self._servicehandler.printbanner(self.address) + self._socketunlinked = False + + def _unlinksocket(self): + if not self._socketunlinked: + self._servicehandler.unlinksocket(self.address) + self._socketunlinked = True def _cleanup(self): signal.signal(signal.SIGCHLD, self._oldsigchldhandler) self._sock.close() - self._servicehandler.unlinksocket(self.address) + self._unlinksocket() # don't kill child processes as they have active clients, just wait self._reapworkers(0)