<!--
RSS generated by JIRA (5.2.7#850-sha1:b2af0c8dc8537b36121c6a579fabbdf79fc919e5) at Thu May 23 22:29:08 UTC 2013

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
For example:
http://www.doctrine-project.org/jira/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=project+%3D+DBAL+AND+fixVersion+%3D+%222.2%22&tempMax=1000&field=key&field=summary
-->
<!-- If you wish to do custom client-side styling of RSS, uncomment this:
<?xml-stylesheet href="http://www.doctrine-project.org/jira/styles/jiraxml2html.xsl" type="text/xsl"?>
-->
<rss version="0.92">
    <channel>
        <title>Doctrine Project</title>
        <link>http://www.doctrine-project.org/jira/secure/IssueNavigator.jspa?reset=true&amp;jqlQuery=project+%3D+DBAL+AND+fixVersion+%3D+%222.2%22</link>
        <description>An XML representation of a search request</description>
                <language>en-us</language>
                        <issue start="0" end="30" total="30"/>
                <build-info>
            <version>5.2.7</version>
            <build-number>850</build-number>
            <build-date>21-02-2013</build-date>
        </build-info>
<item>
            <title>[DBAL-322] Change Detection fails when &apos;unsigned&apos; is used in MySQL Schema</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-322</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description></description>
                <environment></environment>
            <key id="13964">DBAL-322</key>
            <summary>Change Detection fails when &apos;unsigned&apos; is used in MySQL Schema</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Tue, 14 Aug 2012 06:00:52 +0000</created>
                <updated>Tue, 14 Aug 2012 21:10:15 +0000</updated>
                    <resolved>Tue, 14 Aug 2012 21:10:15 +0000</resolved>
                            <version>2.2</version>
                                <fixVersion>2.2</fixVersion>
                <fixVersion>2.3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>2</watches>
                        <comments>
                    <comment id="18503" author="mstoehr" created="Tue, 14 Aug 2012 07:24:28 +0000"  >&lt;p&gt;This has been already fixed in &lt;a href=&quot;https://github.com/doctrine/dbal/commit/e44a6c36a8d9e0aa8d8abb2c91c443ced5a6e39e&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/commit/e44a6c36a8d9e0aa8d8abb2c91c443ced5a6e39e&lt;/a&gt;.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-212] Unknown database type longvarchar requested, Doctrine\DBAL\Platforms\SqlitePlatform may not support it.</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-212</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;SqlitePlatform lacks &quot;longvarchar&quot; type mapping  which is extensively used by browsers sqlite databases (e.g. places in FF, history in Chrome).&lt;br/&gt;
Trying to get a schema ends up with &apos;Unknown database type longvarchar requested, Doctrine\DBAL\Platforms\SqlitePlatform may not support it.&apos; message.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13393">DBAL-212</key>
            <summary>Unknown database type longvarchar requested, Doctrine\DBAL\Platforms\SqlitePlatform may not support it.</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="neurocitizen">neurocitizen</reporter>
                        <labels>
                    </labels>
                <created>Sat, 28 Jan 2012 08:28:17 +0000</created>
                <updated>Sat, 28 Jan 2012 09:31:53 +0000</updated>
                    <resolved>Sat, 28 Jan 2012 09:31:53 +0000</resolved>
                                            <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17341" author="beberlei" created="Sat, 28 Jan 2012 09:31:53 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-211] wrong where clause in PostgreSqlPlatform::getTableWhereClause</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-211</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I have the folowing table structure:&lt;/p&gt;

&lt;p&gt;Schema &quot;public&quot;:  with one table called &quot;users&quot;&lt;br/&gt;
Schema &quot;forums&quot;: with one table called &quot;users&quot; &lt;/p&gt;


&lt;p&gt;methods like &lt;tt&gt;PostgreSqlPlatform::getListTableForeignKeysSQL($table, $database = &apos;&apos;)&lt;/tt&gt; should list FK inside &lt;tt&gt;$table&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;the default search path is &quot;public,pg_catalog&quot;&lt;/p&gt;


&lt;p&gt;calling &lt;tt&gt;PostgreSqlPlatform::getListTableForeignKeysSQL(&apos;users&apos;)&lt;/tt&gt; it shuld extract the FK from &lt;tt&gt;public.users&lt;/tt&gt; table, but this is the current result:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;PDOException&amp;#93;&lt;/span&gt; SQLSTATE&lt;span class=&quot;error&quot;&gt;&amp;#91;21000&amp;#93;&lt;/span&gt;: Cardinality violation: 7 ERROR:  more than one row returned by a subquery used as an expression&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;this exception is thrown because &lt;tt&gt;PostgreSqlPlatform::getTableWhereClause&lt;/tt&gt; do not cosider the current search path.&lt;/p&gt;

&lt;p&gt;i propose the following implementation for &lt;tt&gt;PostgreSqlPlatform::getTableWhereClause&lt;/tt&gt;&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt; 
    &lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; function getTableWhereClause($table, $classAlias = &apos;c&apos;, $namespaceAlias = &apos;n&apos;)
    {
        $whereClause = $namespaceAlias.&lt;span class=&quot;code-quote&quot;&gt;&quot;.nspname NOT IN (&apos;pg_catalog&apos;, &apos;information_schema&apos;, &apos;pg_toast&apos;) AND &quot;&lt;/span&gt;;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (strpos($table, &lt;span class=&quot;code-quote&quot;&gt;&quot;.&quot;&lt;/span&gt;) !== &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;) {
            list($schema, $table) = explode(&lt;span class=&quot;code-quote&quot;&gt;&quot;.&quot;&lt;/span&gt;, $table);
            $whereClause .= &lt;span class=&quot;code-quote&quot;&gt;&quot;$classAlias.relname = &apos;&quot;&lt;/span&gt; . $table . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos; AND $namespaceAlias.nspname = &apos;&quot;&lt;/span&gt; . $schema . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos;&quot;&lt;/span&gt;;
        } &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt; {
            &lt;span class=&quot;code-comment&quot;&gt;// $whereClause .= &lt;span class=&quot;code-quote&quot;&gt;&quot;$classAlias.relname = &apos;&quot;&lt;/span&gt; . $table . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos;&quot;&lt;/span&gt;; // &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; was the current implementation
&lt;/span&gt;            $whereClause .= &lt;span class=&quot;code-quote&quot;&gt;&quot;$classAlias.relname = &apos;&quot;&lt;/span&gt; . $table . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos; AND $namespaceAlias.nspname = ANY(string_to_array((select setting from pg_catalog.pg_settings where name = &apos;search_path&apos;),&apos;,&apos;))&quot;&lt;/span&gt;;
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $whereClause;
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;this implementation will restrict the search range only to current &quot;search_path&quot;.&lt;/p&gt;


&lt;p&gt;(sorry for my english)&lt;/p&gt;</description>
                <environment>ubuntu + postgres</environment>
            <key id="13392">DBAL-211</key>
            <summary>wrong where clause in PostgreSqlPlatform::getTableWhereClause</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="goetas">Asmir Mustafic</reporter>
                        <labels>
                    </labels>
                <created>Thu, 26 Jan 2012 08:40:33 +0000</created>
                <updated>Sat, 28 Jan 2012 09:55:23 +0000</updated>
                    <resolved>Sat, 28 Jan 2012 09:55:23 +0000</resolved>
                                            <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17342" author="beberlei" created="Sat, 28 Jan 2012 09:39:07 +0000"  >&lt;p&gt;This looks very good.&lt;/p&gt;</comment>
                    <comment id="17343" author="beberlei" created="Sat, 28 Jan 2012 09:55:23 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-207] RemoveNamespacedAssets: Foreign Key removing does not work correctly</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-207</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description></description>
                <environment></environment>
            <key id="13378">DBAL-207</key>
            <summary>RemoveNamespacedAssets: Foreign Key removing does not work correctly</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/blocker.png">Blocker</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 22 Jan 2012 13:49:06 +0000</created>
                <updated>Sun, 22 Jan 2012 17:36:23 +0000</updated>
                    <resolved>Sun, 22 Jan 2012 13:55:06 +0000</resolved>
                            <version>2.2-RC1/RC2</version>
                                <fixVersion>2.2.0-RC3</fixVersion>
                <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17327" author="beberlei" created="Sun, 22 Jan 2012 13:55:06 +0000"  >&lt;p&gt;Fixed.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-206] OraclePlatform causes problems with more schemas with same table names</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-206</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;OraclePlatform is using the ALL_* tables to fetch schema information but is only supplying the table name in the where condition. This causes problems when you have multiple schemas with tables that have the same name. Their columns/FK get mixed up.&lt;/p&gt;

&lt;p&gt;My colleague and I have traced the problem down to the OraclePlatform class and replaced the ALL_* tables with USER_*. The fix for that is on github &lt;a href=&quot;https://github.com/FranPregernik/dbal/commit/c70bc462b49a168105304cdff0086dcd15cc347d&quot; class=&quot;external-link&quot;&gt;https://github.com/FranPregernik/dbal/commit/c70bc462b49a168105304cdff0086dcd15cc347d&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As mentioned in the comment message the other fix would be to fetch the schema name (user) of the table and add it to the where part of the queries. Something like this:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;t.owner = user&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;A pull request has been made on github for this.&lt;/p&gt;</description>
                <environment>Oracle database</environment>
            <key id="13376">DBAL-206</key>
            <summary>OraclePlatform causes problems with more schemas with same table names</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/minor.png">Minor</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="franpregernik">Fran Pregernik</reporter>
                        <labels>
                    </labels>
                <created>Fri, 20 Jan 2012 11:55:57 +0000</created>
                <updated>Sat, 21 Jan 2012 14:11:54 +0000</updated>
                    <resolved>Sat, 21 Jan 2012 14:11:54 +0000</resolved>
                            <version>2.1.5</version>
                                <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17321" author="beberlei" created="Sat, 21 Jan 2012 14:11:54 +0000"  >&lt;p&gt;Fixed.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-205] MySQL SchemaManager doesn&apos;t handle composite foreign keys properly</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-205</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The MySQL SchemaManager can not properly generate a Schema from the database if a table has a foreign key that spans multiple columns.&lt;br/&gt;
Therefore the comparator tries to drop the one index as individual indexes.&lt;/p&gt;

&lt;p&gt;That leads to an error if the resulting SQL is executed because these indexes do not exist (i.e. via app/console doctrine:schema:update --force)&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-style: solid;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;border-bottom-style: solid;&quot;&gt;&lt;b&gt;symfony2#app/console doctrine:schema:update --dump-sql&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;...
ALTER TABLE table1 DROP FOREIGN KEY FK_C1B1712387FE737264DE5A5511B8B3E;
DROP INDEX IDX_C1B1712387FE7372 ON table1;
DROP INDEX IDX_C1B1712364DE5A5 ON table1;
DROP INDEX IDX_C1B17123511B8B3E ON table1;
ALTER TABLE table1 ADD CONSTRAINT FK_C1B1712387FE737264DE5A5511B8B3E FOREIGN KEY (column1, column2, column3) REFERENCES table2(column1, column2, column3);
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
            <key id="13375">DBAL-205</key>
            <summary>MySQL SchemaManager doesn&apos;t handle composite foreign keys properly</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="sbeining">Sascha Beining</reporter>
                        <labels>
                    </labels>
                <created>Thu, 19 Jan 2012 13:12:09 +0000</created>
                <updated>Sat, 21 Jan 2012 15:18:28 +0000</updated>
                    <resolved>Sat, 21 Jan 2012 15:18:28 +0000</resolved>
                            <version>2.1.5</version>
                                <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-204] Handling of explicit Schemas is wrong in comparator</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-204</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;if you are on db &quot;foo&quot; and compare table &quot;bar&quot; to &quot;foo.bar&quot;. it shouldnt drop one and create the other one. They are the same!&lt;/p&gt;</description>
                <environment></environment>
            <key id="13372">DBAL-204</key>
            <summary>Handling of explicit Schemas is wrong in comparator</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Wed, 18 Jan 2012 22:03:25 +0000</created>
                <updated>Sat, 21 Jan 2012 10:35:51 +0000</updated>
                    <resolved>Sat, 21 Jan 2012 10:35:51 +0000</resolved>
                            <version>2.2-BETA2</version>
                                <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17312" author="beberlei" created="Sat, 21 Jan 2012 10:35:51 +0000"  >&lt;p&gt;Fixed.&lt;/p&gt;

&lt;p&gt;This includes facilities to filter schema assets when creating from a SchemaManager:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;$connection-&amp;gt;getConfiguration()-&amp;gt;setFilterSchemaAssetsExpression(&lt;span class=&quot;code-quote&quot;&gt;&quot;foo\.bar&quot;&lt;/span&gt;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Additionally in the ORM now when using a database vendor that does not support schemas the &quot;namespaced&quot; assets are removed.&lt;/p&gt;

&lt;p&gt;Say you are connected to database &quot;foo&quot; and you have an entity defined as @Table(&quot;bar.baz&quot;), then all SQL generated for that entity will be removed.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-203] Fix SQLServer version mess (2003, 2005, 2008)</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-203</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The current SqlSrv platform implicitly depends on SQL Server 2008. A differentation between the common versions 2003, 2005 and 2008 is necessary.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13361">DBAL-203</key>
            <summary>Fix SQLServer version mess (2003, 2005, 2008)</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 15 Jan 2012 18:36:14 +0000</created>
                <updated>Sun, 15 Jan 2012 18:37:43 +0000</updated>
                    <resolved>Sun, 15 Jan 2012 18:37:43 +0000</resolved>
                            <version>2.1.5</version>
                <version>2.2-BETA2</version>
                                <fixVersion>2.2</fixVersion>
                                <component>Drivers</component>
                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17262" author="beberlei" created="Sun, 15 Jan 2012 18:37:43 +0000"  >&lt;p&gt;implemented&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-201] Remote IBM DB2 connection needs protocol specified</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-201</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Thanks so much for adding DB2 support to Doctrine2, it&apos;s awesome!&lt;/p&gt;

&lt;p&gt;I&apos;m using it to connect to a remote DB2 database, and in db2driver.php, it is expecting the &apos;protocol&apos; parameter to be set.  I tried the obvious, adding a database_protocol to my parameters.ini file (to match the other database things in there), but that didn&apos;t work. &lt;/p&gt;

&lt;p&gt;I did a temporary fix of hardcoding it in the db2driver.php to be PROTOCOL=TCPIP , and it works. &lt;/p&gt;

&lt;p&gt;So i think the proper fix would be to add the code so that database_protocol in parameters.ini is picked up.&lt;/p&gt;</description>
                <environment>using doctrine2 included in symfony2 2.0.9, running on MAMP on OSX</environment>
            <key id="13355">DBAL-201</key>
            <summary>Remote IBM DB2 connection needs protocol specified</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/minor.png">Minor</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="suzyq">Suzy Deffeyes</reporter>
                        <labels>
                    </labels>
                <created>Fri, 13 Jan 2012 14:22:41 +0000</created>
                <updated>Sat, 21 Jan 2012 13:47:39 +0000</updated>
                    <resolved>Sat, 21 Jan 2012 13:47:39 +0000</resolved>
                                            <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Drivers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17319" author="beberlei" created="Sat, 21 Jan 2012 13:47:39 +0000"  >&lt;p&gt;This is primarily a DoctrineBundle bug. However i fixed it in DBAL to default to TCPIP protocol parameter now.&lt;/p&gt;

&lt;p&gt;DB2 is not &quot;really&quot; supported. I have considerable problems with it segfaulting the DBAL testsuite. You should be very careful.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-197] Cannot drop database schema with blob type</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-197</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I have an entity with a blob type. When I create the database schema via cli, everthing is okay.&lt;br/&gt;
When i try to drop the schema, I receive the following error:&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine\DBAL\DBALException&amp;#93;&lt;/span&gt;                                                                        &lt;br/&gt;
  Unknown database type longblob requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it.&lt;/p&gt;</description>
                <environment>MySQL 5.1.58, for debian-linux-gnu (x86_64)</environment>
            <key id="13331">DBAL-197</key>
            <summary>Cannot drop database schema with blob type</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="prolic">Sascha-Oliver Prolic</reporter>
                        <labels>
                    </labels>
                <created>Thu, 5 Jan 2012 13:42:09 +0000</created>
                <updated>Mon, 9 Jan 2012 08:12:24 +0000</updated>
                    <resolved>Mon, 9 Jan 2012 08:12:24 +0000</resolved>
                            <version>2.2-BETA1</version>
                <version>2.2-BETA2</version>
                                <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-196] The function fetchAll(PDO::FETCH_ALL, &apos;MyClass&apos;) doesn&apos;t create object of MyClass</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-196</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The code below doesn&apos;t create objects of MyClass when it has to.&lt;br/&gt;
Instead it create StdClass objects&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;$stmt = $db-&amp;gt;prepare($sql);
$stmt-&amp;gt;execute();

$results = $stmt-&amp;gt;fetchAll(
    \PDO::FETCH_CLASS,
    &apos;MyClass&apos;
);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The problem comes from the file Doctrine/DBAL/Statement.php&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;    /**
     * Returns an array containing all of the result set rows.
     * 
     * @param integer $fetchStyle
     * @param integer $columnIndex
     * @return array An array containing all of the remaining rows in the result set.
     */
    public function fetchAll($fetchStyle = PDO::FETCH_BOTH, $columnIndex = 0)
    {
	if ($columnIndex != 0) {
            return $this-&amp;gt;_stmt-&amp;gt;fetchAll($fetchStyle, $columnIndex);
        }
        return $this-&amp;gt;_stmt-&amp;gt;fetchAll($fetchStyle);
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;The line &lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;if ($columnIndex != 0) {
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;must be replace by &lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;if ($columnIndex !== 0) {
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;because the parameter $columnIndex is not always an integer and could be a name of a class : see the example n&#176;4 in php doc &lt;a href=&quot;http://www.php.net/manual/en/pdostatement.fetchall.php&quot; class=&quot;external-link&quot;&gt;http://www.php.net/manual/en/pdostatement.fetchall.php&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
            <key id="13338">DBAL-196</key>
            <summary>The function fetchAll(PDO::FETCH_ALL, &apos;MyClass&apos;) doesn&apos;t create object of MyClass</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="fabio.bat.silva">Fabio B. Silva</assignee>
                                <reporter username="noodha">Antoine Froger</reporter>
                        <labels>
                    </labels>
                <created>Fri, 6 Jan 2012 21:26:35 +0000</created>
                <updated>Sat, 21 Jan 2012 14:44:19 +0000</updated>
                    <resolved>Sat, 21 Jan 2012 14:44:19 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17324" author="beberlei" created="Sat, 21 Jan 2012 14:44:19 +0000"  >&lt;p&gt;Fixed and merged into 2.2&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-195] Method AbstractSchemaManager-&gt;dropAndCreateSequence() contains erroneous code.</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-195</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I needed to use the function and looking at the code I found that it seemed partially implemented, cut and pasted from something else or just not ported from an earlier implementation. I&apos;m now submitting a patch that fixes this issue. I didn&apos;t modify the AbstractSchemaManager-&amp;gt;dropSequence($name) signature to become AbstractSchemaManager-&amp;gt;dropSequence($sequence) but it might be a good idea to refactor it (guess that would be another issue though &lt;img class=&quot;emoticon&quot; src=&quot;http://www.doctrine-project.org/jira/images/icons/emoticons/smile.gif&quot; height=&quot;20&quot; width=&quot;20&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt; ) &lt;/p&gt;</description>
                <environment></environment>
            <key id="13337">DBAL-195</key>
            <summary>Method AbstractSchemaManager-&gt;dropAndCreateSequence() contains erroneous code.</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="marc.campeau@gmail.com">Marc Campeau</reporter>
                        <labels>
                    </labels>
                <created>Fri, 6 Jan 2012 20:17:29 +0000</created>
                <updated>Mon, 9 Jan 2012 07:57:39 +0000</updated>
                    <resolved>Mon, 9 Jan 2012 07:57:39 +0000</resolved>
                            <version>2.1.5</version>
                                <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="17181" author="beberlei" created="Mon, 9 Jan 2012 07:45:35 +0000"  >&lt;p&gt;Oh the code worked before, but was refactored. This method was forgotten.&lt;/p&gt;</comment>
                    <comment id="17184" author="beberlei" created="Mon, 9 Jan 2012 07:57:39 +0000"  >&lt;p&gt;Fixed.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11141" name="AbstractSchemaManager_dropAndCreateSequence.patch" size="584" author="marc.campeau@gmail.com" created="Fri, 6 Jan 2012 20:17:29 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-194] BlobType should implement getBindingType() </title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-194</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;BlobType should implement getBindingType() and return PDO::PARAM_LOB&lt;/p&gt;

&lt;p&gt;Currently (2.2-BETA1) DBAL uses PDO::PARAM_STR and thus stores the data incorrectly.&lt;/p&gt;

&lt;p&gt;Working patch is attached.&lt;/p&gt;</description>
                <environment>PHP 5.3.8&lt;br/&gt;
PostgreSQL 9.1</environment>
            <key id="13324">DBAL-194</key>
            <summary>BlobType should implement getBindingType() </summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="codingrobot">Nikolai Spassoff</reporter>
                        <labels>
                    </labels>
                <created>Sun, 1 Jan 2012 02:04:38 +0000</created>
                <updated>Tue, 3 Jan 2012 22:03:56 +0000</updated>
                    <resolved>Mon, 2 Jan 2012 13:52:49 +0000</resolved>
                            <version>2.2-BETA1</version>
                                <fixVersion>2.2-BETA2</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17165" author="beberlei" created="Mon, 2 Jan 2012 13:52:49 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11137" name="fix.patch" size="413" author="codingrobot" created="Sun, 1 Jan 2012 02:04:38 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-192] GH-86: Remove a type object if a type is overrided</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-192</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Pull-Request was automatically synchronized: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/86&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/86&lt;/a&gt;&lt;/p&gt;
</description>
                <environment></environment>
            <key id="13310">DBAL-192</key>
            <summary>GH-86: Remove a type object if a type is overrided</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Mon, 26 Dec 2011 23:58:06 +0000</created>
                <updated>Tue, 3 Jan 2012 22:04:08 +0000</updated>
                    <resolved>Wed, 28 Dec 2011 08:34:20 +0000</resolved>
                                            <fixVersion>2.2-BETA2</fixVersion>
                <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-190] Column type comment SQL is missing during table creation</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-190</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Column type comment is generated properly only with MySQL, and is not generated on platforms that support comment on column statements (Oracle, PgSQL).&lt;/p&gt;</description>
                <environment>Latest DBAL master</environment>
            <key id="13298">DBAL-190</key>
            <summary>Column type comment SQL is missing during table creation</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="adrive">Miloslav &quot;adrive&quot; Kmet</reporter>
                        <labels>
                    </labels>
                <created>Fri, 23 Dec 2011 09:24:57 +0000</created>
                <updated>Tue, 3 Jan 2012 22:04:19 +0000</updated>
                    <resolved>Wed, 28 Dec 2011 07:46:02 +0000</resolved>
                                            <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2-BETA2</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17094" author="beberlei" created="Fri, 23 Dec 2011 09:29:06 +0000"  >&lt;p&gt;This issue is referenced in Github Pull-Request GH-84&lt;br/&gt;
&lt;a href=&quot;https://github.com/doctrine/dbal/pull/84&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/84&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="17114" author="beberlei" created="Wed, 28 Dec 2011 07:41:15 +0000"  >&lt;p&gt;Related Pull Request was closed: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/84&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/84&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="17115" author="beberlei" created="Wed, 28 Dec 2011 07:46:02 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-188] Make doctrine and sqlite friends</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-188</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;&lt;a href=&quot;https://github.com/doctrine/dbal/pull/66&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/66&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Schema processing for SQLite is broken in a number of common situations. These patches fix handling of the following:&lt;/p&gt;

&lt;p&gt;    String column defaults: For columns with a default value that is a string, SQLite returns them wrapped in single quotes. Doctrine does not strip these, so it would treat a value &quot;foobar&quot; as &quot;&apos;foobar&apos;&quot; (with single quotes as part of the value).&lt;br/&gt;
    Auto-increment: SQLite handling of auto-increment is unusual. In particular, it supports it only on an integer column which is the sole primary key for a table. In addition, it will automatically increment values of an integer primary key column regardless of whether it has been defined as autoincrement BUT, unlike autoincrement, these values are not guaranteed to be unique.&lt;br/&gt;
    Most problematically, there is no way (without parsing the &quot;create&quot; statements stored in sqlite_master) to determine whether a column is marked as auto-incrementing. Doctrine was treating SQLite integer primary keys as auto-incrementing, but this is not correct and does not work for composite primary keys.&lt;br/&gt;
    Composite primary keys: As a side-effect of Doctrine treating integer primary keys in SQLite as auto-incrementing and of how SQLite requires autoincrement and primary keys to be declared, it would generate invalid create statements for composite keys in SQLite.&lt;br/&gt;
    Special indexes: SQLite sometimes automatically generates indexes, which Doctrine treated the same as any other. Because they are internal, however, their names are reserved, so they could not be used to recreate the same index and, since they are automatic, they aren&apos;t actually a part of the defined schema.&lt;/p&gt;

&lt;p&gt;I&apos;ve added to the tests to catch these situations in the future as well.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13280">DBAL-188</key>
            <summary>Make doctrine and sqlite friends</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 18 Dec 2011 16:29:16 +0000</created>
                <updated>Sun, 18 Dec 2011 16:29:48 +0000</updated>
                    <resolved>Sun, 18 Dec 2011 16:29:48 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-187] GH-83: Added a LoggerChain</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-187</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Pull-Request was automatically synchronized: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/83&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/83&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This logger allows registering several loggers in the connection&lt;/p&gt;</description>
                <environment></environment>
            <key id="13274">DBAL-187</key>
            <summary>GH-83: Added a LoggerChain</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Thu, 15 Dec 2011 17:43:04 +0000</created>
                <updated>Thu, 15 Dec 2011 18:15:50 +0000</updated>
                    <resolved>Thu, 15 Dec 2011 18:15:50 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16991" author="beberlei" created="Thu, 15 Dec 2011 18:15:50 +0000"  >&lt;p&gt;Merged&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-186] GH-82: Schema events</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-186</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Pull-Request was automatically synchronized: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/82&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/82&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Trigger schema related events to allow custom create/drop/update queries.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13263">DBAL-186</key>
            <summary>GH-82: Schema events</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Tue, 13 Dec 2011 20:41:12 +0000</created>
                <updated>Mon, 19 Dec 2011 13:16:46 +0000</updated>
                    <resolved>Mon, 19 Dec 2011 13:16:46 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17045" author="beberlei" created="Mon, 19 Dec 2011 13:16:46 +0000"  >&lt;p&gt;Merged&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-177] Have Schema Assets handle &quot;foo.bar&quot; syntax correctly.</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-177</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description></description>
                <environment></environment>
            <key id="13137">DBAL-177</key>
            <summary>Have Schema Assets handle &quot;foo.bar&quot; syntax correctly.</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Mon, 31 Oct 2011 20:01:10 +0000</created>
                <updated>Wed, 16 Nov 2011 22:48:41 +0000</updated>
                    <resolved>Wed, 16 Nov 2011 22:48:41 +0000</resolved>
                            <version>2.1.3</version>
                                <fixVersion>2.2</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-176] DBAL logging doesnt work correctly with Prepared Statements</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-176</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description></description>
                <environment></environment>
            <key id="13133">DBAL-176</key>
            <summary>DBAL logging doesnt work correctly with Prepared Statements</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sat, 29 Oct 2011 22:20:38 +0000</created>
                <updated>Sun, 30 Oct 2011 10:43:18 +0000</updated>
                    <resolved>Sun, 30 Oct 2011 10:43:18 +0000</resolved>
                            <version>2.1.3</version>
                                <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-170] Add mysqli driver</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-170</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Add a mysqli driver&lt;/p&gt;</description>
                <environment></environment>
            <key id="13042">DBAL-170</key>
            <summary>Add mysqli driver</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 25 Sep 2011 14:21:30 +0000</created>
                <updated>Mon, 21 Nov 2011 23:11:41 +0000</updated>
                    <resolved>Mon, 21 Nov 2011 23:11:41 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16905" author="beberlei" created="Mon, 21 Nov 2011 23:11:41 +0000"  >&lt;p&gt;Implemented&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-169] PostgreSQL Session init</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-169</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;During PostgreSQL Session init it may be interesting to set the search path to a different value than the default.&lt;/p&gt;</description>
                <environment></environment>
            <key id="13039">DBAL-169</key>
            <summary>PostgreSQL Session init</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                    <security id="10000">All</security>
                        <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sat, 24 Sep 2011 10:07:35 +0000</created>
                <updated>Sat, 24 Sep 2011 11:53:25 +0000</updated>
                    <resolved>Sat, 24 Sep 2011 11:53:25 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16501" author="beberlei" created="Sat, 24 Sep 2011 11:53:25 +0000"  >&lt;p&gt;Implemented a generic SQLSessionInit listener that executes a single sql command after connection initializtion.&lt;/p&gt;

&lt;p&gt;Example usage:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;$evm-&amp;gt;addEventListener(&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; SQLSessionInit(&lt;span class=&quot;code-quote&quot;&gt;&quot;SET SEARCH_PATH TO foo, &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt;, TIMEZONE TO &apos;Europe/Berlin&apos;&quot;&lt;/span&gt;));
$conn = DriverManager::getConnection($params, $config $evm);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-152] Github-PR-49 by juokaz: Ignore sysdiagrams table from a list</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-152</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;This issue is created automatically through a Github pull request on behalf of &lt;/p&gt;
{username}
&lt;p&gt;:&lt;/p&gt;

&lt;p&gt;  Url: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/49&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/49&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Message:&lt;/p&gt;

&lt;p&gt;Fix for the &lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DBAL-114&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/jira/browse/DBAL-114&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
            <key id="12944">DBAL-152</key>
            <summary>Github-PR-49 by juokaz: Ignore sysdiagrams table from a list</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 21 Aug 2011 14:46:15 +0000</created>
                <updated>Tue, 22 Nov 2011 23:14:48 +0000</updated>
                    <resolved>Tue, 22 Nov 2011 23:14:49 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16907" author="stof" created="Tue, 22 Nov 2011 22:43:59 +0000"  >&lt;p&gt;This PR has been merged&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-146] Mssql platform TOP and DISTINCT ordering issue</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-146</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;When doing a limit and a distinct query, DBAL generates an SQL statement in the form of SELECT TOP X DISTINCT, which SqlSrv does not like at all. Simply moving the the DISTINCT back to the start fixes this issue.&lt;/p&gt;

&lt;p&gt;As far as I can see this is caused by the preg_replace in doModifyLimitQuery. Attached is a patch that makes it slightly more aware.  There may be other phrases to check for, but none that I&apos;ve come across yet.&lt;/p&gt;

&lt;p&gt;Patch attached. &lt;/p&gt;</description>
                <environment>Windows 2008 R2 SqlSrv 2008 R2 IIS 7.5, fully patched</environment>
            <key id="12911">DBAL-146</key>
            <summary>Mssql platform TOP and DISTINCT ordering issue</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="the_angry_angel">Karl Southern</reporter>
                        <labels>
                    </labels>
                <created>Wed, 10 Aug 2011 10:14:54 +0000</created>
                <updated>Mon, 9 Jan 2012 13:30:27 +0000</updated>
                    <resolved>Mon, 9 Jan 2012 13:30:27 +0000</resolved>
                            <version>2.1</version>
                                <fixVersion>2.1.6</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="17199" author="beberlei" created="Mon, 9 Jan 2012 13:30:27 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11046" name="FixDisctinctTopOrderingIssue.patch" size="481" author="the_angry_angel" created="Wed, 10 Aug 2011 10:14:54 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-142] Mapping Driver for Oracle does not know what to do with blobs, throws DBAL Exception for types &quot;blob&quot; and &quot;long raw&quot;.</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-142</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;When attempting to reverse engineer an existing Oracle 11g database an exception is thrown (by DBAL) complaining that the type blob is unknown. I believe this is coming from AbstractPlatform.php. I attempted to solve the problem by add a type mapping for blob in PDOOracle\Driver.php (blob =&amp;gt; text) and it now complains that &quot;long raw&quot; is unknown.&lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine\DBAL\DBALException&amp;#93;&lt;/span&gt;&lt;br/&gt;
Unknown database type long raw requested, Doctrine\DBAL\Platforms\OraclePlatform may not support it.&lt;/p&gt;</description>
                <environment>CentOS 5.0, PHP 5.3.6, Oracle 11g EE, Symfony 2.0, Doctrine 2.1</environment>
            <key id="12893">DBAL-142</key>
            <summary>Mapping Driver for Oracle does not know what to do with blobs, throws DBAL Exception for types &quot;blob&quot; and &quot;long raw&quot;.</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="digitalmechanic">Ed Anderson</reporter>
                        <labels>
                    </labels>
                <created>Tue, 2 Aug 2011 10:41:55 +0000</created>
                <updated>Tue, 13 Mar 2012 17:09:59 +0000</updated>
                    <resolved>Sun, 30 Oct 2011 22:25:29 +0000</resolved>
                            <version>2.1</version>
                                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>2</watches>
                        <comments>
                    <comment id="16737" author="beberlei" created="Sun, 30 Oct 2011 22:25:29 +0000"  >&lt;p&gt;Implemented blob support&lt;/p&gt;</comment>
                    <comment id="17562" author="seandiovza" created="Tue, 13 Mar 2012 17:09:59 +0000"  >&lt;p&gt;Sorry. i am new in it, i am developing and app in symfony 2, and when i try to import the entities from the database i get the error: &lt;/p&gt;

&lt;p&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine\DBAL\DBALException&amp;#93;&lt;/span&gt;&lt;br/&gt;
Unknown database type blob requested, Doctrine\DBAL\Platform may not support it.&lt;/p&gt;

&lt;p&gt;i am using oracle 11g, i did try (blob =&amp;gt; &apos;text&apos;)  in oraclepatform.php but is later send me more errors, i cant understand, i want know how can i fix it i anyway to at least can import the entities, thank you&lt;/p&gt;



</comment>
                </comments>
                <issuelinks>
                        <issuelinktype id="10000">
                <name>Duplicate</name>
                                <outwardlinks description="duplicates">
                            <issuelink>
            <issuekey id="11273">DBAL-6</issuekey>
        </issuelink>
                    </outwardlinks>
                                            </issuelinktype>
                    </issuelinks>
                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-141] PDO Connection Failure through TNS - PDOOracle/Driver.php line 56</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-141</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;On line 56 of the file ./vendor/doctrine-dbal/lib/Doctrine/DBAL/Driver/PDOOracle/Driver.php:&lt;/p&gt;

&lt;p&gt;The line reads:&lt;br/&gt;
$dsn .= &apos;))(CONNECT_DATA=(SID=&apos; . $params&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;dbname&amp;#39;&amp;#93;&lt;/span&gt; . &apos;)))&apos;; should read  $dsn .= &apos;))(CONNECT_DATA=(SERVICE_NAME=&apos; . $params&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;dbname&amp;#39;&amp;#93;&lt;/span&gt; . &apos;)))&apos;;&lt;/p&gt;

&lt;p&gt;If both SID and SERVICE_NAME need to be available for use, then logic should be inserted to determine which method is being used.&lt;/p&gt;</description>
                <environment>CentOS 6.0, Symfony 2.0.0 (RC), PHP 5.3.6, Oracle 11g Enterprise, Oracle InstantClient 11.0.2</environment>
            <key id="12887">DBAL-141</key>
            <summary>PDO Connection Failure through TNS - PDOOracle/Driver.php line 56</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="digitalmechanic">Ed Anderson</reporter>
                        <labels>
                    </labels>
                <created>Mon, 1 Aug 2011 14:52:50 +0000</created>
                <updated>Sun, 30 Oct 2011 19:21:45 +0000</updated>
                    <resolved>Sun, 30 Oct 2011 19:21:45 +0000</resolved>
                            <version>2.1</version>
                                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16356" author="beberlei" created="Thu, 18 Aug 2011 20:46:26 +0000"  >&lt;p&gt;Whats the difference? the Use of SID works for me.&lt;/p&gt;</comment>
                    <comment id="16357" author="yourwebmaker" created="Thu, 18 Aug 2011 21:03:36 +0000"  >&lt;p&gt;Hi Benjamin,&lt;/p&gt;

&lt;p&gt;There are some Oracle connections that are setup from SERVICE_NAME (without a SID).&lt;br/&gt;
In my company we always use SERVICE_NAME to setup a connection and we needed to modify the OCI connection driver from Doctrine to works fine in our environment&lt;/p&gt;

&lt;p&gt;Take a look in: &lt;a href=&quot;http://stackoverflow.com/questions/43866/how-sid-is-different-from-service-name-in-oracle-tnsnames-ora&quot; class=&quot;external-link&quot;&gt;http://stackoverflow.com/questions/43866/how-sid-is-different-from-service-name-in-oracle-tnsnames-ora&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="16362" author="digitalmechanic" created="Fri, 19 Aug 2011 12:23:47 +0000"  >&lt;p&gt;There&apos;s a subtle difference between SID and SERVICE_NAME and I think the code should somehow account for the difference. Here&apos;s why... An SID points to a physical instance at the database level (Service Identifier). If you ask for a SID you only get one shot at the connection (and hopefully the database is up). That&apos;s the legacy method of connecting to Oracle. &lt;/p&gt;

&lt;p&gt;However, for environments that have HA installations of Oracle using RAC, the SERVICE_NAME is what is used to point to a database instance (instead of a physical Service ID).  If a given database instance is down and you&apos;re using SID - meaning you&apos;re looking to connect to a specific database, the connection fails. If you&apos;re in an environment with multiple instances of the target database, then RAC figures out where to send you if you&apos;re using SERVICE_NAME and you will land on an useable instance. This is the typical way to connect when Oracle is load-balanced and in a high-availability environment.&lt;/p&gt;</comment>
                    <comment id="16423" author="beberlei" created="Sun, 4 Sep 2011 12:56:57 +0000"  >&lt;p&gt;How can we solve this issue in a BC way? I wouldn&apos;t know if I can just change it the way suggested and it will work for everyone.&lt;/p&gt;
</comment>
                    <comment id="16734" author="beberlei" created="Sun, 30 Oct 2011 19:21:45 +0000"  >&lt;p&gt;Fixed by adding a new parameter &apos;service&apos; which has to be true to use SERVICE_NAME instead of SID.&lt;/p&gt;</comment>
                </comments>
                <issuelinks>
                        <issuelinktype id="10000">
                <name>Duplicate</name>
                                                <inwardlinks description="is duplicated by">
                            <issuelink>
            <issuekey id="12835">DBAL-136</issuekey>
        </issuelink>
                    </inwardlinks>
                            </issuelinktype>
                    </issuelinks>
                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-138] Connection::quote should convert non PDO types</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-138</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;It currently doesn&apos;t so $connection-&amp;gt;quote(&apos;foo&apos;, Type::STRING) doesn&apos;t work.&lt;/p&gt;</description>
                <environment></environment>
            <key id="12852">DBAL-138</key>
            <summary>Connection::quote should convert non PDO types</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="asm89">Alexander</reporter>
                        <labels>
                    </labels>
                <created>Mon, 25 Jul 2011 13:53:57 +0000</created>
                <updated>Sun, 31 Jul 2011 10:21:38 +0000</updated>
                    <resolved>Sun, 31 Jul 2011 10:21:38 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="16201" author="asm89" created="Mon, 25 Jul 2011 14:35:23 +0000"  >&lt;p&gt;PR on github for this: &lt;a href=&quot;https://github.com/doctrine/dbal/pull/39&quot; class=&quot;external-link&quot;&gt;https://github.com/doctrine/dbal/pull/39&lt;/a&gt;.&lt;/p&gt;</comment>
                    <comment id="16251" author="beberlei" created="Sun, 31 Jul 2011 10:21:38 +0000"  >&lt;p&gt;Merged PR into master&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-114] MsSqlPlatform - getListTablesSQL() get&apos;s sysdiagrams table</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-114</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;getListTablesSQL() function in MsSqlPlatform.php list all tables in database.&lt;/p&gt;

&lt;p&gt;If you have saved Database Diagrams it returns &quot;sysdiagrams&quot; table too.&lt;br/&gt;
This table have field &quot;name&quot; with type &quot;sysname&quot; which have no mapping.&lt;/p&gt;

&lt;p&gt;If you run orm:validate-schema you get:&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine\DBAL\DBALException&amp;#93;&lt;/span&gt;&lt;br/&gt;
Unknown database type sysname requested, Doctrine\DBAL\Platforms\MsSqlPlatform may not support it.&lt;/p&gt;

&lt;p&gt;Best solution is that when getting tables to ignore &quot;sysdiagrams&quot; tables.&lt;/p&gt;</description>
                <environment>Windows 7, PHP 5.3.5, MSSQL 2008</environment>
            <key id="12582">DBAL-114</key>
            <summary>MsSqlPlatform - getListTablesSQL() get&apos;s sysdiagrams table</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/critical.png">Critical</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="juokaz">Juozas Kaziukenas</assignee>
                                <reporter username="bostjan">Bostjan Oblak</reporter>
                        <labels>
                    </labels>
                <created>Tue, 26 Apr 2011 18:19:08 +0000</created>
                <updated>Mon, 29 Aug 2011 20:12:21 +0000</updated>
                    <resolved>Mon, 29 Aug 2011 20:12:21 +0000</resolved>
                            <version>2.0.4</version>
                                <fixVersion>2.1.2</fixVersion>
                <fixVersion>2.2</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>1</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="15748" author="bostjan" created="Tue, 26 Apr 2011 18:20:33 +0000"  >&lt;p&gt;One solution is to just add &quot;AND name != &apos;sysdiagrams&apos; &quot; to sql statement&lt;/p&gt;</comment>
                    <comment id="15768" author="beberlei" created="Sat, 30 Apr 2011 09:09:24 +0000"  >&lt;p&gt;Assigned to Jouzas&lt;/p&gt;</comment>
                    <comment id="16124" author="yaroslav" created="Thu, 7 Jul 2011 07:30:00 +0000"  >&lt;p&gt;Why it is not fixed yet? The solution is so easy. Please add to repository. Because on every release I should change it manually &lt;img class=&quot;emoticon&quot; src=&quot;http://www.doctrine-project.org/jira/images/icons/emoticons/sad.gif&quot; height=&quot;20&quot; width=&quot;20&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                    <comment id="16400" author="beberlei" created="Mon, 29 Aug 2011 20:12:21 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-20] Add Connection Resolver</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-20</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;There should be an additional, optional &quot;connectionResolver&quot; which returns a driver instance for differentation between different drivers in Doctrine\DBAL\Connection instead of using $this-&amp;gt;_conn (which stays the default case)&lt;/p&gt;

&lt;p&gt;This is useful for master/slave, master/master or failover strategies inside the application&lt;/p&gt;</description>
                <environment></environment>
            <key id="11483">DBAL-20</key>
            <summary>Add Connection Resolver</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sun, 13 Jun 2010 06:32:54 +0000</created>
                <updated>Sun, 1 Apr 2012 16:10:21 +0000</updated>
                    <resolved>Mon, 19 Dec 2011 14:56:53 +0000</resolved>
                                            <fixVersion>2.2</fixVersion>
                                        <due></due>
                    <votes>3</votes>
                        <watches>3</watches>
                        <comments>
                    <comment id="13394" author="diego.lewin" created="Mon, 21 Jun 2010 17:14:54 +0000"  >&lt;p&gt;I have done some working code, I extended  \Doctrine\DBAL\Connection:&lt;/p&gt;


&lt;p&gt;From the controllers/ service layer:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;$em-&amp;gt;getConnection()-&amp;gt;setConnection(&apos;write&apos;);

&lt;span class=&quot;code-keyword&quot;&gt;try&lt;/span&gt; {
    $em-&amp;gt;persist($user);
} &lt;span class=&quot;code-keyword&quot;&gt;catch&lt;/span&gt; (Exception $e) {
     echo $e-&amp;gt;getMessage();
}


$em-&amp;gt;getConnection()-&amp;gt;setConnection(&apos;read_1&apos;);

...

$em-&amp;gt;getConnection()-&amp;gt;setConnection(&apos;read_2&apos;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;Obviously all the statements related with a unit of work will be associated with only one connection.&lt;/p&gt;

&lt;p&gt;_________________________________________&lt;/p&gt;

&lt;p&gt;When setting the event manager:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt; $connectionOptions =
              array(
            &apos;driver&apos;    =&amp;gt; $doctrineConfig[&apos;conn&apos;][&apos;driv&apos;],
            &apos;user&apos;      =&amp;gt; $doctrineConfig[&apos;conn&apos;][&apos;user&apos;],
            &apos;password&apos;  =&amp;gt; $doctrineConfig[&apos;conn&apos;][&apos;pass&apos;],
            &apos;dbname&apos;    =&amp;gt; $doctrineConfig[&apos;conn&apos;][&apos;dbname&apos;],
            &apos;host&apos;      =&amp;gt; $doctrineConfig[&apos;conn&apos;][&apos;host&apos;],
       
            &apos;wrapperClass&apos; =&amp;gt;&apos;\Fishpond\Doctrine\DBAL\Connections\Multiple&apos;
           
        );


        $connectionOptions[&apos;multiple_connections&apos;][&apos;read&apos;] = array(
        &lt;span class=&quot;code-quote&quot;&gt;&quot;driver&quot;&lt;/span&gt; =&amp;gt;  &lt;span class=&quot;code-quote&quot;&gt;&quot;pdo_mysql&quot;&lt;/span&gt;,
        &lt;span class=&quot;code-quote&quot;&gt;&quot;user&quot;&lt;/span&gt; =
        &lt;span class=&quot;code-quote&quot;&gt;&quot;password&quot;&lt;/span&gt; =&amp;gt;
        &lt;span class=&quot;code-quote&quot;&gt;&quot;dbname&quot;&lt;/span&gt;=&amp;gt;
        &lt;span class=&quot;code-quote&quot;&gt;&quot;host&quot;&lt;/span&gt; =&amp;gt;
     

        );


        $connectionOptions[&apos;multiple_connections&apos;][&apos;write&apos;] = array(
        &lt;span class=&quot;code-quote&quot;&gt;&quot;driver&quot;&lt;/span&gt; =&amp;gt;  &lt;span class=&quot;code-quote&quot;&gt;&quot;pdo_mysql&quot;&lt;/span&gt;,
        &lt;span class=&quot;code-quote&quot;&gt;&quot;user&quot;&lt;/span&gt; =&amp;gt; 
        &lt;span class=&quot;code-quote&quot;&gt;&quot;password&quot;&lt;/span&gt; =&amp;gt;
        &lt;span class=&quot;code-quote&quot;&gt;&quot;dbname&quot;&lt;/span&gt;=&amp;gt;
        &lt;span class=&quot;code-quote&quot;&gt;&quot;host&quot;&lt;/span&gt; =&amp;gt;

        );


$em = \Doctrine\ORM\EntityManager::create($connectionOptions, $config);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;



&lt;p&gt;_________________________________________&lt;/p&gt;


&lt;p&gt;The new connection class itself:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;namespace Fishpond\Doctrine\DBAL\Connections;


class Multiple &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt; \Doctrine\DBAL\Connection
{
    /**
     * An array with the different database connection used by the EntityManager.
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; array of Doctrine\DBAL\Connection
     */
    &lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; $_connections;

    /**
     * The index that indicate which
     * connection is used, &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; index is &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;
     * the defaul connection is used
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;
     */
    &lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; $_selectedConnection;


    /**
     * Initializes a &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; instance of the Connection class.
     *
     * @param array $params  The connection parameters.
     * @param Driver $driver
     * @param Configuration $config
     * @param EventManager $eventManager
     */

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function __construct(array $params, Driver  $driver, Configuration $config = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;,
       EventManager     $eventManager = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;)
    {

        parent::__construct($params, $driver, $config, $eventManager);
      
        foreach ($params[&apos;multiple_connections&apos;] as $connectionKey =&amp;gt; $paramsMultipleConnection) {
            $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections[$connectionKey] = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; \Doctrine\DBAL\Connection($paramsMultipleConnection, $driver, $config, $eventManager);
        }
    }
 


    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function setConnection($selectedConnection) {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_selectedConnection = $selectedConnection;
   
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;;
    }


    /**
     * Establishes the connection with the database.
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-object&quot;&gt;boolean&lt;/span&gt; TRUE &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; the connection was successfully established, FALSE &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt;
     *                 the connection is already open.
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function connect()
    {
        $status = parent::connect();
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($status == &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;) {
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
        }
       
        foreach ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections as $connection) {
            $connection-&amp;gt;connect();
        }


        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;;
    }

    /**
     * Executes an, optionally parameterized, SQL query.
     *
     * If the query is parameterized, a prepared statement is used.
     * If an SQLLogger is configured, the execution is logged.
     *
     * @param string $query The SQL query to execute.
     * @param array $params The parameters to bind to the query, &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; any.
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; Doctrine\DBAL\Driver\Statement The executed statement.
     * @internal PERF: Directly prepares a driver statement, not a wrapper.
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function executeQuery($query, array $params = array(), $types = array())
    {
    
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_selectedConnection == &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;) {
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::executeQuery($query, $params, $types);
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections[$&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_selectedConnection]-&amp;gt;executeQuery($query, $params, $types);
       
       
    }



    /**
     * Starts a transaction by suspending auto-commit mode.
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; void
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function beginTransaction()
    {
       parent::beginTransaction();
       foreach ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections as $connection) {
            $connection-&amp;gt;beginTransaction();
       }
    }

    /**
     * Commits the current transaction.
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; void
     * @&lt;span class=&quot;code-keyword&quot;&gt;throws&lt;/span&gt; ConnectionException If the commit failed due to no active transaction or
     *                             because the transaction was marked &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; rollback only.
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function commit()
    {
       parent::commit();
       foreach ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections as $connection) {
            $connection-&amp;gt;commit();
       }
    }


  /**
     * Gets the wrapped driver connection.
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; Doctrine\DBAL\Driver\Connection
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function getWrappedConnection()
    {
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_selectedConnection == &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;) {
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::getWrappedConnection();
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connections[$&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_selectedConnection]-&amp;gt;getWrappedConnection();
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt; ..........&lt;br/&gt;
 ........&lt;/p&gt;

&lt;p&gt;The class is working so far (need much more testing), but the idea is if is not selected a connection it will work as it is now. Also, an &apos;automatic&apos; selection of the connection could happen in an event listener, where we could define rules about which connection should be used for  different conditions/entities.&lt;/p&gt;</comment>
                    <comment id="13694" author="beberlei" created="Sun, 25 Jul 2010 10:39:27 +0000"  >&lt;p&gt;Rescheduled for Beta4&lt;/p&gt;</comment>
                    <comment id="13963" author="romanb" created="Mon, 16 Aug 2010 12:59:04 +0000"  >&lt;p&gt;We could even move this post-2.0 since this is a new feature and carries the risk of opening a set of new issues.&lt;/p&gt;</comment>
                    <comment id="15800" author="lstrojny" created="Mon, 2 May 2011 21:22:31 +0000"  >&lt;p&gt;Here is what we use in production for a few weeks now:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&amp;lt;?php
namespace Jarlssen\Doctrine2\DBAL;

use Doctrine\DBAL\Connection,
    Doctrine\DBAL\Driver,
    Doctrine\ORM\Configuration,
    Doctrine\Common\EventManager,
    Doctrine\DBAL\Events;

class MasterSlaveConnection &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt; Connection
{
    /**
     * Master connection
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; Doctrine\DBAL\Driver\Connection
     */
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_masterConn;

    /**
     * Slave connection
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;var&lt;/span&gt; Doctrine\DBAL\Driver\Connection
     */
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_slaveConn;

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function __construct(
        array $params,
        Driver $driver,
        Configuration $config = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;,
        EventManager $eventManager = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;
    )
    {
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (!isset($params[&apos;slaves&apos;]) or !isset($params[&apos;master&apos;])) {
            &lt;span class=&quot;code-keyword&quot;&gt;throw&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; \InvalidArgumentsException(&apos;master or slaves configuration missing&apos;);
        }

        $params[&apos;master&apos;][&apos;driver&apos;] = $params[&apos;driver&apos;];
        foreach ($params[&apos;slaves&apos;] as &amp;amp;$slave) {
            $slave[&apos;driver&apos;] = $params[&apos;driver&apos;];
        }

        parent::__construct($params, $driver, $config, $eventManager);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function connect($connectionName = &apos;slave&apos;)
    {
        $forceMasterAsSlave = &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;getTransactionNestingLevel() &amp;gt; 0) {
            $connectionName = &apos;master&apos;;
            $forceMasterAsSlave = &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;;
        }

        $connectionProperty = &apos;_&apos; . $connectionName . &apos;Conn&apos;;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;{$connectionProperty}) {
            &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($forceMasterAsSlave) {
                $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_slaveConn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_conn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_masterConn;
            } &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt; {
                $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_conn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;{$connectionProperty};
            }
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
        }

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($connectionName === &apos;master&apos;) {
            /** Set master and slave connection to master to avoid invalid reads */
            $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_masterConn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_slaveConn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_conn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connectTo($connectionName);
        } &lt;span class=&quot;code-keyword&quot;&gt;else&lt;/span&gt; {
            $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_slaveConn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_conn = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_connectTo($connectionName);
        }

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_eventManager-&amp;gt;hasListeners(Events::postConnect)) {
            $eventArgs = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Event\ConnectionEventArgs($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;);
            $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_eventManager-&amp;gt;dispatchEvent(Events::postConnect, $eventArgs);
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;;
    }

    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; function _connectTo($connectionName)
    {
        $params = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;getParams();

        $driverOptions = isset($params[&apos;driverOptions&apos;]) ? $params[&apos;driverOptions&apos;] : array();

        $connectionParams = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_chooseConnectionConfiguration($connectionName, $params);

        $user = isset($connectionParams[&apos;user&apos;]) ? $connectionParams[&apos;user&apos;] : &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;;
        $password = isset($connectionParams[&apos;password&apos;]) ? $connectionParams[&apos;password&apos;] : &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;;

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_driver-&amp;gt;connect($connectionParams, $user, $password, $driverOptions);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; function _chooseConnectionConfiguration($connectionName, $params)
    {
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($connectionName === &apos;master&apos;) {
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $params[&apos;master&apos;];
        }

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $params[&apos;slaves&apos;][array_rand($params[&apos;slaves&apos;])];
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function executeUpdate($query, array $params = array(), array $types = array())
    {
        &lt;span class=&quot;code-keyword&quot;&gt;try&lt;/span&gt; {
            &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (strpos(strtolower($query), &apos;delete from member_profile&apos;) === 0) {
                &lt;span class=&quot;code-keyword&quot;&gt;throw&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; \Exception($query);
            }

            $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::executeUpdate($query, $params, $types);
        } &lt;span class=&quot;code-keyword&quot;&gt;catch&lt;/span&gt;(\Exception $e) {
            $errorLog = &apos;error_&apos;.&apos;log&apos;;
            $errorLog(__METHOD__);
            $errorLog($e-&amp;gt;getMessage());
            $errorLog($e-&amp;gt;getTraceAsString());
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
        }
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function beginTransaction()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::beginTransaction();
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function commit()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::commit();
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function rollback()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::rollback();
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function delete($tableName, array $identifier)
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::delete($tableName, $identifier);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function update($tableName, array $data, array $identifier)
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::update($tableName, $data, $identifier);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function insert($tableName, array $data)
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::insert($tableName, $data);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function exec($statement)
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);
        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; parent::exec($statement);
    }

    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function getWrappedConnection()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;connect(&apos;master&apos;);

        &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_conn;
    }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                    <comment id="16539" author="koc" created="Sun, 2 Oct 2011 17:19:26 +0000"  >&lt;p&gt;Hello.&lt;/p&gt;

&lt;p&gt;Is there are any news? When you planed to implement this feature?&lt;/p&gt;</comment>
                    <comment id="16765" author="pulzarraider" created="Tue, 1 Nov 2011 17:25:43 +0000"  >&lt;p&gt;PLEASE add master/slave support to Doctrine DBAL 2. It&apos;s very important feature!&lt;/p&gt;</comment>
                    <comment id="17046" author="beberlei" created="Mon, 19 Dec 2011 14:56:53 +0000"  >&lt;p&gt;Implemented&lt;/p&gt;</comment>
                    <comment id="17047" author="beberlei" created="Mon, 19 Dec 2011 14:58:11 +0000"  >&lt;p&gt;I would consider this experimental, i have tested this in a master slave setup, but i can&apos;t guarantee it works 100% in combination with the ORM.&lt;/p&gt;

&lt;p&gt;See the class docblock comments of lib/doctrine/DBAL/connections/MasterSlaveConnection.php for more information on how it works.&lt;/p&gt;</comment>
                    <comment id="17719" author="pulzarraider" created="Sun, 1 Apr 2012 16:10:21 +0000"  >&lt;p&gt;Thank you, Benjamin Eberlei!&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-6] MySQL BLOB datatypes throw DoctrineException::unknownColumnType() exception</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-6</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;MySQL BLOB datatype appears to be breaking ClassMetadataExporter.  Very new to Doctrine so hopefully I&apos;ve isolated this correctly.&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;CREATE TABLE foo (
    id      BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
    bar   BLOB,
    PRIMARY KEY (id)
) ENGINE=InnoDB;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;// ... setup entitymanager ....
&lt;/span&gt;
$cme = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; \Doctrine\ORM\Tools\Export\ClassMetadataExporter();
$sm = $em-&amp;gt;getConnection()-&amp;gt;getSchemaManager();
$cme-&amp;gt;addMappingSource($sm, &apos;database&apos;);
$metadatas = $cme-&amp;gt;getMetadatasForMappingSources();
$exporter = $cme-&amp;gt;getExporter(&apos;annotation&apos;, &apos;/path/to/annotations&apos;);
$exporter-&amp;gt;setMetadatas($metadatas);
$exporter-&amp;gt;export();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;php -f doctrine Orm:convert-mapping --from-database --to=annotation --dest C:\www\app\models
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;Fatal error: Uncaught exception &apos;Doctrine\Common\DoctrineException&apos; with message &apos;Unknown column type&apos; in C:\www\app\lib\Doctrine\Common\DoctrineException.php:112

Stack trace:
#0 [internal function]: Doctrine\Common\DoctrineException::__callStatic(&apos;unknownColumnTy...&apos;, Array)
#1 C:\www\app\lib\Doctrine\DBAL\Types\Type.php(125): Doctrine\Common\DoctrineException::unknownColumnType(&apos;blob&apos;)
#2 C:\www\app\lib\Doctrine\DBAL\Schema\MySqlSchemaManager.php(262): Doctrine\DBAL\Types\Type::getType(&apos;blob&apos;)
#3 C:\www\app\lib\Doctrine\DBAL\Schema\AbstractSchemaManager.php(802): Doctrine\DBAL\Schema\MySqlSchemaManager-&amp;gt;_getPortableTableColumnDefinition(Array)
#4 C:\www\app\lib\Doctrine\DBAL\Schema\AbstractSchemaManager.php(221): Doctrine\DBAL\Schema\AbstractSchemaManager-&amp;gt;_getPortableTableColumnList(Array)
#5 C:\www\app in C:\www\app\lib\Doctrine\Common\DoctrineException.php on line 112
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>Windows 7 x64, PHP 5.3.1, MySQL 5.1.36 (pdo_mysql driver)</environment>
            <key id="11273">DBAL-6</key>
            <summary>MySQL BLOB datatypes throw DoctrineException::unknownColumnType() exception</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="3" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/major.png">Major</priority>
                    <status id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/resolved.png">Resolved</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="mjh_ca">Marc Hodgins</reporter>
                        <labels>
                    </labels>
                <created>Tue, 27 Apr 2010 01:03:29 +0000</created>
                <updated>Sun, 30 Oct 2011 22:25:41 +0000</updated>
                    <resolved>Sun, 30 Oct 2011 22:25:09 +0000</resolved>
                            <version>2.0.4</version>
                                <fixVersion>2.2</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>4</votes>
                        <watches>4</watches>
                        <comments>
                    <comment id="12758" author="beberlei" created="Tue, 27 Apr 2010 03:03:00 +0000"  >&lt;p&gt;You did isolate it correctly, we haven&apos;t gotten around to support BLOBs yet, because they are very complex to handle across different database vendors.&lt;/p&gt;

&lt;p&gt;We probably should address this asap though for beta 2.&lt;/p&gt;</comment>
                    <comment id="12759" author="romanb" created="Tue, 27 Apr 2010 03:37:09 +0000"  >&lt;p&gt;Unless I am missing something it should be easy to work around this by creating a custom type (that will, of course, be mysql-specific).&lt;/p&gt;</comment>
                    <comment id="12760" author="beberlei" created="Tue, 27 Apr 2010 04:01:14 +0000"  >&lt;p&gt;@Roman: I think the problem with custom types currently is that you cannot register them in Platform, giving you almost no chance to use custom types&lt;br/&gt;
with SchemaTool&lt;/p&gt;</comment>
                    <comment id="12891" author="shurakai" created="Mon, 10 May 2010 09:55:24 +0000"  >&lt;p&gt;@Benjamin: Where exactly is the problem? DBAL\Types\Type supports adding custom types...&lt;/p&gt;</comment>
                    <comment id="13443" author="beberlei" created="Mon, 28 Jun 2010 16:57:50 +0000"  >&lt;p&gt;Mark as New Feature.&lt;/p&gt;

&lt;p&gt;Blobs are so fundamentally different even across different PDO drivers that we might not implement them in Core, there is no common denominator we can abstract completely.&lt;/p&gt;</comment>
                    <comment id="15201" author="extesy" created="Mon, 31 Jan 2011 18:55:57 +0000"  >&lt;p&gt;Please consider implementing this in Doctrine 2.1, my database uses blobs for storing some binary data therefore I can&apos;t use doctrine for schema updates anymore - it won&apos;t even product the migration sql script.&lt;/p&gt;</comment>
                    <comment id="15202" author="beberlei" created="Tue, 1 Feb 2011 03:18:06 +0000"  >&lt;p&gt;See &lt;a href=&quot;http://www.doctrine-project.org/docs/orm/2.0/en/reference/basic-mapping.html#custom-mapping-types&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/docs/orm/2.0/en/reference/basic-mapping.html#custom-mapping-types&lt;/a&gt; how to implement a blob type yourself.&lt;/p&gt;</comment>
                    <comment id="15218" author="beberlei" created="Wed, 2 Feb 2011 18:21:48 +0000"  >&lt;p&gt;We should look into creating binary streams for blobs using the data wrapper &lt;a href=&quot;http://php.net/manual/en/wrappers.data.php&quot; class=&quot;external-link&quot;&gt;http://php.net/manual/en/wrappers.data.php&lt;/a&gt; for vendors that return strings. I have to look into it in detail though.&lt;/p&gt;</comment>
                    <comment id="16736" author="beberlei" created="Sun, 30 Oct 2011 22:25:09 +0000"  >&lt;p&gt;Implemented BLOB support&lt;/p&gt;</comment>
                </comments>
                <issuelinks>
                        <issuelinktype id="10002">
                <name>Dependency</name>
                                <outwardlinks description="depends on">
                            <issuelink>
            <issuekey id="11305">DBAL-5</issuekey>
        </issuelink>
                    </outwardlinks>
                                            </issuelinktype>
                        <issuelinktype id="10000">
                <name>Duplicate</name>
                                                <inwardlinks description="is duplicated by">
                            <issuelink>
            <issuekey id="12893">DBAL-142</issuekey>
        </issuelink>
                    </inwardlinks>
                            </issuelinktype>
                    </issuelinks>
                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>
</channel>
</rss>