Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:60279 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 413 invoked from network); 24 Apr 2012 13:34:43 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 24 Apr 2012 13:34:43 -0000 Authentication-Results: pb1.pair.com smtp.mail=julienpauli@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=julienpauli@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.83.42 as permitted sender) X-PHP-List-Original-Sender: julienpauli@gmail.com X-Host-Fingerprint: 74.125.83.42 mail-ee0-f42.google.com Received: from [74.125.83.42] ([74.125.83.42:47982] helo=mail-ee0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 30/0C-34190-2FBA69F4 for ; Tue, 24 Apr 2012 09:34:43 -0400 Received: by eekb57 with SMTP id b57so162595eek.29 for ; Tue, 24 Apr 2012 06:34:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type :content-transfer-encoding; bh=lSAQXDPqOLzM8z2udaGGnwkqNLa8mF/5WyeO4PvORFI=; b=VA2fCwzzZ51fMZ6qNg6vtVxdG3/EHeyBlgBdiYDi3MZgu2TbvvHYAXDNX+skenaBH5 PEwFoksY1rHrPejIRwXSdj2sJghcLVS9O/z29erC1CyU7ViAx8k3m0gt/Tt8LNRP26D8 RpXZpjpSN3aLFT+s1qBQa9z4FG3ww7RUVzSQ6Q9WXWkunsYxU1K25gkWSA1jZyvIVR06 Zf8hhbA+E9c3anNQOhhvmten566JQSmBrIja7klb1NGIbn9zr0cs70B0xjKwDRA7QOE5 7Bvy/017oHdDe7D0BH93hC2W+zuCBUZgEv/gv2r7jjtnwQhZEw2TjaInLl/XGQLt4Biw osCA== Received: by 10.14.39.195 with SMTP id d43mr3295526eeb.28.1335274479697; Tue, 24 Apr 2012 06:34:39 -0700 (PDT) MIME-Version: 1.0 Sender: julienpauli@gmail.com Received: by 10.213.29.83 with HTTP; Tue, 24 Apr 2012 06:33:59 -0700 (PDT) In-Reply-To: <1335271260.13732.49.camel@guybrush> References: <1335269202.13732.34.camel@guybrush> <1335271260.13732.49.camel@guybrush> Date: Tue, 24 Apr 2012 15:33:59 +0200 X-Google-Sender-Auth: aGbWhA60kZHN0_hK_oIjg5XY2dk Message-ID: To: =?ISO-8859-1?Q?Johannes_Schl=FCter?= Cc: PHP Internals Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] Expose mysqlnd API through all MySQL extensions From: jpauli@php.net (jpauli) 2012/4/24 Johannes Schl=FCter : > On Tue, 2012-04-24 at 14:27 +0200, jpauli wrote: >> Aha, I like when an internals guy teach me internals stuff :) >> So, OK for 5.3 , what about supporting that for >=3D5.4 ? > > Maybe. ;-) I can start working on ideas/patches > >> > >> > The other reason is that one idea for mysqlnd was that it doesn't expo= se >> > anything to the userland while ext/mysql is legacy and get's no >> > additions and PDO would allow user-defined functions,while that's not >> > really nice. >> >> That was my first question : Is it better to provide mysqlnd API >> through all 3 MySQL extensions, or through a common mysqlnd_***() API >> ? >> I understand your thoughts, but I disagree as I think it would be much >> more clean to expose it via mysqlnd_***() API than through each MySQL >> ext (and for PDO that would be even more dirty). That would as well >> add more and more #ifdef MYSQLND inside their source... >> I was thinking the same way libxml2 API is provided inside ext/libxml >> instead of through each PHP XML extension API. > > Well, as said, we couldn't before 5.4. I gave the "historical" reason > for the current state. Got it, got it. > >> >> What if I choose to only compile pdo_mysql (against mysqlnd) and not >> >> mysqli ?? I then would be able to use mysqlnd, but I would have acces= s >> >> to its statistics, as its functions are part of ext/mysqli... Strange >> >> as well as embarrassing isn't it ? >> > >> > You simply shouldn't do that ;-) >> >> ;-) OK, but that can be done easily. More and more people use >> pdo_mysql and could be able to not compile other MySQL extensions (I >> got some machines where only pdo_mysql is compiled in) > > All distros I recently checked put all three mysql extensions in the > same package. People who build PHP themselves should be able to fix this > easily. So this does not seem to be an issue. (while that's irrelevant > for the mysqli vs. myslqnd question) Makes sense. Julien