Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:111702 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 82529 invoked from network); 28 Aug 2020 12:16:54 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 28 Aug 2020 12:16:54 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id AA02C1804D2; Fri, 28 Aug 2020 04:20:29 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,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=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS; Fri, 28 Aug 2020 04:20:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1598613614; bh=Dju3ZiQzNvrGet98P6H4iemhDtWnwoCTeYMoQNMgyYw=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=eotDX1Ns2SztLwtAGxqscjAxmTQNsqA3Mz3Xr4yh+F3TqALsyCj0C0zCsVCBzu4vM PSyz67A5HLXbVgQN3PPSuadUthbyoSbVO74CaKxf9nISC3zRKCLMzAaW+UtFHLBP+w 9sLPlefHUuUp5+rwWunQ6ZC2k9P0hKZTOODE51/M= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.2.130] ([84.179.224.153]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MOiHf-1jy5kf1yxj-00QEGM; Fri, 28 Aug 2020 13:20:14 +0200 To: Matteo Beccati , "G. P. B." Cc: =?UTF-8?Q?Dino_Pejakovi=c4=87?= , PHP internals , Christoph Michael Becker , Derick Rethans , Sara Golemon , Gabriel Caruso References: <08b959f5-7652-5e8a-562a-c2659facec8c@voxdiversa.hr> <20277058-b463-038a-4333-eacd023ccdc4@beccati.com> <3220cfac-aeca-0e28-3574-77e2b2c89b1d@beccati.com> Message-ID: <6bc91a39-2b24-6262-434a-e8c236edcf41@gmx.de> Date: Fri, 28 Aug 2020 13:20:12 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: <3220cfac-aeca-0e28-3574-77e2b2c89b1d@beccati.com> Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:X2HCvB2JtuCdsV4LCga7GZ6T4/Wg7vwvoye3YBFOIHDFK1etJV4 BFBbo8u97sC3WtXjWW9+tlnMDmvGmktGJirfdt/6Ez6cUkpzPathMg92Wndkz+0hNj+hKaK Cx0IfMOX2orGeUAl58lz9cl0bB+aKZ/OkeIAaNhlyyza4H+mAitUe05WNfzkJ+aI8JVTRXH +2BYfvfd0sb1ca2X2k8hA== X-UI-Out-Filterresults: notjunk:1;V03:K0:0KsgoMWnUv8=:WKnCcAvpH8b6hsLMEvLazi 7yV/vKPBmdGLujudLgA1dQ5N5tRrzwB1na4qSHV7UiQqQia7nrNZK5O/iPOGmQdRSDqW9QtBn qlVk8r8W3Ri2I91vHO4W/vUPn+TMR3Qm81jlKRU+9HvWaRgmAk2rse7Uu5f3pJfIAHGmIsuC+ jaYOy4Cd60Nk0CuWZNZHjs/9X6LPO7AkrVgFVMgqLjT5CHIakYU14VZrAigdL5wHY3kQ5DJb7 QcO1u+T8pf3b5qhYOh+lVVdiq9NkeSLtM3i++9AYLFaNXX3caQwo5Hs6CmNS9tw6NXHyaYE1f 49BBAT1Eot/el6c776raNTZ3PLipXq15fycNos+6fTQbdgWLSf8En71d4RrMBMBucqZVeiLUp 6TfTDknWO3XzfeI4v64GeDvcN20dNUCter+qZwEoRFZYqzHjo75Qto+NOMs1b3pIVLSPwupnk I9Xz2lf42Lqn6RNCmm++dhR3aPvPw466fiDFDmKGpeeUIVRIvBDdJaAxZs1D+lC04uWRuIjAR G+mTQVjaf7f3VlVCi23wGhseZMivjeUslh9fFkS+Fie0b/DHC88pj34yTwjorNNF+OBhoRbdx Dq56emmpObpwxjK9woaVOL04VhjI6lM/UHDp09mW20JLbgX0zuhbmldflaV77CdhyDf4mQFRN arYq/bARN9pdzwd3eDs6RfR/VcZi9V7zUg/x7RIABbZBHU652i09pJbpaTmgoBQr3tio/5gjZ kUnpoP+8pT7uyTOn+Lv+5zsA05RDDTeyKfUSejOxyp0NkNRPiD9sjYHlMTJ20Z32ngP4nbGOJ ObagASJ7r89bCbHb8H8e1NDcUIb47eWbNpO6NYZiONFWDQdN+7pKaHjoDw85+9gTl/5RYIC7C Wh+b806O6QkEMU1KKenFjPf4LDyxoHFh+sT8uzLs7OlRkFNT1k9oq789xshbXNokF5krKITmd PN6YY9R+SUcI+e+JVRZngnCEJ1p0tzViaS1pDe8byH0xY1DRNH04B8TJceYZB2o1NXag+zJff fvUuabdGnq/aBWRin7UQ/+2qi3cnVjdh98rR8GxMYJLp/1vR/W5kSd5V2zbVQGbfmfY/X02v9 b0Tntlex6K1wd0P80xJaTQhLfe6SvEPWB6swUrrgRqYsJuGm1FyLTeZYbtrBLI+kVz+rKtYq/ 6DuU7xGTpTzc/HqERjxMHqOz1SlRP7eQc3IBXEQyY0IR4Cje2Y9mXKdO2COKydI+sGIUhQEJl Bi0kdRegllNtAjMj3LwDUwdCTWVnf9pI42HN/dw== Subject: Re: [PHP-DEV] PDO fetch performance problems with many bindparameters From: cmbecker69@gmx.de ("Christoph M. Becker") On 28.08.2020 at 09:18, Matteo Beccati wrote: > Hi George, > > /cc release managers - pls don't hate me ;-) > > On 27/08/2020 10:23, Matteo Beccati wrote: >> >> On 26/08/2020 19:28, G. P. B. wrote: >>> This can still target PHP 8.0 as this seems to be akin to a bug this >>> might even be applicable to PHP 7.3/7.4. Anyways, good catch. >> >> You could be right. I've created a draft PR for review: Dino could yo> = please benchmark it and get back with results?> > > https://github.com/php/php-src/pull/6047 > The PR seems to fix the issue: > > https://bugs.php.net/bug.php?id=3D80027 > > Dino's bench script takes 3s on vanilla PHP8 and 120ms with the patch, > so it's seems a fairly good win. The fetching part alone goes down from > 2.9s to 3ms. > > The way it's been fixed should be backwards and forwards compatible with > no real need to bump PDO_VERSION_API: external PDO driver extensions > wanting to use the param_evt_skip flags could simply set them via a > preprocessor macro when compiled for PHP8+. > > For now I've optimised the pdo_pgsql/mysql/sqlite extensions, but I will > look into the other bundled ones too. > > Would you think it's sensible to treat this as a bug fix and target > 7.3+? Or is it better to do PHP8 only? Or? Might be better to do it for PHP 8 only, or maybe for PHP 7.4 as well. I'm not strictly against doing it for PHP 7.3, though. =2D- Christoph M. Becker