Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:60847 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 46941 invoked from network); 15 Jun 2012 16:28:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 15 Jun 2012 16:28:57 -0000 Authentication-Results: pb1.pair.com smtp.mail=christopher.jones@oracle.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=christopher.jones@oracle.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain oracle.com designates 141.146.126.227 as permitted sender) X-PHP-List-Original-Sender: christopher.jones@oracle.com X-Host-Fingerprint: 141.146.126.227 acsinet15.oracle.com Received: from [141.146.126.227] ([141.146.126.227:44490] helo=acsinet15.oracle.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F3/34-11656-8C26BDF4 for ; Fri, 15 Jun 2012 12:28:56 -0400 Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by acsinet15.oracle.com (Sentrion-MTA-4.2.2/Sentrion-MTA-4.2.2) with ESMTP id q5FGSpY6015748 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 15 Jun 2012 16:28:52 GMT Received: from acsmt356.oracle.com (acsmt356.oracle.com [141.146.40.156]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id q5FGSp6x008836 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 15 Jun 2012 16:28:51 GMT Received: from abhmt104.oracle.com (abhmt104.oracle.com [141.146.116.56]) by acsmt356.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id q5FGSpDA013646 for ; Fri, 15 Jun 2012 11:28:51 -0500 Received: from [130.35.70.154] (/130.35.70.154) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 15 Jun 2012 09:28:51 -0700 Message-ID: <4FDB62C2.6090702@oracle.com> Date: Fri, 15 Jun 2012 09:28:50 -0700 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: internals@lists.php.net References: <4FDB5604.5000704@oracle.com> In-Reply-To: <4FDB5604.5000704@oracle.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Source-IP: acsinet22.oracle.com [141.146.126.238] Subject: Re: [PHP-DEV] [PATCH - PR] Disable ATTR_EMULATE_PREPARES by default for PDO_Mysql From: christopher.jones@oracle.com (Christopher Jones) > Am 15.06.2012 03:01, schrieb Anthony Ferrara: >> I raised this topic on list over a year ago ( >> http://marc.info/?l=php-internals&m=130417646507744&w=2 ). It was >> determined that it wasn't time yet to disable prepared statement >> emulation for MySQL yet. >> Does this need to be an RFC (should I draft one)? Or can it just be >> pulled as-is? It needs an RFC because it needs to document whether or not the other DB drivers should also be changed. On 06/15/2012 08:34 AM, Ulf Wendel wrote: > As long as client-side escaping is done properly, there is no > practical difference between the [client vs server -prepare] > approaches. The big problem with this line of reasoning is that the client must know exactly the same dialect of SQL/XQUERY/whatever that the server does. Since we can't predict the future, and so a new DB might introduce some funky syntax, then client preparing could break visibly or invisibly. The DB client & DB server code architecture needs to head to a model where server side prepares work (and are easy etc). Chris -- christopher.jones@oracle.com http://twitter.com/#!/ghrd