Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:125848 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id F03081A00BD for ; Thu, 24 Oct 2024 11:01:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1729767816; bh=D1qwJyj57uU0h0XKQ5sgcmOMLF7lnuOeAVBvTx6WEVA=; h=Date:Subject:To:References:From:In-Reply-To:From; b=lLf88x9JE6G1knxTanW86BEwHz3YVt4vcGlrJW0ku30b0mc18tyjK/Qmek0U01rW3 CxBQBYs3rfVPmuLxM8QtOm+pSH51C7FBlEH+7tqVoxzCW9pm8WphRWDNM7W+IKffdR PXNxw7GTceCKW2eZuqLxJpC4KL0b04HGFbMQgN8Ln+iwMT/8ZoOj6svmCKyy0m4k5R 6IhorAj6Pc1XC+y8s4Wb30cjQbja1bV7UzJ90NUVHRqIC1kme6ga6xiHGGdXtBzPxL WBuwMjXGauLBlRKUBPZMNjX+nqR4b2w9YaA4hvxbWr0j+GbSP2dQJvb/D4sxwAtmjy s0JGlzdzRS2hg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 1A330180037 for ; Thu, 24 Oct 2024 11:03:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 24 Oct 2024 11:03:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1729767664; x=1730372464; i=cmbecker69@gmx.de; bh=XbH8ZsMwW3T35B9NDvzsHt0L2XhPVjYabFptstK5BNY=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=f+8tMEdP7+S0Jt5Y4fwrWQHCkPpkXsQ3+bv2IpZIhnRXOKLcPR6u3MbsYe1UcX/B qLxPdUOCNqADcoZCwsq3vorFkFlRZTDwOyL9SITZmPU5Lg25PCZp0BTNwJEoNFSlA vjUtPorXfsyLoIbakPblfshNUC/Htv0izeTqYHIHOL0Z8/AAonzIEUMx6+rWQ94pp /88co0V6zpmCK4YXBrHyiIVVtGvUBYRByBt5tgH84QZcGsLwrYZcgGWajhs7vS7d5 PWubjPTpxvSTYVqo8Tpr+H5/I5aiRgfeGYbFCk1jTRh7+R3ArESQglMwx30rihtmF W0LqLr11o0Oa9QwfEg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.2.130] ([79.251.205.37]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M8hV5-1szoyv2EvR-003q5Z; Thu, 24 Oct 2024 13:01:04 +0200 Message-ID: <5366cc2e-d839-41b1-9423-c53bd6ca2d99@gmx.de> Date: Thu, 24 Oct 2024 13:01:04 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] Re: [RFC] [Discussion] Persistent CurlShareHandle objects To: Rob Landers , internals@lists.php.net References: <5753e226-e512-4051-ab87-0184f21797d4@app.fastmail.com> Content-Language: de-DE In-Reply-To: <5753e226-e512-4051-ab87-0184f21797d4@app.fastmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:y75MNttvoEyhIIZFw817DY4TB+Z4SlTkwMFcnxesD25otXdl6iG ElszLT9pX2Jp7HV4a+yJtg31fEdf4GkKA/RVpm3WpSGeDSSTIlz6cUZ7/YLRljZC0azrPh+ 9pjKWfJAOpSkUMeYIcnpFrkO3EGoIRptIhCoHug4DJpgaB+AbON495X81mC+H6KEevHnG6G wZf1ewHcw+Fyx/lcH3Xlw== UI-OutboundReport: notjunk:1;M01:P0:zyxjltDKq0I=;bitKZP7NOzxze8wuPxVrYbLLCTL ANxp4ZYMQYmLwOjTRZxITwcP/OYimSUzyD6TlZfxhruSAkQ1F4G+ytwry6RVoC9s82zveVR+k jw5SyPXHKOuY8xpGr9YuN56N6a1b8r6mQ7TDu6SuU8PvtpnqjS4M+voIBl7Zf6AFkKibgeU6y r8KD8X7elBVqVD9yjAmDwqyB7nM/nmeJWh3V2dwMlOuGpyWpiLF4NLKpYARQTV8/s7AcDvn8b 18Go1xQAaZzggPZOLG8uwE7uVq8BdIAagP6lycATpw/UHtZxLYl6HSzPWdnaPma3+NYDNfcbs nrw+pU3G8fJ4K8GvX72B8lqobd2cH0exvdxPwGEYQGwT+XKd+UDekU2JZxM3m2JHYjbhZNOT6 mPJoeq/tn0Cz+xgunwSNND0bzOfHbeC9llx8Fn2iIVnSqz6b+Okx/Gx/TFeoBDEeC8k33PqRv ocXSQw97eAU5YsrGjKQQpsbM/PFU++KD1iTe98y2kFyC2ID93+8RMkv7rW3dJPkifhWGR1c03 KFl8gW6jZukSkIn4xxkdT8GiXbgMdmWKBSKqReqqHaglZCIisiOyOr83E85XewV/9TYXJQx/9 O2tnWrS3NTwxltNabY5249T9TW63eVDrKhD30CaEAgvayRfqQBVjZebm+xGVhSlvAFzC6rEbN B4y2oO1eMu14/kHBCPz7wHPCxWRVGlVg4Oqn5wwStOjn3OjysVPyrWFT4B6uRnlKJ9mpud+y7 dVQoMi7Q57E7XnH19oJIaX+RlCPdTumUKQStLxXXYdpqwa0ScZo1n7mSDq7tgvjfN/XAQmYZX nPyc+5ylb7DTrMZ7ACC/mMW6XnzZ58aMBuh+pb0YAVsk4= From: cmbecker69@gmx.de ("Christoph M. Becker") On 23.10.2024 at 21:42, Rob Landers wrote: > On Wed, Oct 23, 2024, at 21:20, Eric Norris wrote: > >> Were you also suggesting that I shouldn't ask a question about the >> implementation regarding using EG(persistent_list) vs. a module >> global? I'm torn; I agree that it is an implementation detail but I >> was hoping to actually get wider input since it generated discussion >> in my pull request. Since no one responded here I felt like it'd be a >> lightweight way to get feedback on what people felt, but the lack of >> response probably means that people don't feel strongly enough about >> it. >> >> That said, after reflecting I think I would agree that it is >> unnecessary to add this as a question, and I'll continue with the >> implementation as-is in the PR. If people would like to send feedback >> on using EG(persistent_list) instead, feel free to do so here or in >> the PR. > > For what it is worth, I think you should go for the EG(persistent_list) = method. Over on FrankenPHP, we are looking into some improvements to TSRM = (so that Go and PHP can share some of the same locks, among other things) = and EG uses TSRM while I think a module global would not. For practical purposes, `EG(persistent_list)` is a module global (can bikeshed whether the engine is a module). In particular, both use TLS for ZTS builds, and neither can access entries of other processes and threads, respectively. I still think we should not add new stuff to `EG(persistent_list)`; after all, resources are scheduled for removal, and likely `EG(persistent_list)` will finally be removed, too, and then we would need to convert to a curl module global anyway. Christoph