<!--
RSS generated by JIRA (5.2.7#850-sha1:b2af0c8dc8537b36121c6a579fabbdf79fc919e5) at Wed May 22 22:41:21 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=fixVersion+%3D+%222.0.0-BETA3%22+AND+project+%3D+DBAL&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=fixVersion+%3D+%222.0.0-BETA3%22+AND+project+%3D+DBAL</link>
        <description>An XML representation of a search request</description>
                <language>en-us</language>
                        <issue start="0" end="14" total="14"/>
                <build-info>
            <version>5.2.7</version>
            <build-number>850</build-number>
            <build-date>21-02-2013</build-date>
        </build-info>
<item>
            <title>[DBAL-44] nullable is not working for all datatypes</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-44</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The nullable=true annotation is ignored from at least following Types:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;SmallIntType&lt;/li&gt;
	&lt;li&gt;DecimalType&lt;/li&gt;
	&lt;li&gt;BooleanType (not sure if nullable makes sense here)&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
            <key id="11848">DBAL-44</key>
            <summary>nullable is not working for all datatypes</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="6">Invalid</resolution>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="d.freudenberger">Daniel Freudenberger</reporter>
                        <labels>
                    </labels>
                <created>Mon, 30 Aug 2010 04:37:26 +0000</created>
                <updated>Mon, 30 Aug 2010 05:22:25 +0000</updated>
                    <resolved>Mon, 30 Aug 2010 05:22:03 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="14146" author="romanb" created="Mon, 30 Aug 2010 04:46:00 +0000"  >&lt;p&gt;This looks like it has been fixed for a while already. See:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/SmallIntType.php&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/SmallIntType.php&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/DecimalType.php&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/DecimalType.php&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/BooleanType.php&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Types/BooleanType.php&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="14147" author="d.freudenberger" created="Mon, 30 Aug 2010 05:20:27 +0000"  >&lt;p&gt;I&apos;ll take a look at the master next time before submitting a bug report. Anyway I think it would be better to not fix bugs without an existing ticket for the fixed bug &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;</comment>
                    <comment id="14148" author="d.freudenberger" created="Mon, 30 Aug 2010 05:22:03 +0000"  >&lt;p&gt;has already been fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10749" name="nullable.patch" size="864" author="d.freudenberger" created="Mon, 30 Aug 2010 04:37:26 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-37] auto increment can not be added to a column, when postgresql is used. </title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-37</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;To add auto increment to on column using the following code in the&lt;br/&gt;
migration class:&lt;/p&gt;

&lt;p&gt;    $systemSettingsTable-&amp;gt;changeColumn(&apos;setting_id&apos;,&lt;br/&gt;
array(&apos;autoincrement&apos; =&amp;gt; true));&lt;br/&gt;
or&lt;br/&gt;
    $settingIdColumn = $systemSettingsTable-&amp;gt;getColumn(&apos;setting_id&apos;);&lt;br/&gt;
    $settingIdColumn-&amp;gt;setAutoincrement(true);&lt;/p&gt;

&lt;p&gt;This works fine when MySQL is used. But when PostGreSQL is used, this&lt;br/&gt;
statement doesn&apos;t create any SQL statement. &lt;/p&gt;

&lt;p&gt;The patch in attachment could perhaps resolve this problem some way.&lt;/p&gt;</description>
                <environment>Linux</environment>
            <key id="11674">DBAL-37</key>
            <summary>auto increment can not be added to a column, when postgresql is used. </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="tiw">Ting Wang</reporter>
                        <labels>
                    </labels>
                <created>Thu, 22 Jul 2010 10:51:15 +0000</created>
                <updated>Sun, 25 Jul 2010 17:32:01 +0000</updated>
                    <resolved>Sun, 25 Jul 2010 17:32:01 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13695" author="beberlei" created="Sun, 25 Jul 2010 17:32:01 +0000"  >&lt;p&gt;Fixed in current master&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10705" name="autoincrementPatch.diff" size="2256" author="tiw" created="Thu, 22 Jul 2010 10:51:15 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-34] MySql getListTableForeignKeysSQL doesn&apos;t work for 5.0.xx</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-34</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The sql contains mysql specific code. And for the mysql 5.0.xxx the sql statement has syntax error.&lt;/p&gt;


&lt;p&gt;in /Doctrine/DBAL/Platforms/MySqlPlatform.php:&lt;br/&gt;
    public function getListTableForeignKeysSQL($table, $database = null)&lt;br/&gt;
    {&lt;br/&gt;
        $sql = &quot;SELECT DISTINCT k.`CONSTRAINT_NAME`, k.`COLUMN_NAME`, k.`REFERENCED_TABLE_NAME`, &quot;.&lt;br/&gt;
               &quot;k.`REFERENCED_COLUMN_NAME` /*!50116 , c.update_rule, c.delete_rule */ &quot;.&lt;br/&gt;
               &quot;FROM information_schema.key_column_usage k /*!50116 &quot;.&lt;br/&gt;
               &quot;INNER JOIN information_schema.referential_constraints c ON &quot;.&lt;br/&gt;
               &quot;  c.constraint_name = k.constraint_name AND &quot;.&lt;br/&gt;
               &quot;  c.table_name = &apos;$table&apos; */ WHERE k.table_name = &apos;$table&apos;&quot;;&lt;/p&gt;

&lt;p&gt;        if ($database) &lt;/p&gt;
{
            $sql .= &quot; AND k.table_schema = &apos;$database&apos; AND c.constraint_schema = &apos;$database&apos;&quot;;
        }

&lt;p&gt;        $sql .= &quot; AND `REFERENCED_COLUMN_NAME` is not NULL&quot;;&lt;/p&gt;

&lt;p&gt;        return $sql;&lt;br/&gt;
}&lt;/p&gt;


&lt;p&gt;For the mysql lower as 5.1.16 the SQL could be as the following:&lt;/p&gt;

&lt;p&gt; SELECT DISTINCT k.`CONSTRAINT_NAME`, k.`COLUMN_NAME`, k.`REFERENCED_TABLE_NAME`, k.`REFERENCED_COLUMN_NAME` FROM information_schema.key_column_usage k WHERE k.table_name = &apos;some_table&apos; AND k.table_schema = &apos;some database&apos; AND c.constraint_schema = &apos;some database&apos; AND `REFERENCED_COLUMN_NAME` is not NULL&lt;/p&gt;

&lt;p&gt;In this statement there is no reference of c&lt;/p&gt;
</description>
                <environment>MySQL Server version: 5.0.51a-24+lenny4 (Debian)&lt;br/&gt;
</environment>
            <key id="11639">DBAL-34</key>
            <summary>MySql getListTableForeignKeysSQL doesn&apos;t work for 5.0.xx</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="tiw">Ting Wang</reporter>
                        <labels>
                    </labels>
                <created>Mon, 19 Jul 2010 04:36:06 +0000</created>
                <updated>Mon, 15 Aug 2011 10:00:48 +0000</updated>
                    <resolved>Tue, 27 Jul 2010 16:36:58 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13715" author="beberlei" created="Tue, 27 Jul 2010 16:36:58 +0000"  >&lt;p&gt;Fixed&lt;/p&gt;</comment>
                    <comment id="16336" author="gedrox" created="Mon, 15 Aug 2011 08:55:14 +0000"  >&lt;p&gt;Pity that because of this the Doctrine schema-tool update action reports incorrect change list.&lt;br/&gt;
It tries to drop/add foreign keys because &quot;ON DELETE CASCADE&quot; option isn&apos;t read from the database at all.&lt;/p&gt;</comment>
                    <comment id="16338" author="beberlei" created="Mon, 15 Aug 2011 10:00:48 +0000"  >&lt;p&gt;5.0.x has no way to export the CASCADE details. Its just not possible to get this data in 5.0&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-33] Doctrine2 fails handling microseconds from PostgreSQL record</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-33</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;A column in database may be defined as both  TIMESTAMP WITH TIMEZONE and   TIMESTAMP WITHOUT TIMEZONE. If I insert a new value directly to the database through NOW() function, the value is stored including microseconds.&lt;/p&gt;

&lt;p&gt;But then, when I am trying to load the record to Doctrine entity, following exception is thrown:&lt;/p&gt;

&lt;p&gt;&amp;#8212;&lt;/p&gt;

&lt;p&gt;Doctrine\DBAL\Types\ConversionException&lt;/p&gt;

&lt;p&gt;Could not convert database value &quot;2010-07-17 15:29:57.762+02&quot; to Doctrine Type datetimetz&lt;/p&gt;

&lt;p&gt;File: C:\dev\etrener\library\Doctrine\DBAL\Types\ConversionException.php   Line: 46&lt;/p&gt;

&lt;p&gt;&amp;#8212;&lt;/p&gt;

&lt;p&gt;The same with both datetime and datetimetz columns.&lt;/p&gt;

&lt;p&gt;The problem is probably in PostgreSqlPlatform::getDateTimeTzFormatString(), where is the following row:&lt;br/&gt;
public function getDateTimeTzFormatString()&lt;/p&gt;

{ return &apos;Y-m-d H:i:sO&apos;; }

&lt;p&gt;But PostgreSQL stores timestamps with microseconds, so format should be maybe something like:&lt;/p&gt;

{ return &apos;Y-m-d H:i:s.uO&apos;; }

&lt;p&gt;The problem is already posted in &lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DBAL-22?focusedCommentId=13574&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_13574&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/jira/browse/DBAL-22?focusedCommentId=13574&amp;amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_13574&lt;/a&gt;, but that issue is already closed so maybe it was overlooked already then.&lt;/p&gt;

&lt;p&gt;Thank you for fix!&lt;/p&gt;</description>
                <environment>Doctrine - GIT trunk (night build from 2010-07-17), Windows 7, PHP 5.3.2, PostgreSQL  8.4.3, Apache 2.2.15</environment>
            <key id="11635">DBAL-33</key>
            <summary>Doctrine2 fails handling microseconds from PostgreSQL record</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="jantichy">Jan Tich&#253;</reporter>
                        <labels>
                    </labels>
                <created>Sat, 17 Jul 2010 11:03:31 +0000</created>
                <updated>Sat, 24 Jul 2010 18:56:40 +0000</updated>
                    <resolved>Sat, 24 Jul 2010 11:44:20 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>2</watches>
                        <comments>
                    <comment id="13620" author="beberlei" created="Tue, 20 Jul 2010 05:27:03 +0000"  >&lt;p&gt;Both DateTime and DateTimeTz assume that TIMESTAMP(0) is the definition, not the TIMESTAMP that implicitly degrades to TIMESTAMP(6). I am not sure how to handle this, I find this Postgres DateTime stuff rather annoying &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;

&lt;p&gt;Is there a global client side option for Postgres users to configure this?&lt;/p&gt;</comment>
                    <comment id="13683" author="beberlei" created="Sat, 24 Jul 2010 06:39:29 +0000"  >&lt;p&gt;@Jan: Did you use create the column manually yourself (TIMESTAMP WITHOUT TIMEZONE) or use the Doctrine Schema-Tool which defines TIMESTAMP(0) WITHOUT TIMEZONE.&lt;/p&gt;</comment>
                    <comment id="13686" author="beberlei" created="Sat, 24 Jul 2010 11:44:20 +0000"  >&lt;p&gt;Fixed in DBAL Trunk, see the following section of the DBAL manual to understand the workaround for PostgreSQL TIMESTAMP( n ) types where n &amp;gt; 0.&lt;/p&gt;

&lt;p&gt;ORM always creates TIMESTAMP(0), so this is handled as a legacy database schema.&lt;/p&gt;</comment>
                    <comment id="13687" author="beberlei" created="Sat, 24 Jul 2010 11:44:34 +0000"  >&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;++ PostgreSQL

+++ DateTime, DateTimeTz and Time Types

Postgres has a variable &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; format &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; the datatype TIMESTAMP(n) and TIME(n)
&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; microseconds are allowed (n &amp;gt; 0). Whenever you save a value with microseconds = 0.
PostgreSQL will &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; value in the format:

    2010-10-10 10:10:10 (Y-m-d H:i:s)

However &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; you save a value with microseconds it will &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; the full representation:

    2010-10-10 10:10:10.123456 (Y-m-d H:i:s.u)

Using the DateTime, DateTimeTz or Time type with microseconds enabled columns
can lead to errors because internally types expect the exact format &apos;Y-m-d H:i:s&apos;
in combination with `DateTime::createFromFormat()`. This method is twice a fast
as passing the date to the constructor of `DateTime`.

This is why Doctrine always wants to create the time related types without microseconds:

* DateTime to `TIMESTAMP(0) WITHOUT TIME ZONE`
* DateTimeTz to `TIMESTAMP(0) WITH TIME ZONE`
* Time to `TIME(0) WITHOUT TIME ZONE`

If you &lt;span class=&quot;code-keyword&quot;&gt;do&lt;/span&gt; not let Doctrine create the date column types and rather use types with microseconds
you have replace the &lt;span class=&quot;code-quote&quot;&gt;&quot;DateTime&quot;&lt;/span&gt;, &lt;span class=&quot;code-quote&quot;&gt;&quot;DateTimeTz&quot;&lt;/span&gt; and &lt;span class=&quot;code-quote&quot;&gt;&quot;Time&quot;&lt;/span&gt; types with a more liberal DateTime parser
that detects the format automatically:

    [php]
    use Doctrine\DBAL\Types\Type;

    Type::overrideType(&apos;datetime&apos;, &apos;Doctrine\DBAL\Types\VarDateTime&apos;);
    Type::overrideType(&apos;datetimetz&apos;, &apos;Doctrine\DBAL\Types\VarDateTime&apos;);
    Type::overrideType(&apos;time&apos;, &apos;Doctrine\DBAL\Types\VarDateTime&apos;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                    <comment id="13689" author="jantichy" created="Sat, 24 Jul 2010 18:56:40 +0000"  >&lt;p&gt;@Benjamin: Yes, I have created the column manualy directly in database using my own CREATE TABLE definition.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-32] Ensure that error mode is EXCEPTION if existing PDO instance used</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-32</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I am not sure whether we do that already but I remember having talked about it. It would probably be good to ensure that error mode is EXCEPTION if an existing PDO instance is used to create a DBAL Connection. Simply forcing the error mode by using setAttribute(PDO::ATTR_ERRMODE, PDO::ATTR_ERRMODE_EXCEPTION) should be sufficient.&lt;/p&gt;</description>
                <environment></environment>
            <key id="11592">DBAL-32</key>
            <summary>Ensure that error mode is EXCEPTION if existing PDO instance used</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</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>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="romanb">Roman S. Borschel</reporter>
                        <labels>
                    </labels>
                <created>Wed, 7 Jul 2010 06:03:23 +0000</created>
                <updated>Wed, 7 Jul 2010 10:15:21 +0000</updated>
                    <resolved>Wed, 7 Jul 2010 10:15:21 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13534" author="beberlei" created="Wed, 7 Jul 2010 10:15:21 +0000"  >&lt;p&gt;fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-30] Doctrine\DBAL\Connection::query() method does not connect automatically to the database</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-30</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The database access methods in Doctrine\DBAL\Connection automatically connect to the database, if the connection has not been created yet. This is not true in case of Doctrine\DBAL\Connection::query() - if we forget to connect manually, we get:&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;Warning: call_user_func_array() expects parameter 1 to be a valid callback, first array member is not a valid class name or object in /.../Doctrine/DBAL/Connection.php on line 608
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The problem is caused by the lack of&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;this&lt;/span&gt;-&amp;gt;connect();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;line within the method body.&lt;/p&gt;</description>
                <environment>Linux, PostgreSQL 8.4</environment>
            <key id="11570">DBAL-30</key>
            <summary>Doctrine\DBAL\Connection::query() method does not connect automatically to the database</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="zyxist">Tomasz J&#281;drzejewski</reporter>
                        <labels>
                    </labels>
                <created>Tue, 29 Jun 2010 11:54:16 +0000</created>
                <updated>Wed, 30 Jun 2010 14:08:05 +0000</updated>
                    <resolved>Wed, 30 Jun 2010 14:08:05 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13466" author="beberlei" created="Wed, 30 Jun 2010 14:08:05 +0000"  >&lt;p&gt;fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-29] Comparator: Changing one column name and dropping one leads to changing both into the new name.</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-29</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;If you have a table and in a new version rename one and drop another column both of exactly the same definition, the comparator will errorusly optimize the one to rename both columns to the new one.&lt;/p&gt;

&lt;p&gt;In these cases where it is not detectable which is the renamed and which the dropped it should drop both columns and create the new one. The user has to optimize this himself.&lt;/p&gt;</description>
                <environment></environment>
            <key id="11568">DBAL-29</key>
            <summary>Comparator: Changing one column name and dropping one leads to changing both into the new name.</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="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Tue, 29 Jun 2010 07:51:37 +0000</created>
                <updated>Wed, 30 Jun 2010 14:29:42 +0000</updated>
                    <resolved>Wed, 30 Jun 2010 14:29:42 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13467" author="beberlei" created="Wed, 30 Jun 2010 14:29:42 +0000"  >&lt;p&gt;Fixed.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-28] Better error messages while creating schema</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-28</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I&apos;d like to suggest some improvements in the schema builder concerning error messages, which do not tell the most important information needed to find the problem quickly and without irritation. Below, I present a simple case I encountered yesterday: I had a quite big schema to generate, but I made a mistake in index column names. Doctrine thrown me the following exception:&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;Doctrine\DBAL\Schema\SchemaException
An unknown column-name name was given.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;What I miss, is the table name, where I try to define such an index. I took a look at the messages for SchemaException and I noticed that none of them provides it, except those ones which refer directly to tables.&lt;/p&gt;

&lt;p&gt;Another small, but useful improvement is enclosing the table/column/index/sequence/anything-else names in quotes or double quotes in order to make them better distinguishable from the message body. My first impression from the message above was that I have a &quot;column-name&quot; name defined somewhere, not a column named &quot;name&quot;.&lt;/p&gt;

&lt;p&gt;To sum up, the expected message should look like this:&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;Doctrine\DBAL\Schema\SchemaException
An unknown column-name &apos;name&apos; was given for index &apos;foo&apos; in table &apos;bar&apos;.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The problem is minor, but I would be grateful if you remembered about it in the near future, so that I could have more useful error messages at least in the stable releases.&lt;/p&gt;</description>
                <environment>Linux, PostgreSQL 8.4, PHP 5.3.2</environment>
            <key id="11563">DBAL-28</key>
            <summary>Better error messages while creating schema</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</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>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="zyxist">Tomasz J&#281;drzejewski</reporter>
                        <labels>
                    </labels>
                <created>Mon, 28 Jun 2010 14:43:12 +0000</created>
                <updated>Mon, 28 Jun 2010 16:45:43 +0000</updated>
                    <resolved>Mon, 28 Jun 2010 16:45:43 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                <component>Schema Managers</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13440" author="beberlei" created="Mon, 28 Jun 2010 16:45:42 +0000"  >&lt;p&gt;fixed, changed on other exceptions also.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-26] DateTime type column can&apos;t be nullable</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-26</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;After upgrade from B1 to B2 my app stopped working, throwing ConversionException on nullable DateTime field, value of which is null.&lt;br/&gt;
There is part of DateTimeType.php which causes it - if (!$val) matches even the valid null value.&lt;/p&gt;

&lt;p&gt;    public function convertToPHPValue($value, AbstractPlatform $platform)&lt;br/&gt;
    {&lt;br/&gt;
        $val = ($value !== null)&lt;br/&gt;
            ? \DateTime::createFromFormat($platform-&amp;gt;getDateTimeFormatString(), $value) : null;&lt;br/&gt;
        if (!$val) &lt;/p&gt;
{
            throw ConversionException::conversionFailed($value, $this-&amp;gt;getName());
        }
&lt;p&gt;        return $val;&lt;br/&gt;
    }&lt;/p&gt;</description>
                <environment></environment>
            <key id="11560">DBAL-26</key>
            <summary>DateTime type column can&apos;t be nullable</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="koubas">Jakub Hus&#225;k</reporter>
                        <labels>
                    </labels>
                <created>Sun, 27 Jun 2010 11:36:09 +0000</created>
                <updated>Sun, 27 Jun 2010 13:05:27 +0000</updated>
                    <resolved>Sun, 27 Jun 2010 13:05:27 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13427" author="koubas" created="Sun, 27 Jun 2010 11:41:56 +0000"  >&lt;p&gt;maybe there should be a null check in _gatherRowData method, before the value is passed to convertToPHPValue of any type class&lt;/p&gt;</comment>
                    <comment id="13429" author="beberlei" created="Sun, 27 Jun 2010 12:21:41 +0000"  >&lt;p&gt;This is a bug in the ConversionException code, sorry for that i will fix it tonight.&lt;/p&gt;

&lt;p&gt;Btw, you are not using Beta2 but trunk, the ConversionException code was just committed yesterday. Additionally you should use the ORM with the Beta2 not with trunk of DBAL, they don&apos;t work together currently in some aspects (SchemaTool)&lt;/p&gt;</comment>
                    <comment id="13430" author="beberlei" created="Sun, 27 Jun 2010 13:05:27 +0000"  >&lt;p&gt;This was introduced with &lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DBAL-22&quot; title=&quot;Saving UTC Offset in Postgres DATETIME messes with PHP DateTime and Timezones&quot;&gt;&lt;del&gt;DBAL-22&lt;/del&gt;&lt;/a&gt; and is now fixed&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-22] Saving UTC Offset in Postgres DATETIME messes with PHP DateTime and Timezones</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-22</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The DateTime type is currently unusable in PostgreSQL due to a wrong parsing format.&lt;/p&gt;

&lt;p&gt;PostgreSqlPlatform::getDateTimeFormatString() should be changed from:&lt;/p&gt;

&lt;p&gt;Y-m-d H:i:sO &lt;/p&gt;

&lt;p&gt;to&lt;/p&gt;

&lt;p&gt;Y-m-d H:i:s.uO&lt;/p&gt;

&lt;p&gt;According to &lt;a href=&quot;http://twitter.com/auroraeosrose/statuses/16154268629&quot; class=&quot;external-link&quot;&gt;http://twitter.com/auroraeosrose/statuses/16154268629&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also, there&apos;s no way to check if a convert From and To PHP/Database worked correctly. Maybe we should introduce an exception when a DBAL\Type conversion fails, otherwise, there&apos;s no way to figure it out what happened.&lt;/p&gt;</description>
                <environment></environment>
            <key id="11490">DBAL-22</key>
            <summary>Saving UTC Offset in Postgres DATETIME messes with PHP DateTime and Timezones</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="guilhermeblanco">Guilherme Blanco</reporter>
                        <labels>
                    </labels>
                <created>Mon, 14 Jun 2010 12:53:25 +0000</created>
                <updated>Tue, 13 Jul 2010 07:42:05 +0000</updated>
                    <resolved>Sat, 26 Jun 2010 11:06:52 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                <component>Platforms</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="13309" author="beberlei" created="Mon, 14 Jun 2010 15:20:06 +0000"  >&lt;p&gt;throwing an exception is a no-go in my opinion, it would completely cripple an application if there is some change in the DB.&lt;/p&gt;

&lt;p&gt;There are no checks if an integer field is really in int, or if the db has a varchar field making the (int) conversion fail. This should be ignored and is responsibility of the user to get right.&lt;/p&gt;

&lt;p&gt;I am looking into the format, however we have several unit-tests for this working correctly, i am a bit confused.&lt;/p&gt;</comment>
                    <comment id="13310" author="beberlei" created="Mon, 14 Jun 2010 16:13:58 +0000"  >&lt;p&gt;The question is rather, should we deprecate the usage of timezones alltogether? This is a good read on the topic: &lt;a href=&quot;http://derickrethans.nl/storing-date-time-in-database.html&quot; class=&quot;external-link&quot;&gt;http://derickrethans.nl/storing-date-time-in-database.html&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="13312" author="beberlei" created="Mon, 14 Jun 2010 16:22:49 +0000"  >&lt;p&gt;ok the current state is, we use &quot;TIMESTAMP(0) WITH TIMEZONE&quot;, which matches the currently given format &quot;Y-m-d H:i:sO&quot;&lt;/p&gt;</comment>
                    <comment id="13313" author="auroraeosrose" created="Mon, 14 Jun 2010 16:34:26 +0000"  >&lt;p&gt;The &quot;TIMESTAMP(0) WITH TIMEZONE&quot; is a very UNCOMMON time field&lt;/p&gt;

&lt;p&gt;Usually timstamp without time zone is used &lt;/p&gt;

&lt;p&gt;Also the difference between integer field is really in int and db has a varchar field making the (int) is different for one reason&lt;/p&gt;

&lt;p&gt;The timestamp is returning a datetime object - not a scalar&lt;/p&gt;

&lt;p&gt;What happens when you try to use something in PHP that&apos;s not an object as an object? It fatal errors&lt;/p&gt;

&lt;p&gt;If the integer field is not really an integer when you get your data back from the db and you attempt to use it, PHP is not going to throw a fatal error at you.  Your application might be angry, but that&apos;s another story.&lt;/p&gt;

&lt;p&gt;I would almost rather you simply use strtotime and pass that to the datetime class for postgresql since it will work on all &apos;versions&quot; of postgresql&apos;s timestamp, regardless if it has microseconds or timezone information.  Then you&apos;re not locking all users of doctrine into using one timestamp format.&lt;/p&gt;
</comment>
                    <comment id="13314" author="auroraeosrose" created="Mon, 14 Jun 2010 16:43:05 +0000"  >&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;$full = &apos;2010-06-11 17:18:39.808397-04&apos;;
$no_micro = &apos;2010-06-11 17:18:39-04&apos;;
$no_tz = &apos;2010-06-11 17:18:39&apos;;
var_dump(DateTime::createFromFormat(&apos;Y-m-d H:i:sO&apos;, $full));
var_dump(DateTime::createFromFormat(&apos;Y-m-d H:i:s.uO&apos;, $full));

var_dump(&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime($full));
var_dump(&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime($no_micro));
var_dump(&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime($no_tz));
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Quick test  - why rely on createFromFormat when the datetime constructor is smart enough to handle all formats?  &lt;/p&gt;</comment>
                    <comment id="13315" author="beberlei" created="Mon, 14 Jun 2010 16:52:49 +0000"  >&lt;p&gt;One reason is probably performance, using the constructor takes double the time:&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;$full = &apos;2010-06-11 17:18:39.808397-04&apos;;
$no_micro = &apos;2010-06-11 17:18:39-04&apos;;
$no_tz = &apos;2010-06-11 17:18:39&apos;;

$n = 5000;

$ts = microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; ($i = 0; $i &amp;lt; $n; $i++) {
    DateTime::createFromFormat(&apos;Y-m-d H:i:sO&apos;, $no_micro);
    DateTime::createFromFormat(&apos;Y-m-d H:i:s.uO&apos;, $full);
}
echo &lt;span class=&quot;code-quote&quot;&gt;&quot;DateTime::createFromFormat: &quot;&lt;/span&gt; . number_format(microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;) - $ts, 4).&lt;span class=&quot;code-quote&quot;&gt;&quot;\n&quot;&lt;/span&gt;;

&lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; ($i = 0; $i &amp;lt; $n; $i++) {
    &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime($full);
    &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime($no_micro);
}
echo &lt;span class=&quot;code-quote&quot;&gt;&quot;&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime: &quot;&lt;/span&gt; . number_format(microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;) - $ts, 4).&lt;span class=&quot;code-quote&quot;&gt;&quot;\n&quot;&lt;/span&gt;;
&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;DateTime::createFromFormat: 0.1173
&lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; DateTime: 0.2496
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Since the DateFormat is pretty static, therefore using createFromFormat() seems an obvious choice. This is of course mainly a good reason for MySQL where you cannot change the format, and Postgres, Oracle and DB2 allow changes in precision and formatting of the date which make this decision a little bit more complicated.&lt;/p&gt;</comment>
                    <comment id="13316" author="auroraeosrose" created="Mon, 14 Jun 2010 16:58:55 +0000"  >&lt;p&gt;I think everyone BUT mysql allow changes in the precision and formatting of the date - heck SQL Server is the worst for &quot;make the date be whatever you want&quot;&lt;/p&gt;

&lt;p&gt;I think this would fall into &quot;premature optimization&quot; - yes it&apos;s a great speed improvement for mysql, but it&apos;s at the expense of all other DBs...&lt;/p&gt;</comment>
                    <comment id="13317" author="beberlei" created="Mon, 14 Jun 2010 16:59:53 +0000"  >&lt;p&gt;A Doctrine\DBAL\DBALException due to a wrong date in the database probably leads to a fatal error in any userland code, or would anybody catch all the errors? how would you handle them?&lt;/p&gt;

&lt;p&gt;We could think of changing the type to be without timezone, that would be a pretty massive BC though since it affects users database schemas.&lt;/p&gt;

&lt;p&gt;Another option would be a configurable format per Postgres/Oracle/DB2 Platform:&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;$config = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; \Doctrine\ORM\Configuration();
$config-&amp;gt;setDateTimeGlobalFormat(&apos;Y-m-d H:i:s.uO&apos;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;However Type instances are flyweight instances, that means it would have to be the format of all Doctrine DateTime typed columns. However this way you would at least have full control over the format, not depending on any Doctrine 2 interpretation.&lt;/p&gt;

&lt;p&gt;You can of course add your own datetime type and overwrite the existing or use different ones. Maybe we should supply two DateTime types.&lt;/p&gt;</comment>
                    <comment id="13318" author="auroraeosrose" created="Mon, 14 Jun 2010 17:18:39 +0000"  >&lt;p&gt;I don&apos;t think an exception is a good idea&lt;br/&gt;
A PHP warning/notice might be a better solution so you at least know what failed (it shouldn&apos;t kill the script though, as a fatal error and exception do)&lt;/p&gt;

&lt;p&gt;However a configurable would probably be a good idea... &lt;br/&gt;
Or two datetime types - one that allows a format to be used&lt;br/&gt;
Or even the ability to define a format for your datetime field (with a fallback to the default format)&lt;/p&gt;

&lt;p&gt;For databases that talk to other things, not just PHP via Doctrine, dictating the format of the datetime fields is not an option &lt;img class=&quot;emoticon&quot; src=&quot;http://www.doctrine-project.org/jira/images/icons/emoticons/wink.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="13363" author="beberlei" created="Thu, 17 Jun 2010 16:50:29 +0000"  >&lt;p&gt;I changed the title to reflect the real issue of this ticket, using Postgresql with WITH TIMEZONE is rather problematic with regard to DateTime and DateTimeZone Handling inside PHP, see the following code snippets (&lt;a href=&quot;http://pastie.org/1009033&quot; class=&quot;external-link&quot;&gt;http://pastie.org/1009033&lt;/a&gt;) and Dericks post (&lt;a href=&quot;http://derickrethans.nl/storing-date-time-in-database.html&quot; class=&quot;external-link&quot;&gt;http://derickrethans.nl/storing-date-time-in-database.html&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;We should change the default behaviour in Postgres (and Oracle) to be WITHOUT TIMEZONE, since this is the 90% use-case. Additionally it may create less bugs when we don&apos;t fiddle with the Timezone used for creation.&lt;/p&gt;</comment>
                    <comment id="13391" author="beberlei" created="Mon, 21 Jun 2010 14:28:01 +0000"  >&lt;p&gt;Ok we also discussed errors when conversion failed and added a ConversionException. We also implemented a new type DateTimeTz.&lt;/p&gt;

&lt;p&gt;This is both currently in my feature branch: &lt;a href=&quot;http://github.com/doctrine/dbal/tree/DBAL-22&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/tree/DBAL-22&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="13396" author="beberlei" created="Mon, 21 Jun 2010 17:40:24 +0000"  >&lt;p&gt;This is a copy of a mail going to the doctrine-dev and doctrine-user lists some minutes ago:&lt;/p&gt;

&lt;p&gt;Hello Doctrine 2 + Postgres and Oracle Users,&lt;/p&gt;

&lt;p&gt;Both Postgres and Oracle currently save the Date Offset for DateTime&lt;br/&gt;
instances they are handling from Doctrine 2. However Date Offsets should&lt;br/&gt;
not be confused with Timezones and this can cause considerable issues&lt;br/&gt;
with transitions, modifications and comparisons of dates.&lt;/p&gt;

&lt;p&gt;As a result we have to change the DateTime type implementations of&lt;br/&gt;
Oracle/Postgres for Beta 3 to reduce the risk of users running into date&lt;br/&gt;
calculation problems.&lt;/p&gt;

&lt;p&gt;Required changes inside Doctrine DBAL Package:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;The column create statement on both platforms will be changed from&lt;br/&gt;
&quot;TIMESTAMP(0) WITH TIME ZONE&quot; to &quot;TIMESTAMP(0) WITHOUT TIME ZONE&quot;.&lt;/li&gt;
	&lt;li&gt;The supported PHP date format will change from &quot;Y-m-d H:i:sO&quot; to&lt;br/&gt;
&quot;Y-m-d H:i:s&quot;.&lt;/li&gt;
	&lt;li&gt;Schema-Tool will automatically detect dates with offset retrieved from&lt;br/&gt;
the Database as &quot;DateTimeTz&quot; types.&lt;/li&gt;
	&lt;li&gt;Wrongly converted date values will throw a &quot;Doctrine\DBAL\Types&lt;br/&gt;
\ConversionException&quot;. This will stop any non-migrated from running, but&lt;br/&gt;
more importantly from corrupting your data.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;What does that mean to you as a user?&lt;/p&gt;

&lt;p&gt;POSTGRES:&lt;/p&gt;

&lt;p&gt;There are two solutions if you use Postgres:&lt;/p&gt;

&lt;p&gt;1. The easy way out: We will introduce a new Type &quot;DateTimeTz&quot;, which&lt;br/&gt;
will keep backwards compability. You will however have to deal with the&lt;br/&gt;
Timezone issues yourself. One way is by setting your application&lt;br/&gt;
&quot;date.timezone&quot; ini variable to be an offset instead of a timezone on&lt;br/&gt;
your server. You have to make transition calculations yourself in this&lt;br/&gt;
case.&lt;/p&gt;

&lt;p&gt;2. Converting the columns: When upgrading from Beta 2 to the master or&lt;br/&gt;
Beta 3 the type will change its behavior, conversions from a Beta 2 WITH&lt;br/&gt;
TIME ZONE column to the new type will fail, leading to a&lt;br/&gt;
&quot;ConversionException&quot; being thrown. However Schema-Tool will recognize&lt;br/&gt;
the changes automatically and ask you to convert the column. First tests&lt;br/&gt;
of me showed that converting the TIMESTAMP column from WITH to WITHOUT&lt;br/&gt;
timezone works, it even corrects all dates for the offsets to UTC.&lt;/p&gt;

&lt;p&gt;ORACLE:&lt;/p&gt;

&lt;p&gt;Oracle does not permit changing the types when there is already data in&lt;br/&gt;
it (guessing from the preliminary tests I made).&lt;br/&gt;
You have to switch all your entity fields using the &quot;DateTime&quot; type to&lt;br/&gt;
use the new &quot;DateTimeTz&quot; type otherwise you will experience an&lt;br/&gt;
&quot;ConversionException&quot; being thrown.&lt;/p&gt;

&lt;p&gt;Planed Schedule for the changes:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;The complete changes are currently in a DBAL feature branch on Github&lt;br/&gt;
&lt;a href=&quot;http://github.com/doctrine/dbal/tree/DBAL-22&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/tree/DBAL-22&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Merge into the DBAL project this week. This WONT affect you using the&lt;br/&gt;
ORM just yet, its a DBAL change only!&lt;/li&gt;
	&lt;li&gt;The ORM Master on Github will still be linked against the DBAL Beta 2&lt;br/&gt;
via a Git Submodule (doctrine2/lib/vendor/doctrine-dbal).&lt;/li&gt;
	&lt;li&gt;In the timestamp between the DBAL Beta3 and the ORM Beta3 release we&lt;br/&gt;
will integrate the changes into the ORM package also.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I will send an additional notice to the lists when we will bump the ORM&lt;br/&gt;
dependency on the DBAL.&lt;/p&gt;

&lt;p&gt;Sorry for the inconvenience regarding this issue, but we feel very&lt;br/&gt;
strongly about making this change. This will ultimately solve many&lt;br/&gt;
subtle issues that would have popped up here and there.&lt;/p&gt;

&lt;p&gt;Thanks goes to Elisabeth Smith for bringing this issue to the table and&lt;br/&gt;
to Derick Rethans who helped us understand why timezones/offset in the&lt;br/&gt;
database are a pain to work with.&lt;/p&gt;

&lt;p&gt;greetings,&lt;br/&gt;
Benjamin&lt;/p&gt;</comment>
                    <comment id="13419" author="beberlei" created="Sat, 26 Jun 2010 11:06:52 +0000"  >&lt;p&gt;Merged into Master now&lt;/p&gt;</comment>
                    <comment id="13574" author="drevolution" created="Tue, 13 Jul 2010 07:38:57 +0000"  >&lt;p&gt;Hi, on master branch of DBAL package in PostgreSqlPlatform::getDateTimeTzFormatString() I see this:&lt;/p&gt;

&lt;p&gt;    public function getDateTimeTzFormatString()&lt;/p&gt;
    {
        return &apos;Y-m-d H:i:sO&apos;;
    }

&lt;p&gt;But PostgreSQL stores timestamps with microseconds, so format should be more likely:&lt;/p&gt;

&lt;p&gt;    public function getDateTimeTzFormatString()&lt;/p&gt;
    {
        return &apos;Y-m-d H:i:s.uO&apos;;
    } 

&lt;p&gt;Yes, Doctrine converts DateTimeTz from PHP value to database value without microseconds, but if I will use some database function (for example now()) for get timestamp and I will store it to the database directly and than I will read this values through Doctrine, it will cause an error.&lt;/p&gt;

&lt;p&gt;Is there any reason for not using default PostgreSQL format of timestamp with microseconds?&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-21] Pgsql: getListTableColumnsSQL: read domains info (patch provided)</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-21</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;Hello,&lt;/p&gt;

&lt;p&gt;If you use DOMAIN (CREATE DOMAIN) in pgsql, PostgreSqlPlatform generate a &quot;new \Doctrine\DBAL\DBALException(&quot;Unknown database type &quot;.$dbType.&quot; requested, &quot; . get_class($this) . &quot; may not support it.&quot;);&quot; exception because it does not know the type &quot;domain_name&quot; (CREATE DOMAIN domain_name AS VARCHAR(80); )&lt;/p&gt;

&lt;p&gt;With this patch, it checks if the given type (either normal type, either domain) is a domain, and if yes, takes the right info (domain_name is type varchar and complete_type character varying(80)). If it&apos;s not a domain, it takes the normal type.&lt;/p&gt;

&lt;p&gt;(patch -p0 doctrine2/lib/Doctrine/DBAL/Platforms/PostgreSqlPlatform.php &amp;lt; pgsql_domains.patch)&lt;/p&gt;

&lt;p&gt;Also, it&apos;s not the goal here, but the queries could be optimized using joins in place of auto join + where, but, as said, the speed is not the goal since the queries are there only for entities mapping.&lt;/p&gt;

&lt;p&gt;Hope it helps.&lt;/p&gt;

&lt;p&gt;Best regards,&lt;/p&gt;

&lt;p&gt;Rapha&#235;l Dehousse&lt;/p&gt;</description>
                <environment></environment>
            <key id="11484">DBAL-21</key>
            <summary>Pgsql: getListTableColumnsSQL: read domains info (patch provided)</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="rdehouss">Rapha&#235;l Dehousse</reporter>
                        <labels>
                    </labels>
                <created>Sun, 13 Jun 2010 07:19:37 +0000</created>
                <updated>Sun, 20 Jun 2010 09:05:04 +0000</updated>
                    <resolved>Sun, 20 Jun 2010 09:05:04 +0000</resolved>
                            <version>2.0.0-BETA2</version>
                                <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13290" author="beberlei" created="Sun, 13 Jun 2010 07:32:05 +0000"  >&lt;p&gt;Let me understand this, this patch automatically detects the underlying type of a new DOMAIN Type created in postgresql?&lt;/p&gt;

&lt;p&gt;So say i create a MONEY type and have it be a decimal or something, your code would make doctrine automatically detect it being a decimal and create the decimal doctrine type?&lt;/p&gt;</comment>
                    <comment id="13295" author="rdehouss" created="Sun, 13 Jun 2010 09:07:28 +0000"  >&lt;p&gt;Indeed, it will detect the &quot;natural&quot; type under MONEY and use this type for doctrine.&lt;/p&gt;</comment>
                    <comment id="13376" author="beberlei" created="Sun, 20 Jun 2010 09:05:04 +0000"  >&lt;p&gt;Implemented and tested in &lt;a href=&quot;http://github.com/doctrine/dbal/commit/93ad4c2a24adf93d450c9eefbc966ccf3fe87414&quot; class=&quot;external-link&quot;&gt;http://github.com/doctrine/dbal/commit/93ad4c2a24adf93d450c9eefbc966ccf3fe87414&lt;/a&gt;&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10643" name="pgsql_domains.patch" size="1049" author="rdehouss" created="Sun, 13 Jun 2010 07:19:37 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-17] E_STRICT error in Doctrine\DBAL\Driver\OCI8\Driver::_constructDsn()</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-17</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;I get an E_STRICT error in Doctrine\DBAL\Driver\OCI8\Driver::_constructDsn() because I forgot to set a &apos;dbname&apos; key in the params array to Doctrine\DBAL\DriverManager.&lt;/p&gt;

&lt;p&gt;My Doctrine is a svn checkout, from 2.0.0-beta1 tag.&lt;/p&gt;

&lt;p&gt;A patch is attached (patch -p0 &amp;lt; patch.diff on project root).&lt;/p&gt;</description>
                <environment>MacOS X 10.5, PHP 5.3.2</environment>
            <key id="11449">DBAL-17</key>
            <summary>E_STRICT error in Doctrine\DBAL\Driver\OCI8\Driver::_constructDsn()</summary>
                <type id="1" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/bug.png">Bug</type>
                                <priority id="5" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/trivial.png">Trivial</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="eriksencosta">Eriksen Costa</reporter>
                        <labels>
                    </labels>
                <created>Sat, 5 Jun 2010 21:22:39 +0000</created>
                <updated>Mon, 28 Jun 2010 16:51:04 +0000</updated>
                    <resolved>Mon, 28 Jun 2010 16:51:04 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13118" author="beberlei" created="Sun, 6 Jun 2010 08:50:18 +0000"  >&lt;p&gt;is specifying the database name optional during connection to oracle databases? otherwise we could also throw an exception.&lt;/p&gt;</comment>
                    <comment id="13121" author="eriksencosta" created="Sun, 6 Jun 2010 13:39:03 +0000"  >&lt;p&gt;It&apos;s optional, according to &amp;lt;&lt;a href=&quot;http://php.net/oci_connect&quot; class=&quot;external-link&quot;&gt;http://php.net/oci_connect&lt;/a&gt;&amp;gt;:&lt;/p&gt;

&lt;p&gt;&quot;If not specified, PHP uses environment variables such as TWO_TASK (on Linux) or LOCAL (on Windows) and ORACLE_SID to determine the Oracle instance to connect to.&quot;&lt;/p&gt;

&lt;p&gt;I just spotted the error, I don&apos;t have an Oracle database neither the oci8 extension in my machine.&lt;/p&gt;</comment>
                    <comment id="13441" author="beberlei" created="Mon, 28 Jun 2010 16:51:04 +0000"  >&lt;p&gt;fixed anyways&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10627" name="patch.diff" size="872" author="eriksencosta" created="Sat, 5 Jun 2010 21:22:39 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-11] Improve API of Sqllogger</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-11</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;The SqlLogger currently has a very simple API, which lacks for example the possibilty to log the execution time of queries. This would require a second call of the logger however, but i made some performance tests on the current implementation. Its using the following check to look if logging is enabled:&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;if&lt;/span&gt;($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_config-&amp;gt;getSqlLogger())
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;However:&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;if&lt;/span&gt;($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_hasLogger)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Only takes half the time.  See the test at the bottom.&lt;/p&gt;

&lt;p&gt;We could switch to a boolean flag and use the &quot;saved&quot; time to enhance the SQL Logger API to include the following information:&lt;/p&gt;

&lt;p&gt;1. SQL (Have already)&lt;br/&gt;
2. Params (Have already)&lt;br/&gt;
3. Elapsed Time (Start Time and End Time)&lt;br/&gt;
4. Query Type (SELECT, INSERT, UPDATE, DELETE, OTHER)&lt;/p&gt;

&lt;p&gt;This would benefit both Symfony and ZF since they could hook into the logger for their respective debugging facilities (sf Web Toolbar, Zend Firebug SQL Profiling).&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                                                                                             
class Config                                                                                      
{                                                                                                 
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_logger;                                                                           
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function __construct()                                                                 
    {                                                                                             
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_logger = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; stdClass();
    }
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function getLogger()
    {
        &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;_logger;
    }
}

class Foo
{
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_config = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;;
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function __construct()
    {
         $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_config = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Config();
    }
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function execute()
    {
         &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;_config-&amp;gt;getLogger()) {
         }
    }
}

class Bar
{
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_config = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;;
    &lt;span class=&quot;code-keyword&quot;&gt;protected&lt;/span&gt; $_loggerExists = &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 __construct()
    {
         $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_config = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; stdClass();
         $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_loggerExists = &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;;
    }
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function execute()
    {
        &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;_loggerExists) {

        }
    }
}

$f = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Foo();
$s = microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt;($i = 0; $i &amp;lt; 100; $i++) {
    $f-&amp;gt;execute();
}
echo (microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;)-$s).&lt;span class=&quot;code-quote&quot;&gt;&quot;s\n&quot;&lt;/span&gt;;

$f = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Bar();
$s = microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt;($i = 0; $i &amp;lt; 100; $i++) {
    $f-&amp;gt;execute();
}
echo (microtime(&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;)-$s).&lt;span class=&quot;code-quote&quot;&gt;&quot;s\n&quot;&lt;/span&gt;
&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;benny@benny-pc:~/code/php/wsnetbeans/Doctrine/trunk/tests$ php /tmp/boolvsmethod.php                
0.00055313110351562s                                                                                  
0.00025200843811035s                                                                                  
benny@benny-pc:~/code/php/wsnetbeans/Doctrine/trunk/tests$ php /tmp/boolvsmethod.php                
0.00051999092102051s                                                                                
0.00025200843811035s                                                                                
benny@benny-pc:~/code/php/wsnetbeans/Doctrine/trunk/tests$ php /tmp/boolvsmethod.php                
0.00036001205444336s                                                                                
0.00017309188842773s                                                                                
benny@benny-pc:~/code/php/wsnetbeans/Doctrine/trunk/tests$ php /tmp/boolvsmethod.php                
0.0005180835723877s                                                                                 
0.00025010108947754s 
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
            <key id="10358">DBAL-11</key>
            <summary>Improve API of Sqllogger</summary>
                <type id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/improvement.png">Improvement</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>
                                <assignee username="beberlei">Benjamin Eberlei</assignee>
                                <reporter username="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Fri, 6 Nov 2009 18:04:02 +0000</created>
                <updated>Sun, 20 Jun 2010 10:52:27 +0000</updated>
                    <resolved>Sun, 20 Jun 2010 10:52:27 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>3</votes>
                        <watches>2</watches>
                        <comments>
                    <comment id="10533" author="romanb" created="Sat, 7 Nov 2009 12:16:37 +0000"  >&lt;p&gt;Yea, its currently a known limitation that the times do not get logged. However, I have real doubts as to whether that is actually useful as such measurements from PHP are very inaccurate. Its much better to copy+paste a SQL query to a SQL console and run it with ANALYZE/EXPLAIN ... to see its performance.&lt;/p&gt;

&lt;p&gt;sfDoctrine2Plugin already uses this logger for its debug toolbar.&lt;/p&gt;</comment>
                    <comment id="12614" author="hobodave" created="Sat, 10 Apr 2010 03:14:26 +0000"  >&lt;p&gt;Such timings are &lt;em&gt;very&lt;/em&gt; useful. The accuracy isn&apos;t really the point. If you have N queries executing on a slow request, you have to check N queries to find the problem. With a simple &quot;inaccurate&quot; time measurement you&apos;d be able to quickly identify the problem query(ies) and take further action.&lt;/p&gt;</comment>
                    <comment id="12952" author="romanb" created="Fri, 14 May 2010 08:47:06 +0000"  >&lt;p&gt;I think timings can be added.&lt;/p&gt;</comment>
                    <comment id="13303" author="beberlei" created="Sun, 13 Jun 2010 14:27:24 +0000"  >&lt;p&gt;Schedule for BETA 3&lt;/p&gt;</comment>
                    <comment id="13378" author="beberlei" created="Sun, 20 Jun 2010 10:52:27 +0000"  >&lt;p&gt;Implemented this change, the interface of the SQL Logger changed to:&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;function logSQL($sql, array $params = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, $executionMS = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Additionally the contract of loggers changed, they are now invoked AFTER a query is executed therefore queries that cause failures do not appear on the logs.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DBAL-2] Schema Comparator - Changes of only Identifier Strategy are not detected</title>
                <link>http://www.doctrine-project.org/jira/browse/DBAL-2</link>
                <project id="10040" key="DBAL">Doctrine DBAL</project>
                        <description>&lt;p&gt;When changing metdata from a NONE to an IDENTITY generator only for example on MySQL, SchemaComparator does not pick up the changes.&lt;/p&gt;</description>
                <environment></environment>
            <key id="11367">DBAL-2</key>
            <summary>Schema Comparator - Changes of only Identifier Strategy are not detected</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="beberlei">Benjamin Eberlei</reporter>
                        <labels>
                    </labels>
                <created>Sat, 15 May 2010 06:51:34 +0000</created>
                <updated>Sun, 13 Jun 2010 14:24:48 +0000</updated>
                    <resolved>Sun, 13 Jun 2010 14:24:48 +0000</resolved>
                                            <fixVersion>2.0.0-BETA3</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="13117" author="beberlei" created="Sun, 6 Jun 2010 08:23:40 +0000"  >&lt;p&gt;This should be fixed now&lt;/p&gt;</comment>
                    <comment id="13268" author="beberlei" created="Thu, 10 Jun 2010 17:56:15 +0000"  >&lt;p&gt;Introduced a regression&lt;/p&gt;</comment>
                    <comment id="13302" author="beberlei" created="Sun, 13 Jun 2010 14:24:48 +0000"  >&lt;p&gt;Fixed in current master, scheduled for Beta 3&lt;/p&gt;</comment>
                </comments>
                <issuelinks>
                        <issuelinktype id="10000">
                <name>Duplicate</name>
                                                <inwardlinks description="is duplicated by">
                            <issuelink>
            <issuekey id="11475">DDC-632</issuekey>
        </issuelink>
                    </inwardlinks>
                            </issuelinktype>
                    </issuelinks>
                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>
</channel>
</rss>