<!--
RSS generated by JIRA (5.2.7#850-sha1:b2af0c8dc8537b36121c6a579fabbdf79fc919e5) at Sat May 25 08:39:33 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+DC+AND+fixVersion+%3D+%221.2.0-BETA1%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+DC+AND+fixVersion+%3D+%221.2.0-BETA1%22</link>
        <description>An XML representation of a search request</description>
                <language>en-us</language>
                        <issue start="0" end="42" total="42"/>
                <build-info>
            <version>5.2.7</version>
            <build-number>850</build-number>
            <build-date>21-02-2013</build-date>
        </build-info>
<item>
            <title>[DC-175] New hardDelete() on Soft Delete Template creates blank records</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-175</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;When using the new hardDelete() in the SoftDelete template, the postDelete() listener is saving a blank record because it calls -&amp;gt;save() on the record, even if the record was hard deleted.&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;public&lt;/span&gt; function postDelete(Doctrine_Event $event)
    {
      $event-&amp;gt;getInvoker()-&amp;gt;save();
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt; 

&lt;p&gt;should be&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;public&lt;/span&gt; function postDelete(Doctrine_Event $event)
    {
      &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;_options[&apos;hardDelete&apos;]) {
        $event-&amp;gt;getInvoker()-&amp;gt;save();
      }
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt; </description>
                <environment></environment>
            <key id="10320">DC-175</key>
            <summary>New hardDelete() on Soft Delete Template creates blank records</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="weaverryan">Ryan Weaver</reporter>
                        <labels>
                    </labels>
                <created>Tue, 3 Nov 2009 16:15:11 +0000</created>
                <updated>Tue, 3 Nov 2009 17:00:18 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 17:00:18 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Behaviors</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                    <attachment id="10135" name="patch" size="442" author="weaverryan" created="Tue, 3 Nov 2009 16:15:11 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-173] Error generating models from db when a table name is a reserved word in PostgreSQL</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-173</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I&apos;m getting an exception when generating models from db because I have a table named &apos;role&apos; which is a reserved word, as you can see at &lt;a href=&quot;http://www.postgresql.org/docs/8.1/static/sql-keywords-appendix.html&quot; class=&quot;external-link&quot;&gt;http://www.postgresql.org/docs/8.1/static/sql-keywords-appendix.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have a table named &apos;role_permission&apos; which has a foreign key pointing to table &apos;role&apos;. When Doctrine tries to find the related tables using &apos;Doctrine_Import_Pgsql::listTableRelations()&apos;, the executed SQL returns:&lt;br/&gt;
FOREIGN KEY (role_id) REFERENCES &quot;role&quot;(role_id) ON DELETE CASCADE&lt;br/&gt;
with the table name role quoted as it is a reserved word.&lt;/p&gt;

&lt;p&gt;My workaround is to change Doctrine_Import_Pgsql line 281 from:&lt;/p&gt;

&lt;p&gt;$relations[] = array(&apos;table&apos;   =&amp;gt; $values&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;,&lt;/p&gt;

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

&lt;p&gt;$relations[] = array(&apos;table&apos;   =&amp;gt; (strpos($values&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;,&apos;&quot;&apos;) === 0)?substr($values&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;,1,-1):$values&lt;span class=&quot;error&quot;&gt;&amp;#91;2&amp;#93;&lt;/span&gt;,&lt;/p&gt;</description>
                <environment>PostgreSQL 8.1, PHP 5.2</environment>
            <key id="10315">DC-173</key>
            <summary>Error generating models from db when a table name is a reserved word in PostgreSQL</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="3">Duplicate</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="ajgarlag">Antonio J. Garcia Lagar</reporter>
                        <labels>
                    </labels>
                <created>Tue, 3 Nov 2009 07:52:54 +0000</created>
                <updated>Fri, 27 Nov 2009 18:02:33 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 17:30:44 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10460" author="jwage" created="Tue, 3 Nov 2009 17:30:44 +0000"  >&lt;p&gt;This was already fixed last night.&lt;/p&gt;</comment>
                    <comment id="10887" author="localheinz" created="Fri, 27 Nov 2009 18:02:33 +0000"  >&lt;p&gt;I have a similar issue when attempting to generate SQL from models previously generated from Yaml schema files.&lt;/p&gt;

&lt;p&gt;When defining a schema as&lt;/p&gt;

&lt;p&gt;Resource:&lt;br/&gt;
  columns:&lt;br/&gt;
    id:&lt;br/&gt;
      type: integer(4)&lt;br/&gt;
      autoincrement: true&lt;br/&gt;
      primary: true&lt;/p&gt;

&lt;p&gt;an exception is thrown with the message &apos;no valid table name specified&apos;. When adding a tablename to the schema &lt;/p&gt;

&lt;p&gt;Resource:&lt;br/&gt;
  tableName: resourcexx&lt;/p&gt;

&lt;p&gt;the problem persists. &lt;/p&gt;

&lt;p&gt;I believe I did not have this problem a couple of updates from the SVN ago, will track it down and maybe open a ticket. I am using Doctrine 1.2.0-ALPHA3.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-172] change 6611 wrong</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-172</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;see line 95 in branches/1.2/lib/Doctrine/Connection/UnitOfWork.php&lt;/p&gt;

&lt;p&gt; if ($ids) {&lt;br/&gt;
   $record-&amp;gt;unlinkInDb($alias, array());&lt;br/&gt;
} else if ($ids) {&lt;br/&gt;
   $record-&amp;gt;unlinkInDb($alias, array_keys($ids));&lt;br/&gt;
}&lt;/p&gt;</description>
                <environment>i think the change has a logic error</environment>
            <key id="10314">DC-172</key>
            <summary>change 6611 wrong</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="gimler">Gordon Franke</reporter>
                        <labels>
                    </labels>
                <created>Mon, 2 Nov 2009 20:41:09 +0000</created>
                <updated>Mon, 2 Nov 2009 20:50:56 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 20:50:56 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10410" author="jwage" created="Mon, 2 Nov 2009 20:50:56 +0000"  >&lt;p&gt;Thanks for catching that.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-171] make it possible to force deletion when using softdelete</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-171</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;it would be nice to be able to force deleting when using softdelete. right now it seems like there is no way to still be able to do a real DELETE.&lt;br/&gt;
&lt;a href=&quot;http://www.doctrine-project.org/documentation/manual/1_1/en/behaviors:core-behaviors:softdelete&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/documentation/manual/1_1/en/behaviors:core-behaviors:softdelete&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;something like $record-&amp;gt;delete(true);&lt;/p&gt;

&lt;p&gt;take for example some undo feature. there might be a point where i want to purge the possibility to do an undo (like at the end of the session).&lt;/p&gt;</description>
                <environment></environment>
            <key id="10309">DC-171</key>
            <summary>make it possible to force deletion when using softdelete</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="lsmith">Lukas Kahwe</reporter>
                        <labels>
                    </labels>
                <created>Mon, 2 Nov 2009 12:38:20 +0000</created>
                <updated>Tue, 3 Nov 2009 03:52:06 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 03:52:06 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-169] replace() method does not affect Timestampable fields</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-169</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I have a Timestampable behavior on a table. If I create or edit an object of this table using the -&amp;gt;replace() method instead of -&amp;gt;save(), the Timestampable fields (created_at and updated_at by default) are not changed.&lt;/p&gt;</description>
                <environment>LAMP, symfony 1.3.0-BETA1</environment>
            <key id="10302">DC-169</key>
            <summary>replace() method does not affect Timestampable fields</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="gregoire_m">gregoire_m</reporter>
                        <labels>
                    </labels>
                <created>Mon, 2 Nov 2009 10:23:18 +0000</created>
                <updated>Tue, 3 Nov 2009 03:32:42 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 03:32:42 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Timestampable</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-167] Adding a foreign key to the uniqueBy option of a Sluggable doesn&apos;t work</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-167</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I&apos;m trying to set the uniqueBy option of a Sluggable to a foreign key (in an articles table, I want the slug to be unique by category). This fails because the query checking if the slug exists doesn&apos;t return any records, as it doesn&apos;t use the correct where paramter.&lt;br/&gt;
The problem is in Doctrine/Template/Listener/Sluggable.php:172, adding the whereParam expects a value, but a class (containing the relationship object) is given.&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;        foreach ($this-&amp;gt;_options[&apos;uniqueBy&apos;] as $uniqueBy) {
            if (is_null($record-&amp;gt;$uniqueBy)) {
                $whereString .= &apos; AND r.&apos;.$uniqueBy.&apos; IS NULL&apos;;
            } else {
                $whereString .= &apos; AND r.&apos;.$uniqueBy.&apos; = ?&apos;;
                $whereParams[] =  $record-&amp;gt;$uniqueBy;
            }
        }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>A freshly installed symfony 1.3-BETA1, but the doctrine svn still has it</environment>
            <key id="10296">DC-167</key>
            <summary>Adding a foreign key to the uniqueBy option of a Sluggable doesn&apos;t work</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="gunther.konig">Gunther Konig</reporter>
                        <labels>
                    </labels>
                <created>Sun, 1 Nov 2009 19:42:52 +0000</created>
                <updated>Tue, 3 Nov 2009 02:22:42 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 02:22:42 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Behaviors</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-165] outdated symfony Yaml parser causes troubles</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-165</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;all doctrine versions use an imported and modified version of sfYaml.&lt;br/&gt;
Either that needs to be changed to an external, or bugfixes need to be ported.&lt;br/&gt;
see this ticket from symfony trac:&lt;br/&gt;
&lt;a href=&quot;http://trac.symfony-project.org/ticket/7496&quot; class=&quot;external-link&quot;&gt;http://trac.symfony-project.org/ticket/7496&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;

&lt;p&gt;I wanted to use some yaml in a fixture to populate data for the &quot;array&quot;-Fieldtype.&lt;/p&gt;

&lt;p&gt;In the fixture I used:&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;items:
  -
    name:           temp_zone_1
    fieldLabel:     Temp. Zone 1 [&#176;C]
    value:          997
    minValue:       0
    maxValue:       3000
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;the resulting serialized array in the table array looked like:&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;s:5:&lt;span class=&quot;code-quote&quot;&gt;&quot;items&quot;&lt;/span&gt;;a:9:{i:0;a:5:{s:4:&lt;span class=&quot;code-quote&quot;&gt;&quot;name&quot;&lt;/span&gt;;s:11:&lt;span class=&quot;code-quote&quot;&gt;&quot;temp_zone_1&quot;&lt;/span&gt;;s:10:&lt;span class=&quot;code-quote&quot;&gt;&quot;fieldLabel&quot;&lt;/span&gt;;s:18:&lt;span class=&quot;code-quote&quot;&gt;&quot;Temp. Zone 1 [&#176;C]&quot;&lt;/span&gt;;s:5:&lt;span class=&quot;code-quote&quot;&gt;&quot;value&quot;&lt;/span&gt;;s:3:&lt;span class=&quot;code-quote&quot;&gt;&quot;997&quot;&lt;/span&gt;;s:8:&lt;span class=&quot;code-quote&quot;&gt;&quot;minValue&quot;&lt;/span&gt;;i:0;s:8:&lt;span class=&quot;code-quote&quot;&gt;&quot;maxValue&quot;&lt;/span&gt;;s:4:&lt;span class=&quot;code-quote&quot;&gt;&quot;3000&quot;&lt;/span&gt;;}...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;There you can easily see, that &quot;value&quot; is now a string, &quot;minValue&quot; an integer (why?) and maxValue another string. This went awfully wrong somewhere.&lt;/p&gt;

&lt;p&gt;= Workaround and/or solution =&lt;br/&gt;
I took the current parser from `lib/yaml/sfYamlParser.php` and copied it into the existing Parser in `lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Parser/YamlSf/Parser.php`. That fixed the problem.&lt;/p&gt;

&lt;p&gt;== Additional Information ==&lt;/p&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; used Version in Symfony&lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;10832 2008-08-13&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; used Version in sfDoctrinePlugin&lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;8869 2008-05-09&lt;/th&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;


&lt;p&gt;HTH,&lt;br/&gt;
Michael&lt;/p&gt;

&lt;/blockquote&gt;</description>
                <environment></environment>
            <key id="10287">DC-165</key>
            <summary>outdated symfony Yaml parser causes troubles</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="fabianlange">Fabian Lange</reporter>
                        <labels>
                    </labels>
                <created>Sat, 31 Oct 2009 18:45:26 +0000</created>
                <updated>Tue, 3 Nov 2009 01:10:35 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 01:10:35 +0000</resolved>
                            <version>1.0.12</version>
                <version>1.1.4</version>
                <version>1.2.0-ALPHA1</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>File Parser</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-164] Validator throws out a &apos;boolean&apos; with null value.</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-164</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I didn&apos;t set a value into a boolean column, reckoning that null would count as false. &lt;/p&gt;

&lt;p&gt;But saving the record fails validation, and this appears to be because Doctrine_Validator::isValidType contains&lt;/p&gt;

&lt;p&gt; case &apos;boolean&apos;:&lt;br/&gt;
	                 return is_bool($var) || (is_numeric($var) &amp;amp;&amp;amp; ($var == 0 || $var == 1));&lt;/p&gt;

&lt;p&gt;So it will not accept a null value, and furthermore reports the failure not as a data error but (confusingly) as a type error.&lt;/p&gt;

&lt;p&gt;I checked the documentation to see if it said that I could not use a null value (I would regard this as an unnecessary restriction, but at least if it were documented, that would be consistent). &lt;/p&gt;

&lt;p&gt;On the contrary, the Doctrine ORM book, Chapter 7, in the &apos;Boolean&apos; section, says &quot;Ternary logic is possible by using null as the third possible value that may be assigned to fields of this type.&quot;!&lt;/p&gt;

&lt;p&gt;Add this to the fact that I haven&apos;t found any documentation about using Doctrine_Validator_Exception - not even API documentation, and I am not impressed with my first experiences with Doctrine. &lt;/p&gt;
</description>
                <environment>Fedora 10, symfony 1.2, php 5.2.9, postgresql 8.4.1, can&amp;#39;t tell what version of Doctrine I have.</environment>
            <key id="10285">DC-164</key>
            <summary>Validator throws out a &apos;boolean&apos; with null value.</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="colin fine">Colin Fine</reporter>
                        <labels>
                    </labels>
                <created>Sat, 31 Oct 2009 11:35:57 +0000</created>
                <updated>Tue, 3 Nov 2009 04:36:01 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 04:36:01 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10371" author="romanb" created="Sat, 31 Oct 2009 11:39:18 +0000"  >&lt;p&gt;This is the wrong project. Please submit these bugs to the Doctrine1 project. I already moved the 2 tickets you created. Just create any more in the Doctrine 1 project.&lt;/p&gt;</comment>
                    <comment id="10441" author="jwage" created="Tue, 3 Nov 2009 04:36:01 +0000"  >&lt;p&gt;This is already fixed in Doctrine 1.2 as well.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-163] Validator throws out a data type which the schema processing has accepted</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-163</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Doctrine accepts &apos;char&apos; in the (yml) schema, and creates the database and model.&lt;br/&gt;
Then an attempt to save a record raises a Doctrine_Validator_Exception, which turns out to contain no validation message, but just the cryptic&lt;br/&gt;
&lt;span class=&quot;error&quot;&gt;&amp;#91;_errors:protected&amp;#93;&lt;/span&gt; =&amp;gt; Array&lt;br/&gt;
        (&lt;br/&gt;
            &lt;span class=&quot;error&quot;&gt;&amp;#91;nickname&amp;#93;&lt;/span&gt; =&amp;gt; Array&lt;br/&gt;
                (&lt;br/&gt;
                    &lt;span class=&quot;error&quot;&gt;&amp;#91;0&amp;#93;&lt;/span&gt; =&amp;gt; type&lt;br/&gt;
                )&lt;/p&gt;

&lt;p&gt;        )&lt;/p&gt;

&lt;p&gt;    &lt;span class=&quot;error&quot;&gt;&amp;#91;_validators:protected&amp;#93;&lt;/span&gt; =&amp;gt; Array&lt;br/&gt;
        (&lt;br/&gt;
        ) &lt;/p&gt;

&lt;p&gt;Only by looking at the source did I discover that what this means is that the validator does not accept the column type &apos;char&apos; - because it&apos;s not hard-coded in Doctrine_Validator::isValidType. &lt;/p&gt;

&lt;p&gt;I&apos;ve vacillated over whether to classify this as &apos;Major&apos; or Minor&apos;: once I&apos;ve realised what&apos;s going on, it&apos;s easy to work round; but it is a show-stopper for a Doctrine novice.&lt;/p&gt;</description>
                <environment>Fedora 10, symfony 1.2, postgresql 8.4.1.  I have been unable to find any information as to which version of Doctrine I have: it came with symfony 1.2</environment>
            <key id="10284">DC-163</key>
            <summary>Validator throws out a data type which the schema processing has accepted</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="guilhermeblanco">Guilherme Blanco</assignee>
                                <reporter username="colin fine">Colin Fine</reporter>
                        <labels>
                    </labels>
                <created>Sat, 31 Oct 2009 11:26:46 +0000</created>
                <updated>Tue, 3 Nov 2009 04:35:14 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 04:35:14 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10440" author="jwage" created="Tue, 3 Nov 2009 04:35:14 +0000"  >&lt;p&gt;This is already fixed in the Doctrine 1.2 branch which comes with symfony 1.3&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-162] Doctrine_Migration_Builder fail to buildChangeColumn()</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-162</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Doctrine_Migration_Builder-&amp;gt;buildChangeColumn contains a simple error.&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;return&lt;/span&gt; &lt;span class=&quot;code-quote&quot;&gt;&quot;        \$&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;changeColumn(&apos;&quot;&lt;/span&gt; . $tableName . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos;, &apos;&quot;&lt;/span&gt; . $columnName. &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos;, &apos;&quot;&lt;/span&gt; . $length . &lt;span class=&quot;code-quote&quot;&gt;&quot;&apos;, &apos;&quot;&lt;/span&gt; . $type . &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;-&amp;gt;varExport($column) . &lt;span class=&quot;code-quote&quot;&gt;&quot;);&quot;&lt;/span&gt;;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;When I look Doctrine_Migration_Base-&amp;gt;changeColumn declaration, i see&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;public&lt;/span&gt; function changeColumn($tableName, $columnName, $type = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, $length = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, array $options = array())
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The $length and $type parameters are inverted. It makes all column changes fail.&lt;/p&gt;

&lt;p&gt;Thank you for your work, Doctrine is great !&lt;/p&gt;</description>
                <environment>Symfony 1.3 daily svn</environment>
            <key id="10281">DC-162</key>
            <summary>Doctrine_Migration_Builder fail to buildChangeColumn()</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="jwage">Jonathan H. Wage</assignee>
                                <reporter username="ornicar">thibault duplessis</reporter>
                        <labels>
                    </labels>
                <created>Fri, 30 Oct 2009 22:26:56 +0000</created>
                <updated>Mon, 2 Nov 2009 20:14:49 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 20:14:49 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Migrations</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10408" author="jwage" created="Mon, 2 Nov 2009 20:14:49 +0000"  >&lt;p&gt;This has already been fixed in another issue/commit.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-159] No use of Offset in the Limit / Offset Documentation</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-159</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;There is no mentioning how to use the offset funktion in the &quot;LIMIT and OFFSET clauses&quot; chapter in the Doctrine 1.1 Documentation.&lt;/p&gt;

&lt;p&gt;Some Example should feature:&lt;/p&gt;

&lt;p&gt;-&amp;gt;limit(12) &lt;br/&gt;
-&amp;gt;offset(3)&lt;/p&gt;

&lt;p&gt;to show how to use it.&lt;/p&gt;</description>
                <environment>any</environment>
            <key id="10274">DC-159</key>
            <summary>No use of Offset in the Limit / Offset Documentation</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="nicam">Pascal Helfenstein</reporter>
                        <labels>
                    </labels>
                <created>Fri, 30 Oct 2009 09:26:09 +0000</created>
                <updated>Fri, 30 Oct 2009 16:33:53 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 16:25:27 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Documentation</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10359" author="jwage" created="Fri, 30 Oct 2009 16:25:27 +0000"  >&lt;p&gt;Enhanced this for the 1.2 documentation since 1.1 end of life is approaching.&lt;/p&gt;</comment>
                    <comment id="10360" author="nicam" created="Fri, 30 Oct 2009 16:33:53 +0000"  >&lt;p&gt;thanks &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>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-158] Postgresql Import does not recognize all parts of a composite primary key as primary keys</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-158</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;If a PostgreSQL table has a composite primary key, Doctrine import (&quot;generate-models-db&quot;) will only mark the first column of the composite key as primary. This is due to a bug in Doctrine_Import_Pgsql.&lt;/p&gt;

&lt;p&gt;I have attached a short patch against the current 1.1 branch (revision 6580). The version 1.2 seems to have the same problem.&lt;br/&gt;
I have tested the patch with PostgreSQL 8.3.8.&lt;/p&gt;</description>
                <environment>Doctrine 1.1 from current SVN with PostgreSQL 8.3.8</environment>
            <key id="10264">DC-158</key>
            <summary>Postgresql Import does not recognize all parts of a composite primary key as primary keys</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="mbreit">Moritz Breit</reporter>
                        <labels>
                    </labels>
                <created>Thu, 29 Oct 2009 13:17:47 +0000</created>
                <updated>Tue, 3 Nov 2009 00:42:32 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 00:42:33 +0000</resolved>
                            <version>1.0.13</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Import/Export</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10384" author="mbreit" created="Mon, 2 Nov 2009 08:58:10 +0000"  >&lt;p&gt;Small test case for this bug:&lt;/p&gt;

&lt;p&gt;Database schema:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;schema.sql&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;CREATE TABLE testa (
  id bigint NOT NULL,
  CONSTRAINT testa_pkey PRIMARY KEY (id)
);

CREATE TABLE testb (
  id bigint NOT NULL,
  CONSTRAINT testb_pkey PRIMARY KEY (id)
);

CREATE TABLE testa_testb (
  testa bigint NOT NULL,
  testb bigint NOT NULL,
  CONSTRAINT testa_testb_pkey PRIMARY KEY (testa, testb),
  CONSTRAINT fktesta FOREIGN KEY (testa) REFERENCES testa (id),
  CONSTRAINT fktestb FOREIGN KEY (testb) REFERENCES testb (id)
);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This is a typical many-to-many relationship with a mapping table.&lt;br/&gt;
Note that testa_testb has a composite primary key with two columns, testa and testb.&lt;/p&gt;

&lt;p&gt;Generated code before applying the patch (generateModelsFromDb):&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;BaseTestaTestb.php&lt;/b&gt;&lt;/div&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;abstract&lt;/span&gt; class BaseTestaTestb &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt; Doctrine_Record
{
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function setTableDefinition()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;setTableName(&apos;testa_testb&apos;);
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;hasColumn(&apos;testa&apos;, &apos;integer&apos;, 8, array(
             &apos;type&apos; =&amp;gt; &apos;integer&apos;,
             &apos;length&apos; =&amp;gt; 8,
             &apos;unsigned&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;,
             &apos;primary&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;,
             ));
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;hasColumn(&apos;testb&apos;, &apos;integer&apos;, 8, array(
             &apos;type&apos; =&amp;gt; &apos;integer&apos;,
             &apos;length&apos; =&amp;gt; 8,
             &apos;unsigned&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;,
             &apos;notnull&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;,
             &apos;primary&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;, &lt;span class=&quot;code-comment&quot;&gt;// This should be &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;
&lt;/span&gt;             ));
    }
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Generated code after applying the patch:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;BaseTestaTestb.php&lt;/b&gt;&lt;/div&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;abstract&lt;/span&gt; class BaseTestaTestb &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt; Doctrine_Record
{
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function setTableDefinition()
    {
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;setTableName(&apos;testa_testb&apos;);
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;hasColumn(&apos;testa&apos;, &apos;integer&apos;, 8, array(
             &apos;type&apos; =&amp;gt; &apos;integer&apos;,
             &apos;length&apos; =&amp;gt; 8,
             &apos;unsigned&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;,
             &apos;primary&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;,
             ));
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;hasColumn(&apos;testb&apos;, &apos;integer&apos;, 8, array(
             &apos;type&apos; =&amp;gt; &apos;integer&apos;,
             &apos;length&apos; =&amp;gt; 8,
             &apos;unsigned&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;,
             &apos;primary&apos; =&amp;gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;,
             ));
    }
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10116" name="pgsql_import.patch" size="874" author="mbreit" created="Thu, 29 Oct 2009 13:17:47 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-155] Missing part of the description for code examples in &quot;Working with Models&quot; chapter</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-155</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;in chapter &quot;Working with models&quot;, explanations for 2 code examples are missing a part : &quot;, excluding the group named Group 2&quot;&lt;/p&gt;

&lt;p&gt;patch attached.&lt;/p&gt;</description>
                <environment>N/A</environment>
            <key id="10260">DC-155</key>
            <summary>Missing part of the description for code examples in &quot;Working with Models&quot; chapter</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="domcomte">Dominique Comte</reporter>
                        <labels>
                    </labels>
                <created>Thu, 29 Oct 2009 00:03:33 +0000</created>
                <updated>Tue, 3 Nov 2009 20:47:32 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 20:47:32 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Documentation</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10114" name="en_wwm.patch" size="855" author="domcomte" created="Thu, 29 Oct 2009 00:03:33 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-154] Documentation fixes in several chapters</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-154</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;several fixes attached as patch :&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;missing &quot;have&quot; in note in introduction chapter&lt;/li&gt;
	&lt;li&gt;&quot;DQL&quot; instead of &quot;SQL&quot; in explanation for getSql in DQL chapter&lt;/li&gt;
	&lt;li&gt;explanations uses property &quot;password&quot;, whereas the example code uses &quot;description&quot; in chapter Working with models&lt;/li&gt;
	&lt;li&gt;extra line breaks in Synchronize with Array in chapter Working with models&lt;/li&gt;
	&lt;li&gt;word &quot;their&quot; was used instead of &quot;there&quot; in several sentences&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment>N/A</environment>
            <key id="10259">DC-154</key>
            <summary>Documentation fixes in several chapters</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="domcomte">Dominique Comte</reporter>
                        <labels>
                    </labels>
                <created>Wed, 28 Oct 2009 23:51:18 +0000</created>
                <updated>Tue, 3 Nov 2009 20:49:10 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 20:49:10 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Documentation</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10113" name="en_fixes.patch" size="4836" author="domcomte" created="Wed, 28 Oct 2009 23:51:18 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-153] Some pieces of Doctrine&apos;s internal code can&apos;t work properly without a default connection</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-153</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;For details see &lt;a href=&quot;http://groups.google.com/group/doctrine-dev/browse_thread/thread/2fdde3fc5007e2b3&quot; class=&quot;external-link&quot;&gt;thread in doctrine-dev group&lt;/a&gt;.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10258">DC-153</key>
            <summary>Some pieces of Doctrine&apos;s internal code can&apos;t work properly without a default connection</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="esycat">Eugene Janusov</reporter>
                        <labels>
                    </labels>
                <created>Wed, 28 Oct 2009 22:07:08 +0000</created>
                <updated>Tue, 3 Nov 2009 02:19:25 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 02:19:25 +0000</resolved>
                            <version>1.1.4</version>
                <version>1.2.0-ALPHA1</version>
                <version>1.2.0-ALPHA2</version>
                <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Connection</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10335" author="esycat" created="Wed, 28 Oct 2009 22:07:53 +0000"  >&lt;p&gt;&lt;del&gt;Proposed patch, v1&lt;/del&gt;&lt;br/&gt;
&lt;del&gt;Proposed patch, v2&lt;/del&gt;&lt;br/&gt;
&lt;del&gt;Proposed patch, v2.2 &#8212; without white-spaces&lt;/del&gt;&lt;br/&gt;
Proposed patch, v2.3&lt;/p&gt;</comment>
                    <comment id="10433" author="jwage" created="Tue, 3 Nov 2009 00:31:40 +0000"  >&lt;p&gt;I think it is a requirement that you always have a default connection. Why don&apos;t you?&lt;/p&gt;</comment>
                    <comment id="10434" author="esycat" created="Tue, 3 Nov 2009 01:01:12 +0000"  >&lt;p&gt;Why it should be a requirement?&lt;/p&gt;

&lt;p&gt;We use several connections to different databases and with different privileges, and we would like to enforce our developers to always specify a particular connection.&lt;/p&gt;

&lt;p&gt;In anyway, it&apos;s obviously a bug, because currently Doctrine can use wrong connection.&lt;/p&gt;</comment>
                    <comment id="10437" author="esycat" created="Tue, 3 Nov 2009 02:10:19 +0000"  >&lt;p&gt;I&apos;ve missed one line change in v2.2.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10130" name="DC-153.v2.3.patch" size="5744" author="esycat" created="Tue, 3 Nov 2009 02:10:32 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-152] isModified deep isn&apos;t working when only deep objects are modified</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-152</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Record::isModified(true) isn&apos;t working when only a subobject is modified (it returns false).&lt;br/&gt;
The attached patch corrects the problem.&lt;/p&gt;</description>
                <environment>linux, apache, php 5.3</environment>
            <key id="10256">DC-152</key>
            <summary>isModified deep isn&apos;t working when only deep objects are modified</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="rodlima">Rodolfo Schulz de Lima</reporter>
                        <labels>
                    </labels>
                <created>Wed, 28 Oct 2009 17:06:07 +0000</created>
                <updated>Mon, 2 Nov 2009 23:45:13 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 23:45:13 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.1.5</fixVersion>
                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Record</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                    <attachment id="10109" name="doctrine_ismodified_deep.diff" size="544" author="rodlima" created="Wed, 28 Oct 2009 17:06:07 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-151] Doctrine_Collection::loadRelated() issues with empty collection and handling with no name parameter</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-151</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;When no name is passed, the list variable isnt passed to the where() method call. Also in all cases an empty $list variable isnt handled properly.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10255">DC-151</key>
            <summary>Doctrine_Collection::loadRelated() issues with empty collection and handling with no name parameter</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="lsmith">Lukas Kahwe</reporter>
                        <labels>
                    </labels>
                <created>Wed, 28 Oct 2009 16:46:31 +0000</created>
                <updated>Fri, 30 Oct 2009 17:04:20 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 17:04:20 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                    <attachment id="10108" name="Collection.php.patch" size="1227" author="lsmith" created="Wed, 28 Oct 2009 16:46:31 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-148] When running cli tasks and there&apos;s an exception/error - it&apos;s helpful to have detailed information displayed</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-148</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;We don&apos;t always get enough information when an exception happens to track down where the issue is.&lt;br/&gt;
It would be helpful if the tablename and/or the SQL statement was also displayed to help track down problems.&lt;/p&gt;

&lt;p&gt;When trying to load a fixture file I was receiving the following:&lt;br/&gt;
  &lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine_Connection_Mysql_Exception&amp;#93;&lt;/span&gt;                                                                                &lt;br/&gt;
  SQLSTATE&lt;span class=&quot;error&quot;&gt;&amp;#91;23000&amp;#93;&lt;/span&gt;: Integrity constraint violation: 1048 Column &apos;created_at&apos; cannot be null  &lt;/p&gt;

&lt;p&gt;As you can see - it doesn&apos;t help much as it doesn&apos;t display the table/class that&apos;s the created_at column is on.&lt;/p&gt;

&lt;p&gt;As quick fix - I modified the rethrowException method in Doctrine_Connection to include some information from the invoker (not a great fix - I should really dig deeper and see if there&apos;s a __toString() method on classes that can be passed as the invoker):&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;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unable to find source-code formatter for language: php.&lt;/span&gt; Available languages are: actionscript, html, java, javascript, none, sql, xhtml, xml&lt;/div&gt;&lt;pre&gt;
    /**
     * rethrowException
     *
     * @&lt;span class=&quot;code-keyword&quot;&gt;throws&lt;/span&gt; Doctrine_Connection_Exception
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function rethrowException(Exception $e, $invoker)
    {
        $event = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Doctrine_Event($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;, Doctrine_Event::CONN_ERROR);

        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;getListener()-&amp;gt;preError($event);
        
        $name = &apos;Doctrine_Connection_&apos; . $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;driverName . &apos;_Exception&apos;;
        
        $exc  = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; $name($e-&amp;gt;getMessage() . &lt;span class=&quot;code-quote&quot;&gt;&quot;\n&quot;&lt;/span&gt; . $invoker-&amp;gt;getQuery(), (&lt;span class=&quot;code-object&quot;&gt;int&lt;/span&gt;) $e-&amp;gt;getCode());
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ( ! isset($e-&amp;gt;errorInfo) || ! is_array($e-&amp;gt;errorInfo)) {
            $e-&amp;gt;errorInfo = array(&lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;);
        }
        $exc-&amp;gt;processErrorInfo($e-&amp;gt;errorInfo);

         &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;getAttribute(Doctrine_Core::ATTR_THROW_EXCEPTIONS)) {
            &lt;span class=&quot;code-keyword&quot;&gt;throw&lt;/span&gt; $exc;
        }
        
        $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;getListener()-&amp;gt;postError($event);
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>Cli Tasks</environment>
            <key id="10246">DC-148</key>
            <summary>When running cli tasks and there&apos;s an exception/error - it&apos;s helpful to have detailed information displayed</summary>
                <type id="2" iconUrl="http://www.doctrine-project.org/jira/images/icons/issuetypes/newfeature.png">New Feature</type>
                                <priority id="4" iconUrl="http://www.doctrine-project.org/jira/images/icons/priorities/minor.png">Minor</priority>
                    <status id="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="dasher">D Ashwood</reporter>
                        <labels>
                    </labels>
                <created>Tue, 27 Oct 2009 17:39:54 +0000</created>
                <updated>Tue, 3 Nov 2009 02:18:28 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 02:18:28 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Cli</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-147] In doctrine 1.2 load_data fails with a bogus error when id holders are repeated</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-147</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Schema fragment:&lt;br/&gt;
Invoice:&lt;br/&gt;
  actAs:&lt;br/&gt;
    Timestampable: ~ &lt;br/&gt;
  tableName: invoice&lt;br/&gt;
  columns:&lt;br/&gt;
    id:&lt;br/&gt;
      type: integer(4)&lt;br/&gt;
      primary: true&lt;br/&gt;
      autoincrement: true&lt;br/&gt;
    billingDate:&lt;br/&gt;
      type: date&lt;br/&gt;
    dueDate:&lt;br/&gt;
      type: date&lt;br/&gt;
    hostingAccount_id:&lt;br/&gt;
      type: integer(4)&lt;br/&gt;
  relations:&lt;br/&gt;
    invoiceItems:&lt;br/&gt;
      class: InvoiceItem&lt;br/&gt;
      local: id&lt;br/&gt;
      type: many&lt;br/&gt;
      foreign: invoice_id&lt;br/&gt;
      foreignType: one&lt;/p&gt;

&lt;p&gt;#&lt;br/&gt;
InvoiceItem:&lt;br/&gt;
  actAs:&lt;br/&gt;
    Timestampable:  ~ &lt;br/&gt;
  tableName: invoiceItem&lt;br/&gt;
  columns:&lt;br/&gt;
    id:&lt;br/&gt;
      type: integer(4)&lt;br/&gt;
      primary: true&lt;br/&gt;
      autoincrement: true&lt;br/&gt;
    name:&lt;br/&gt;
      type: string(100)&lt;br/&gt;
    quantity:&lt;br/&gt;
      type: integer(4)&lt;br/&gt;
    cost:&lt;br/&gt;
      type: decimal(10)&lt;br/&gt;
      scale: 2&lt;br/&gt;
      notnull: false&lt;br/&gt;
      default: null&lt;br/&gt;
    invoice_id:&lt;br/&gt;
      type: integer(4)&lt;/p&gt;

&lt;p&gt;With the following fixture fragment:&lt;/p&gt;

&lt;p&gt;Invoice:&lt;br/&gt;
  testInvoice01:&lt;br/&gt;
    billingDate: &quot;2009-11-11&quot;&lt;br/&gt;
    dueDate: &quot;2009-11-16&quot;&lt;br/&gt;
    owningAccount: TestAcc01&lt;br/&gt;
    invoiceItems:&lt;br/&gt;
      invItem01:&lt;br/&gt;
        name: TestLine01&lt;br/&gt;
        quantity: 2&lt;br/&gt;
        cost: 12.99&lt;br/&gt;
      invItem02:&lt;br/&gt;
        name: TestLine02&lt;br/&gt;
        quantity: 1&lt;br/&gt;
        cost: -2.50&lt;/p&gt;

&lt;p&gt;  testInvoice02:&lt;br/&gt;
    billingDate: &quot;2009-11-11&quot;&lt;br/&gt;
    dueDate: &quot;2009-11-21&quot;&lt;br/&gt;
    owningAccount: TestAcc01&lt;br/&gt;
    invoiceItems:&lt;br/&gt;
      invItem01:&lt;br/&gt;
        name: TestLine03&lt;br/&gt;
        quantity: 2&lt;br/&gt;
        cost: 12.99&lt;br/&gt;
      invItem02:&lt;br/&gt;
        name: TestLine04&lt;br/&gt;
        quantity: 1&lt;br/&gt;
        cost: -2.50&lt;/p&gt;

&lt;p&gt;The reuse of the invItem01 &amp;amp; invItem02 tags - even as children of separate parents causes an error.&lt;br/&gt;
The reported error was very confusing:&lt;/p&gt;

&lt;p&gt;  &lt;span class=&quot;error&quot;&gt;&amp;#91;Doctrine_Connection_Mysql_Exception&amp;#93;&lt;/span&gt;                                                                                &lt;br/&gt;
  SQLSTATE&lt;span class=&quot;error&quot;&gt;&amp;#91;23000&amp;#93;&lt;/span&gt;: Integrity constraint violation: 1048 Column &apos;created_at&apos; cannot be null  &lt;/p&gt;

&lt;p&gt;Making the child tags unique fixed the issue.&lt;br/&gt;
The same fixture loaded without problems in Doctrine 1 (I think 1.0.18 but it&apos;s not listed in the released versions above).&lt;/p&gt;</description>
                <environment>Ubuntu, PHP 5.3, Symfony 1.3-beta, MySQL 5.1</environment>
            <key id="10244">DC-147</key>
            <summary>In doctrine 1.2 load_data fails with a bogus error when id holders are repeated</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="6">Invalid</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="dasher">D Ashwood</reporter>
                        <labels>
                    </labels>
                <created>Tue, 27 Oct 2009 17:12:45 +0000</created>
                <updated>Tue, 3 Nov 2009 02:02:44 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 02:02:44 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Data Fixtures</component>
                        <due></due>
                    <votes>1</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10372" author="jpb0104" created="Sat, 31 Oct 2009 16:35:42 +0000"  >&lt;p&gt;I&apos;ve experienced the same bug.  We moved from symfony 1.2 to 1.3 for beta testing.&lt;/p&gt;

&lt;p&gt;This example might help as well.&lt;br/&gt;
Team:&lt;br/&gt;
  NCAAF-BostonCollege:&lt;br/&gt;
    Sport: NCAAF&lt;br/&gt;
    name: Boston College Golden Eagles&lt;br/&gt;
    logo: boston_college.gif&lt;br/&gt;
    Conference: NCAAF-ACC&lt;br/&gt;
    Division: NCAAF-ACC-Atlantic&lt;br/&gt;
    TeamAlias:&lt;br/&gt;
      a1: &lt;/p&gt;
{ alias: BOSTON COLLEGE }
&lt;p&gt;      a2: &lt;/p&gt;
{ alias: BC }
&lt;p&gt;  NCAAF-FloridaState:&lt;br/&gt;
    Sport: NCAAF&lt;br/&gt;
    name: Florida State Seminoles&lt;br/&gt;
    logo: florida_state.gif&lt;br/&gt;
    Conference: NCAAF-ACC&lt;br/&gt;
    Division: NCAAF-ACC-Atlantic&lt;br/&gt;
    TeamAlias:&lt;br/&gt;
      a1: &lt;/p&gt;
{ alias: FLORIDA STATE }
&lt;p&gt;      a2: &lt;/p&gt;
{ alias: FSU }
&lt;p&gt;      a3: &lt;/p&gt;
{ alias: Florida St }

&lt;p&gt;In 1.0.x we were able to load all of these teams with x number of aliases.  In 1.2 when TeamAlias was actAs: Timestampable we got the result as mentioned in the bug description.  But when we removed the Timestampable the a1 aliases would load but none of the a2&apos;s or a3&apos;s...&lt;/p&gt;

&lt;p&gt;Hope that helps.  Thanks guys.&lt;/p&gt;</comment>
                    <comment id="10373" author="jpb0104" created="Sat, 31 Oct 2009 18:05:07 +0000"  >&lt;p&gt;When I reverted this changeset:&lt;br/&gt;
&lt;a href=&quot;http://trac.doctrine-project.org/changeset/6377/branches/1.2/lib/Doctrine/Data/Import.php&quot; class=&quot;external-link&quot;&gt;http://trac.doctrine-project.org/changeset/6377/branches/1.2/lib/Doctrine/Data/Import.php&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I was able to import all my related children.&lt;/p&gt;</comment>
                    <comment id="10377" author="jpb0104" created="Sun, 1 Nov 2009 00:32:43 +0000"  >&lt;p&gt;Attached a working test case to satisfy this bug.  Adapted from:&lt;br/&gt;
&lt;a href=&quot;http://trac.doctrine-project.org/browser/branches/1.2/tests/Ticket/DC23bTestCase.php&quot; class=&quot;external-link&quot;&gt;http://trac.doctrine-project.org/browser/branches/1.2/tests/Ticket/DC23bTestCase.php&lt;/a&gt;&lt;br/&gt;
So this test also tests some of the functionality of:&lt;br/&gt;
&lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DC-23&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/jira/browse/DC-23&lt;/a&gt;&lt;/p&gt;</comment>
                    <comment id="10436" author="jwage" created="Tue, 3 Nov 2009 02:02:44 +0000"  >&lt;p&gt;It is required that every key is unique now. I changed your test case and it passes now.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10124" name="DC147TestCase.php" size="6104" author="jpb0104" created="Sun, 1 Nov 2009 00:47:18 +0000" />
                    <attachment id="10123" name="DC147TestCase.php" size="6139" author="jpb0104" created="Sun, 1 Nov 2009 00:32:43 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-146] GenerateMigrationsDiff task does not use new order of changeColumn()</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-146</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;The GenerateMigrationsDiff task generates migrations which still use the old ordering of parameters of changeColumn().&lt;/p&gt;

&lt;p&gt;This is how it gets generated:&lt;/p&gt;

&lt;p&gt;$this-&amp;gt;changeColumn(&apos;my_table&apos;, &apos;my_column&apos;, &apos;25&apos;, &apos;timestamp&apos;, array(&lt;br/&gt;
             &apos;notnull&apos; =&amp;gt; &apos;1&apos;,&lt;br/&gt;
             ));&lt;/p&gt;

&lt;p&gt;Why it should be like this&lt;/p&gt;

&lt;p&gt;$this-&amp;gt;changeColumn(&apos;my_table&apos;, &apos;my_column&apos;, &apos;timestamp&apos;, &apos;25&apos;, array(&lt;br/&gt;
             &apos;notnull&apos; =&amp;gt; &apos;1&apos;,&lt;br/&gt;
             ));&lt;/p&gt;

&lt;p&gt;I also added a patch to fix this.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10243">DC-146</key>
            <summary>GenerateMigrationsDiff task does not use new order of changeColumn()</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="denderello">Dennis Benkert</reporter>
                        <labels>
                    </labels>
                <created>Tue, 27 Oct 2009 16:43:21 +0000</created>
                <updated>Fri, 30 Oct 2009 15:46:36 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 15:46:36 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Migrations</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                    <attachment id="10101" name="Builder.php.diff" size="640" author="denderello" created="Tue, 27 Oct 2009 16:43:21 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-144] Doctrine_Manager::getConnectionForComponent() should use Doctrine_Core::modelsAutoload()</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-144</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;&lt;tt&gt;Doctrine_Manager::getConnectionForComponent()&lt;/tt&gt; tries to pre-load given component using &lt;tt&gt;Doctrine_Core::autoload()&lt;/tt&gt;.&lt;br/&gt;
But it seems it should be &lt;tt&gt;modelsAutoload()&lt;/tt&gt; instead, because just &lt;tt&gt;autoload()&lt;/tt&gt; has nothing to do with model classes.&lt;/p&gt;

&lt;p&gt;See also &lt;a href=&quot;http://groups.google.com/group/doctrine-dev/browse_thread/thread/c2056a11b95edec5&quot; class=&quot;external-link&quot;&gt;corresponding topic&lt;/a&gt; in the doctrine-dev group.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10239">DC-144</key>
            <summary>Doctrine_Manager::getConnectionForComponent() should use Doctrine_Core::modelsAutoload()</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="esycat">Eugene Janusov</reporter>
                        <labels>
                    </labels>
                <created>Tue, 27 Oct 2009 02:27:27 +0000</created>
                <updated>Tue, 3 Nov 2009 01:54:09 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 01:54:09 +0000</resolved>
                            <version>1.1.4</version>
                <version>1.2.0-ALPHA1</version>
                <version>1.2.0-ALPHA2</version>
                <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10310" author="esycat" created="Tue, 27 Oct 2009 02:30:27 +0000"  >&lt;p&gt;Trivial patch.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10099" name="DC-144.patch" size="522" author="esycat" created="Tue, 27 Oct 2009 02:30:27 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-141] Invalid fix [6568] for DC-132</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-141</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Changeset &lt;span class=&quot;error&quot;&gt;&amp;#91;6568&amp;#93;&lt;/span&gt; looks incorrect, it always binds parameters as if they were positional &lt;img class=&quot;emoticon&quot; src=&quot;http://www.doctrine-project.org/jira/images/icons/emoticons/help_16.gif&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt; thus not by name :MYPARAM. Therefore for queries with named parameters a PDO exception will be thrown.&lt;/p&gt;

&lt;p&gt;Btw, I wanted to reopen Jira ticket &lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DC-132&quot; title=&quot;LOB mode not used for BLOB fields that are specified as a file handle&quot;&gt;&lt;del&gt;DC-132&lt;/del&gt;&lt;/a&gt; for this, but how do I do that?&lt;/p&gt;</description>
                <environment></environment>
            <key id="10236">DC-141</key>
            <summary>Invalid fix [6568] for DC-132</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="dennis.verspuij">Dennis Verspuij</reporter>
                        <labels>
                    </labels>
                <created>Mon, 26 Oct 2009 17:17:48 +0000</created>
                <updated>Fri, 30 Oct 2009 16:57:30 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 16:57:30 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Connection</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-137] Doctrine_Record_Generator does not autoload classes</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-137</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Using the versionable behavior creates dynamic classes and does not autoload the models that are defined.  Removing the false flag from  if ($this-&amp;gt;_options&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;generateFiles&amp;#39;&amp;#93;&lt;/span&gt; === false &amp;amp;&amp;amp; class_exists($this-&amp;gt;_options&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;className&amp;#39;&amp;#93;&lt;/span&gt;. false )) { line will fix the issue&lt;/p&gt;</description>
                <environment>CentOS 5.3, PHP 5.2.5</environment>
            <key id="10231">DC-137</key>
            <summary>Doctrine_Record_Generator does not autoload classes</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="bvoelsch">Brian Voelschow</reporter>
                        <labels>
                    </labels>
                <created>Fri, 23 Oct 2009 21:49:16 +0000</created>
                <updated>Wed, 2 Dec 2009 16:55:14 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 23:23:32 +0000</resolved>
                            <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Record</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10291" author="jwage" created="Sat, 24 Oct 2009 01:03:12 +0000"  >&lt;p&gt;Hmm. I remember once upon a time this was this way for a reason. Can you show some code for what you&apos;re doing so I can test this myself. Are you writing the generated files to disk somewhere?&lt;/p&gt;</comment>
                    <comment id="10328" author="bvoelsch" created="Wed, 28 Oct 2009 14:56:33 +0000"  >&lt;p&gt;Jonathan,&lt;br/&gt;
  I wrote a model class so we can access the version history and display it in an application.  The code that we are using is just trying to save versions when we have database delegation.  We enabled the delegation code in our X_Doctrine_Record class.  When debugging the calls we noticed that the correct model does not get loaded, but the generated model did.  We need the model that we created so that our delegation will work and save the version to the master DB.&lt;/p&gt;

&lt;p&gt;Steps to Reproduce:&lt;br/&gt;
1. Add versionable behavior to an existing model&lt;br/&gt;
2. Create a model for the version table&lt;br/&gt;
3. Try to save an object.  Error returned - If you do not allow saves on your slave connection&lt;/p&gt;</comment>
                    <comment id="10329" author="jwage" created="Wed, 28 Oct 2009 15:24:40 +0000"  >&lt;p&gt;I see. The part where you create your own model class is not how this is intended to work. It is intended that you let Doctrine generate the model class for you.&lt;/p&gt;</comment>
                    <comment id="10330" author="bvoelsch" created="Wed, 28 Oct 2009 15:37:24 +0000"  >&lt;p&gt;Understood that this is not how the code is intended to work, but without having a model there is no way to get the complete history.  The only way right now to get the complete history of a record would be to loop through the version records after getting the max version from the original record.&lt;/p&gt;</comment>
                    <comment id="10331" author="jwage" created="Wed, 28 Oct 2009 15:40:25 +0000"  >&lt;p&gt;I&apos;m failing to understand. The behavior generates a model for you named ModelNameVersion and ModelName hasMany ModelNameVersion, no?&lt;/p&gt;</comment>
                    <comment id="10332" author="bvoelsch" created="Wed, 28 Oct 2009 15:48:23 +0000"  >&lt;p&gt;The relationship was not created.  We are adding it and going to some testing.  Get back to you&lt;/p&gt;</comment>
                    <comment id="10333" author="bvoelsch" created="Wed, 28 Oct 2009 17:38:38 +0000"  >&lt;p&gt;The relationship worked on the generated class, but there is still an issue.  Without creating a model for the version table, there is no way to use our delegation code.  This still causes the problem of saving to the slave. or reading from the master.&lt;/p&gt;</comment>
                    <comment id="10334" author="jwage" created="Wed, 28 Oct 2009 17:42:35 +0000"  >&lt;p&gt;Hmm. The model does exist though. It is called &quot;ModelNameVersion&quot; and it is auto generated for you by Doctrine_Record_Generator. It also has options to write the generated model to a path somewhere.&lt;/p&gt;</comment>
                    <comment id="10336" author="bvoelsch" created="Wed, 28 Oct 2009 22:09:27 +0000"  >&lt;p&gt;Without autoloading the class by removing the false flag in the generator code, the saved model will never get loaded.  Another issue is that when trying to use the saved generated class, we get an error that it cannot find the id field that it created.  The id field does not exist in the table.&lt;/p&gt;</comment>
                    <comment id="10430" author="jwage" created="Mon, 2 Nov 2009 23:23:32 +0000"  >&lt;p&gt;We&apos;ll give this change a try. If it causes some issues for people we may have to revert it. I remember that false argument being there for a reason but I can&apos;t remember and none of our tests pass without it.&lt;/p&gt;</comment>
                    <comment id="10453" author="bvoelsch" created="Tue, 3 Nov 2009 16:00:33 +0000"  >&lt;p&gt;If your tests are not passing then there must be a reason for it to be set to false.  I think a configuration option here would be a better solution.  Similar to the Doctrine::ATTR_AUTOLOAD_TABLE_CLASSES setting.&lt;/p&gt;</comment>
                    <comment id="10806" author="jazzslider" created="Fri, 20 Nov 2009 22:00:24 +0000"  >&lt;p&gt;For what it&apos;s worth, I&apos;m running r6785 of the &lt;a href=&quot;http://svn.doctrine-project.org/tags/1.2.0-BETA3&quot; class=&quot;external-link&quot;&gt;http://svn.doctrine-project.org/tags/1.2.0-BETA3&lt;/a&gt; tag, and the absence of the false argument is causing me some annoying issues.&lt;/p&gt;

&lt;p&gt;Based on the documentation/parameters/etc., I&apos;m assuming both of the following use cases are supposed to be possible:&lt;/p&gt;

&lt;p&gt;A. The ModelNameVersion class is generated on-the-fly as necessary, and never stored in the filesystem.&lt;br/&gt;
B. The ModelNameVersion class is generated once, stored in the filesystem, and subsequently autoloaded from there.&lt;/p&gt;

&lt;p&gt;Now, from what I can tell, both use cases work correctly even without the false argument on line 159; however, in case A, a PHP warning can be generated if one of the registered autoloaders doesn&apos;t check to see if the file exists before including it.  This appears to be the case with Zend_Loader_Autoloader_Resource, for instance; my guess is that it&apos;s designed that way such that non-existing files produce the same warnings you&apos;d get if you tried to include them manually ...but it doesn&apos;t play nice with Doctrine&apos;s expectations here (and heck, it may well be a bug on their part to write it that way).&lt;/p&gt;

&lt;p&gt;These warnings don&apos;t appear to affect any functionality ...the line 159 conditional still turns up false, allowing the class to be generated on the fly.  All the same, I&apos;d prefer not to have to turn off E_WARNING on my development machine just to avoid seeing these.  Since Doctrine can&apos;t really guarantee that all of the autoloaders registered with SPL are properly &lt;img class=&quot;emoticon&quot; src=&quot;http://www.doctrine-project.org/jira/images/icons/emoticons/help_16.gif&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt; avoiding such blind includes, it may make more sense to leave the false argument in place and avoid the warnings.&lt;/p&gt;

&lt;p&gt;Of course, I don&apos;t know what effect that would have on use case B; my guess is that it&apos;d break, since that&apos;s what this issue was originally about &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;  Is there another solution available that satisfies both use cases without raising any errors?&lt;/p&gt;

&lt;p&gt;Thanks!&lt;br/&gt;
Adam&lt;/p&gt;</comment>
                    <comment id="10971" author="ace" created="Wed, 2 Dec 2009 16:32:37 +0000"  >&lt;p&gt;Hi !&lt;/p&gt;

&lt;p&gt;I&apos;m using Zend Framework and Doctrine and I got warnings with Doctrine_Template_Searchable that was trying to load the Index classes of the Searchable behaviour.&lt;br/&gt;
And as you said, with the false argument of get_class() Zend_Framework failed...&lt;/p&gt;

&lt;p&gt;I tried with 1.9.6 of Zend_Framework and it still failed, although they seem to say in your external reference (&lt;span class=&quot;error&quot;&gt;&amp;#91;ZF-8364&amp;#93;&lt;/span&gt; Zend_Loader_Autoloader_Resource::autoload() should return false if no match is found) that it would be fixed in release 1.9.6...&lt;/p&gt;

&lt;p&gt;Here it is... it was just to point it out &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="10972" author="jwage" created="Wed, 2 Dec 2009 16:55:14 +0000"  >&lt;p&gt;Doesn&apos;t the autoloader have an option to check if the file exists before trying to include it?&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-135] Nested i18n versionable behaviour</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-135</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Sorry to bring this up again (&lt;a href=&quot;http://trac.doctrine-project.org/ticket/1708&quot; class=&quot;external-link&quot;&gt;http://trac.doctrine-project.org/ticket/1708&lt;/a&gt;), but the current ALPHA 3 works perfectly on MySQL and fails on PostgreSQL. I tried the simple wiki example on a fresh project. I posted it already on google groups, but it seems this is the right place for that: &lt;a href=&quot;http://groups.google.com/group/doctrine-user/browse_thread/thread/32208d921dffb8b3/63eb7337015f4415?show_docid=63eb7337015f4415&quot; class=&quot;external-link&quot;&gt;http://groups.google.com/group/doctrine-user/browse_thread/thread/32208d921dffb8b3/63eb7337015f4415?show_docid=63eb7337015f4415&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the generated postgresql sql file:&lt;/p&gt;

&lt;p&gt;CREATE TABLE wiki_translation_version (id BIGINT, lang CHAR(2), title VARCHAR(255), content TEXT, version BIGINT, PRIMARY KEY(id, lang, version));&lt;br/&gt;
CREATE TABLE wiki_translation_index (id BIGINT, lang CHAR(2), keyword VARCHAR(200), field VARCHAR(50), position BIGINT, PRIMARY KEY(id, lang, keyword, field, position));&lt;br/&gt;
CREATE TABLE wiki_translation (id BIGINT, title VARCHAR(255), content TEXT, lang CHAR(2), version BIGINT, slug VARCHAR(255), PRIMARY KEY(id, lang));&lt;br/&gt;
CREATE TABLE wiki (id BIGSERIAL, created_at TIMESTAMP NOT NULL, updated_at TIMESTAMP NOT NULL, PRIMARY KEY(id));&lt;br/&gt;
CREATE UNIQUE INDEX sluggable ON wiki_translation (slug);&lt;br/&gt;
ALTER TABLE wiki_translation_version ADD CONSTRAINT wiki_translation_version_id_wiki_translation_id FOREIGN KEY (id) REFERENCES wiki_translation(id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;&lt;br/&gt;
ALTER TABLE wiki_translation_index ADD CONSTRAINT wiki_translation_index_id_wiki_translation_id FOREIGN KEY (id) REFERENCES wiki_translation(id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;&lt;br/&gt;
ALTER TABLE wiki_translation ADD CONSTRAINT wiki_translation_id_wiki_id FOREIGN KEY (id) REFERENCES wiki(id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;&lt;/p&gt;

&lt;p&gt;The error is:&lt;/p&gt;

&lt;p&gt;SQLSTATE&lt;span class=&quot;error&quot;&gt;&amp;#91;42830&amp;#93;&lt;/span&gt;: Invalid foreign key: 7 FEHLER:  in Tabelle &#187;wiki_translation&#171;, auf die verwiesen wird, gibt es keinen Unique Constraint, der auf die angegebenen Schl&#252;ssel passt. Failing Query: ALTER TABLE wiki_translation_version ADD CONSTRAINT wiki_translation_version_id_wiki_translation_id FOREIGN KEY (id) REFERENCES wiki_translation(id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE&lt;/p&gt;

&lt;p&gt;It is in german but it means something like: there is no unique constraint in table &apos;wiki_translation&apos; matching the given key.&lt;/p&gt;

&lt;p&gt;Michael&lt;/p&gt;</description>
                <environment></environment>
            <key id="10228">DC-135</key>
            <summary>Nested i18n versionable behaviour</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="7">Can&apos;t Fix</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="michael.piecko">Michael Piecko</reporter>
                        <labels>
                    </labels>
                <created>Fri, 23 Oct 2009 13:25:45 +0000</created>
                <updated>Sun, 13 Dec 2009 15:37:50 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 21:31:34 +0000</resolved>
                            <version>1.2.0-ALPHA3</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Behaviors</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>3</watches>
                        <comments>
                    <comment id="10292" author="jwage" created="Sat, 24 Oct 2009 01:04:41 +0000"  >&lt;p&gt;hmm...I am not really sure what is wrong with that SQL on pgsql. Any ideas?&lt;/p&gt;</comment>
                    <comment id="10293" author="michael.piecko" created="Sat, 24 Oct 2009 10:18:34 +0000"  >&lt;p&gt;Ok, i spend some days on this, but i don&apos;t know if this is the real issue or how to solve it:&lt;/p&gt;

&lt;p&gt;The table wiki_translation has a two column primary key (constraint) with (id, lang), so all ALTER commands which references this table (1st and 2nd in my post above) need to reference BOTH of them, because just (id) is not unique in the translation table (that makes sense). So what i did is to change the first two ALTER commands (which references the translation table) to:&lt;/p&gt;

&lt;p&gt;... FOREIGN KEY (id, lang) REFERENCES wiki_translation(id, lang) ...&lt;/p&gt;

&lt;p&gt;This works on pgsql. But i don&apos;t know why MySQL obviously has no problems with it ... :o(&lt;/p&gt;

&lt;p&gt;Michael&lt;/p&gt;
</comment>
                    <comment id="10311" author="jwage" created="Tue, 27 Oct 2009 15:54:31 +0000"  >&lt;p&gt;Ok I think I know the issue. I will try and commit a patch for it this week.&lt;/p&gt;</comment>
                    <comment id="10312" author="michael.piecko" created="Tue, 27 Oct 2009 15:56:59 +0000"  >&lt;p&gt;Great to hear that. I&apos;ll be there to test it ;o)&lt;/p&gt;

&lt;p&gt;Thx a lot,&lt;br/&gt;
Michael&lt;/p&gt;</comment>
                    <comment id="10416" author="jwage" created="Mon, 2 Nov 2009 21:31:25 +0000"  >&lt;p&gt;Ok I was wrong. This can&apos;t be fixed. I gave it a good solid try but I can&apos;t fix it without completely breaking BC. Users would not be able to upgrade easily and it is a huge change. It will have to remain broken until someone can figure out something that works and is BC.&lt;/p&gt;</comment>
                    <comment id="10417" author="michael.piecko" created="Mon, 2 Nov 2009 22:00:45 +0000"  >&lt;p&gt;Well, that&apos;s the way life goes ... :o(&lt;br/&gt;
But it should be mentioned, that nesting these behaviours WORKS on mysql, but in this case not on pgsql.&lt;/p&gt;

&lt;p&gt;Thanks a lot,&lt;br/&gt;
Michael&lt;/p&gt;</comment>
                    <comment id="11153" author="ornicar" created="Wed, 9 Dec 2009 22:04:26 +0000"  >&lt;p&gt;Hello&lt;/p&gt;

&lt;p&gt;This really shall appear on the documentation.&lt;/p&gt;

&lt;p&gt;Right here : &lt;a href=&quot;http://www.doctrine-project.org/documentation/manual/1_2/en/behaviors#nesting-behaviors&quot; class=&quot;external-link&quot;&gt;http://www.doctrine-project.org/documentation/manual/1_2/en/behaviors#nesting-behaviors&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The documentation suggests it is possible, but it&apos;s not.&lt;/p&gt;</comment>
                    <comment id="11181" author="reaper" created="Sun, 13 Dec 2009 15:37:50 +0000"  >&lt;p&gt;So will this be fixed in 2.0?  &lt;/p&gt;

&lt;p&gt;Versioning with i18n is a MUST HAVE for a project I&apos;m currently working on and MySQL isn&apos;t an option.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-132] LOB mode not used for BLOB fields that are specified as a file handle</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-132</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;PDO provides us with the (highly desirable) possibility of providing the contents for a blob file through a filehandle resource, so the data can be read directly from a file or another stream source. When retrieving blob data from the database, I already get such file handle back. However, when creating of updating a record with a blob field using a filehandle, this fails. It fails because of two issues:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Doctrine_Validator::isValidType() rejects the resource handle, because blob fields are only checked using is_string().&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;$sth-&amp;gt;execute($params) is used for executing a query after preparing it. The $params are provided straight away to the statement handle, without differentiating between field types by means of explicit bindings. An explicit binding with Doctrine::PARAM_PDO would be needed to allow for field data upload using a filehandle.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I have already been going over the code and I could not find a very good spot for handling this. What functionally should happen is that:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;a blob field&lt;/li&gt;
	&lt;li&gt;for which a stream resource is set&lt;/li&gt;
	&lt;li&gt;should not be rejected as a valid blob type field and&lt;/li&gt;
	&lt;li&gt;should be bound as a param to the prepared insert/update query&lt;/li&gt;
	&lt;li&gt;using the data type Doctrine::PARAM_LOB&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;In the attached patch, I have updated the code in a way that makes this feature work. What I did feels like a hack, but I couldn&apos;t find a good way to implement this cleanly. The type of field that we are handling (blob or not?), the data that we are handling (resource or not?) and the spot where we can use bindParam() are not really tightly interconnected (or maybe they are and I overlooked it).&lt;/p&gt;</description>
                <environment></environment>
            <key id="10224">DC-132</key>
            <summary>LOB mode not used for BLOB fields that are specified as a file handle</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="mmakaay">Maurice Makaay</reporter>
                        <labels>
                    </labels>
                <created>Fri, 23 Oct 2009 02:13:46 +0000</created>
                <updated>Sat, 24 Oct 2009 00:55:13 +0000</updated>
                    <resolved>Sat, 24 Oct 2009 00:55:13 +0000</resolved>
                            <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Connection</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10091" name="doctrine-1.2-work-around-for-blob-field-type.diff" size="1454" author="mmakaay" created="Fri, 23 Oct 2009 02:13:46 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-130] Doctrine::generateModelsFromDb fails on foreign key relationships with certain table names on Postgresql</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-130</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Create the following tables:&lt;/p&gt;

&lt;p&gt; CREATE TABLE &quot;user&quot; (&lt;br/&gt;
    id serial PRIMARY KEY,&lt;br/&gt;
    name varchar(30) NOT NULL&lt;br/&gt;
 );&lt;/p&gt;

&lt;p&gt; CREATE TABLE &quot;group&quot; (&lt;br/&gt;
   id serial PRIMARY KEY,&lt;br/&gt;
   name varchar(30) NOT NULL&lt;br/&gt;
 );&lt;/p&gt;

&lt;p&gt; CREATE TABLE &quot;user_x_group&quot; (&lt;br/&gt;
   id serial PRIMARY KEY,&lt;br/&gt;
   user_id int NOT NULL REFERENCES &quot;user&quot; ( id ),&lt;br/&gt;
   group_id int NOT NULL REFERENCES &quot;group&quot; ( id ),&lt;br/&gt;
   UNIQUE ( user_id, group_id )&lt;br/&gt;
 );&lt;/p&gt;

&lt;p&gt;If you try to run Doctrine::generateModelsFromDb() it will crash with&lt;br/&gt;
Uncaught exception &apos;Doctrine_Import_Builder_Exception&apos; with message &apos;Missing class name.&apos;&lt;/p&gt;

&lt;p&gt;This is caused by the fact that the table &apos;user&apos; (and &apos;group&apos; also, for that matter) is escaped with quotes when&lt;br/&gt;
passed through pg_get_constraintdef, because &apos;user&apos; (and &apos;group&apos;) is a reserved word.&lt;/p&gt;

&lt;p&gt;A solution would be to modifiy the regexp in Doctrine_Import_Pgsql::listTableRelations so that it strips the quote characters&lt;br/&gt;
from identifiers.&lt;/p&gt;</description>
                <environment>Ubuntu 9.04 postgresql-8.3</environment>
            <key id="10220">DC-130</key>
            <summary>Doctrine::generateModelsFromDb fails on foreign key relationships with certain table names on Postgresql</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="mboland">Michiel Boland</reporter>
                        <labels>
                    </labels>
                <created>Wed, 21 Oct 2009 14:05:38 +0000</created>
                <updated>Tue, 3 Nov 2009 01:48:47 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 01:48:47 +0000</resolved>
                            <version>1.1.4</version>
                <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.0.13</fixVersion>
                <fixVersion>1.1.5</fixVersion>
                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Import/Export</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-128] search is using default connection for query not the indexed table&apos;s connection</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-128</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I&apos;m using two databases with two connections, one of these only in one component of the project.&lt;/p&gt;

&lt;p&gt;I used Doctrine_Manager::bindComponent to set the connection for the tables of the second database, and left the main database&apos;s connection as default. &lt;/p&gt;

&lt;p&gt;The bug happens when I&apos;m using search() in a searchable table of the second database. Doctrine_Search::search function uses the default connection when queries the index table, instead of the connection bound to the searchable table.&lt;/p&gt;

&lt;p&gt;I attached a patch, which works for me.&lt;/p&gt;
</description>
                <environment>Doctrine 1.1 revision 6546</environment>
            <key id="10218">DC-128</key>
            <summary>search is using default connection for query not the indexed table&apos;s connection</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="karmankertesz">Karman Kertesz</reporter>
                        <labels>
                    </labels>
                <created>Wed, 21 Oct 2009 08:39:37 +0000</created>
                <updated>Mon, 2 Nov 2009 23:41:17 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 23:41:17 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Searchable</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10088" name="d_search.patch" size="461" author="karmankertesz" created="Wed, 21 Oct 2009 08:39:37 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-127] Allow a class prefix to be specified when calling Doctrine_Core::loadModels()</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-127</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Doctrine allows you to generate class names such as Blog_Model_Post in Post.php, but Doctrine::loadModels() is not able to load these models conservatively, as the class name and file name differ.&lt;/p&gt;

&lt;p&gt;I suggest adding a third parameter to Doctrine_Core::loadModels() to specify a class prefix, for example:&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;Doctrine_Core::loadModels(&apos;/modules/blog/models&apos;, Doctrine_Core::MODEL_LOADING_CONSERVATIVE, &apos;Blog_Model_&apos;);&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Code changes (I think) would be something like this:&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;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;static&lt;/span&gt; function loadModels($directory, $modelLoading = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;, $classPrefix = &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;)
{
...
	$className = $e[0];
	
	&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; ($classPrefix) {
		$className = $classPrefix . $className;
	}
...
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Since the argument is optional, this change shouldn&apos;t break any existing code.&lt;/p&gt;

&lt;p&gt;NB: This is &lt;b&gt;not&lt;/b&gt; PEAR-style file/class naming.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10216">DC-127</key>
            <summary>Allow a class prefix to be specified when calling Doctrine_Core::loadModels()</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="darkangel">Glen Ainscow</reporter>
                        <labels>
                    </labels>
                <created>Tue, 20 Oct 2009 19:41:15 +0000</created>
                <updated>Mon, 2 Nov 2009 23:34:51 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 23:34:51 +0000</resolved>
                            <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-116] getParent() works as getRoot() in NestedSet behavior</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-116</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;This is current version of getParent()&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-none&quot;&gt;public function getParent()
    {
        $baseAlias = $this-&amp;gt;_tree-&amp;gt;getBaseAlias();
        $q = $this-&amp;gt;_tree-&amp;gt;getBaseQuery();
        $q-&amp;gt;addWhere(&quot;$baseAlias.lft &amp;lt; ? AND $baseAlias.rgt &amp;gt; ?&quot;, array($this-&amp;gt;getLeftValue(), $this-&amp;gt;getRightValue()))
                -&amp;gt;addOrderBy(&quot;$baseAlias.rgt asc&quot;);
        $q = $this-&amp;gt;_tree-&amp;gt;returnQueryWithRootId($q, $this-&amp;gt;getRootValue());
        $result = $q-&amp;gt;execute();
        if (count($result) &amp;lt;= 0) {
            return false;
        }
               
        if ($result instanceof Doctrine_Collection) {
            $parent = $result-&amp;gt;getFirst();
        } else if (is_array($result)) {
            $parent = array_shift($result);
        }
        
        return $parent;
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt; 

&lt;p&gt;As you can see, this method does not have level limit in where clause. If tree have more than 2 levels in depth, method will return root node of the tree, not parent.&lt;/p&gt;

&lt;p&gt;My fix is use level limit:&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-none&quot;&gt;public function getParent()
    {
        $baseAlias = $this-&amp;gt;_tree-&amp;gt;getBaseAlias();
        $q = $this-&amp;gt;_tree-&amp;gt;getBaseQuery();
        $q-&amp;gt;addWhere(&quot;$baseAlias.lft &amp;lt; ? AND $baseAlias.rgt &amp;gt; ?&quot;, array($this-&amp;gt;getLeftValue(), $this-&amp;gt;getRightValue()))
                -&amp;gt;addOrderBy(&quot;$baseAlias.rgt asc&quot;);
        $q-&amp;gt;addWhere(&quot;$baseAlias.level &amp;gt;= ?&quot;, $this-&amp;gt;record[&apos;level&apos;] - 1);
        $q = $this-&amp;gt;_tree-&amp;gt;returnQueryWithRootId($q, $this-&amp;gt;getRootValue());
        $result = $q-&amp;gt;execute();
        if (count($result) &amp;lt;= 0) {
            return false;
        }
               
        if ($result instanceof Doctrine_Collection) {
            $parent = $result-&amp;gt;getFirst();
        } else if (is_array($result)) {
            $parent = array_shift($result);
        }
        
        return $parent;
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt; 

&lt;p&gt;PS. Sorry for my english.&lt;/p&gt;</description>
                <environment>Windows&lt;br/&gt;
PHP 5.3.0</environment>
            <key id="10204">DC-116</key>
            <summary>getParent() works as getRoot() in NestedSet behavior</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="antik">Vjatseslav Maleev</reporter>
                        <labels>
                    </labels>
                <created>Sat, 17 Oct 2009 15:22:07 +0000</created>
                <updated>Mon, 2 Nov 2009 22:48:37 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 22:48:37 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.0.13</fixVersion>
                <fixVersion>1.1.5</fixVersion>
                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Behaviors</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-115] Doctrine_Cli and Doctrine_Task: further improvements to creation and registration of custom tasks</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-115</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Having worked with - and experienced the &apos;inconveniences&apos; of - my previous changes (see r6475), I have made further improvements to Doctrine_Cli, and a small change to Doctrine_Task, and have achieved the following.&lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;Creating and working with custom tasks is now even easier.&lt;/li&gt;
	&lt;li&gt;Doctrine_Cli is even more powerful since it is now that much easier to extend.&lt;/li&gt;
	&lt;li&gt;Doctrine_Cli is more testable - though there&apos;s still room for improvement.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The enclosed patch was created against 1.2 r6535.  I have merged changes committed since r6475 - Jon&apos;s changes in r6484.&lt;/p&gt;

&lt;p&gt;Further details:&lt;/p&gt;

&lt;p&gt;Doctrine tasks are always included and &apos;registered&apos; on startup.  By default, loaded custom tasks are then registered.&lt;/p&gt;

&lt;p&gt;Custom tasks need only extend Doctrine_Task - there are no special naming conventions to follow.&lt;/p&gt;

&lt;p&gt;Automatic loading of custom tasks can be disabled by setting the new &quot;autoregister_custom_tasks&quot; config option to FALSE (TRUE is the default).&lt;/p&gt;

&lt;p&gt;The following code includes and registers Doctrine core Tasks, and then registers loaded custom tasks.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;$cli = new Doctrine_Cli();&lt;br/&gt;
$cli-&amp;gt;run($_SERVER&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;argv&amp;#39;&amp;#93;&lt;/span&gt;);&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The following code includes and registers only Doctrine core Tasks.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;$oCli = new Doctrine_Cli(array(&apos;autoregister_custom_tasks&apos; =&amp;gt; false));&lt;br/&gt;
$oCli-&amp;gt;run($_SERVER&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;argv&amp;#39;&amp;#93;&lt;/span&gt;);&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;The following code includes and registers Doctrine core Tasks, and then registers a custom task loaded after the CLI was instantiated.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;$oCli = new Doctrine_Cli();&lt;/p&gt;

&lt;p&gt;require_once(dirname(_&lt;em&gt;FILE&lt;/em&gt;_) . &apos;/TestTask02.php&apos;);&lt;/p&gt;

&lt;p&gt;//Either...:&lt;br/&gt;
$oCli-&amp;gt;registerTaskClass(&apos;Doctrine_Cli_TestCase_TestTask02&apos;);&lt;br/&gt;
//...Or:&lt;br/&gt;
$oCli-&amp;gt;registerIncludedTaskClasses();&lt;/p&gt;

&lt;p&gt;$oCli-&amp;gt;run($_SERVER&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;argv&amp;#39;&amp;#93;&lt;/span&gt;);&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;(These code examples can be found in /tests/CliTestCase.)&lt;/p&gt;

&lt;p&gt;Responsibility for naming tasks lies with the tasks themselves.  Tasks will still receive a name derived from the fully-qualified (i.e. including namespaces) name of their class, but it is now possible to specify the name at design time - you might want to do this if the default task name would be very long or undesirable for some reason.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;namespace fully\qualified;&lt;/p&gt;

&lt;p&gt;class CustomTaskName extends \Doctrine_Task {&lt;/p&gt;

&lt;p&gt;    //This task would otherwise be registered as &quot;fully-qualified-custom-task-name&quot;&lt;br/&gt;
    public $taskName = &apos;custom-task-name&apos;;&lt;/p&gt;

&lt;p&gt;    public function execute () {}&lt;br/&gt;
}&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;A CLI can now be instructed to rethrow exceptions.  This is very useful if you&apos;re running a batch of tasks in a single script and you need processing to stop if one of them fails.&lt;/p&gt;

&lt;p&gt;Simply set the new &quot;rethrow_exceptions&quot; config option to TRUE to enable this behaviour - the default is FALSE.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;$oCli = new Doctrine_Cli(array(&lt;br/&gt;
    &apos;autoregister_custom_tasks&apos; =&amp;gt; false,&lt;br/&gt;
    &apos;rethrow_exceptions&apos; =&amp;gt; true,&lt;br/&gt;
));&lt;/p&gt;

&lt;p&gt;$oCli-&amp;gt;run($_SERVER&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;argv&amp;#39;&amp;#93;&lt;/span&gt;);&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I think there are still one or two things I&apos;d like to look at, but I wanted to get the bulk of the work in so I don&apos;t hold you up.&lt;/p&gt;

&lt;p&gt;Oh, and I&apos;d like to apologise for having moved everything around.  I wouldn&apos;t normally, but in trying to make sense of things, I found it necessary.&lt;/p&gt;</description>
                <environment>Darwin, PHP 5.3, MacBook </environment>
            <key id="10203">DC-115</key>
            <summary>Doctrine_Cli and Doctrine_Task: further improvements to creation and registration of custom tasks</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="danbettles">Dan Bettles</reporter>
                        <labels>
                    </labels>
                <created>Sat, 17 Oct 2009 12:31:56 +0000</created>
                <updated>Fri, 23 Oct 2009 17:41:43 +0000</updated>
                    <resolved>Fri, 23 Oct 2009 17:41:43 +0000</resolved>
                            <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Cli</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10078" name="doctrinecli_and_doctrinetask_refactorings_and_tests.diff" size="79211" author="danbettles" created="Sat, 17 Oct 2009 12:31:56 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-114] calculateQueryCacheHash / calculateResultCacheHash with pendingJoinConditions</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-114</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;I&apos;ve modified SoftDelete so that the preDqlSelect part is only applied when a specific param in the Manager is set. Currently this works like expected, but I&apos;ve discovered a small problem, when I&apos;ve enabled the QueryCache:&lt;/p&gt;

&lt;p&gt;Since SoftDelete adds the &quot;where is_deleted=0&quot; as a pendingJoinCondition it isn&apos;t taken into account by the calculateXXXCacheHash function &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;

&lt;p&gt;I&apos;ve made a small patch to Query/Abstract.php that takes the pendingCondition into account&lt;/p&gt;

</description>
                <environment></environment>
            <key id="10201">DC-114</key>
            <summary>calculateQueryCacheHash / calculateResultCacheHash with pendingJoinConditions</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="florian">Florian Pfeiffer</reporter>
                        <labels>
                    </labels>
                <created>Fri, 16 Oct 2009 13:30:43 +0000</created>
                <updated>Tue, 3 Nov 2009 01:26:39 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 01:26:39 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Behaviors</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10076" name="abstract.diff" size="1122" author="florian" created="Fri, 16 Oct 2009 13:31:26 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-110] Doctrine_Export_Mysql does not quote tableName in createIndexSql()</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-110</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Very simple issue, seems that has been forgotten in this case. One of us in the developer team had the great idea to name a table &quot;group&quot;. So we &lt;em&gt;need&lt;/em&gt; quoting &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; And adding a index on this table within a migration was not possible because the table name doesn&apos;t get quoted when adding an index..&lt;/p&gt;

&lt;p&gt;So I added the tiny patch necessary to correct this.. I know it&apos;s not impressing but it&apos;s a fix &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; Maybe it gets in the maintenance release 1.1.5 before the 2.0 stable comes out (if there is anything more in the 1.1.* line).. &lt;/p&gt;</description>
                <environment>CentOs with ZendServer and PHP 5.2.9, Doctrine 1.1.4</environment>
            <key id="10191">DC-110</key>
            <summary>Doctrine_Export_Mysql does not quote tableName in createIndexSql()</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="dnuevo">Dario Nuevo</reporter>
                        <labels>
                    </labels>
                <created>Thu, 15 Oct 2009 08:48:33 +0000</created>
                <updated>Tue, 3 Nov 2009 01:21:31 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 01:21:31 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.0.13</fixVersion>
                <fixVersion>1.1.5</fixVersion>
                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Import/Export</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                                <attachments>
                    <attachment id="10070" name="doctrine-mysql-export.patch" size="597" author="dnuevo" created="Thu, 15 Oct 2009 08:48:33 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-103] doctrine 1.0 not getting table correctly - huge bug - not usable</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-103</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;In the method coreSetRelated from Record.php for 1-1 relation the table is not obtained correctly!&lt;/p&gt;


&lt;p&gt;                if ($value !== self::$_null) &lt;/p&gt;
{
                    $relatedTable = $value-&amp;gt;getTable();
                    $foreignFieldName = $relatedTable-&amp;gt;getFieldName($rel-&amp;gt;getForeign());
                }

&lt;p&gt;instead of                     &lt;/p&gt;

&lt;p&gt;$relatedTable = $value-&amp;gt;getTable();&lt;/p&gt;

&lt;p&gt;you should put &lt;/p&gt;

&lt;p&gt;$relatedTable = $rel-&amp;gt;getTable();&lt;/p&gt;

&lt;p&gt;This is a huge bug that can be fixed very easily so please fix is asap!&lt;/p&gt;

&lt;p&gt;I can not deploy my project until this is fixed!&lt;/p&gt;

&lt;p&gt;Thanks a lot!&lt;/p&gt;

&lt;p&gt;I do not know if other versions are affected! I use symfony 1.2.9! Should I make a ticket also for Symfony!&lt;/p&gt;

&lt;p&gt;You do a great job with doctrine! Great project! I really like it&lt;/p&gt;</description>
                <environment>WIN XP</environment>
            <key id="10179">DC-103</key>
            <summary>doctrine 1.0 not getting table correctly - huge bug - not usable</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="domnulnopcea">Nopcea Flavius</reporter>
                        <labels>
                    </labels>
                <created>Tue, 13 Oct 2009 13:46:42 +0000</created>
                <updated>Fri, 30 Oct 2009 17:35:45 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 17:35:45 +0000</resolved>
                            <version>1.0.12</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Record</component>
                        <due></due>
                    <votes>1</votes>
                        <watches>2</watches>
                        <comments>
                    <comment id="10221" author="jwage" created="Tue, 13 Oct 2009 17:49:44 +0000"  >&lt;p&gt;This sounds like a bug in your own code. $value should be an instance of Doctrine_Record and it is not. Make sure you&apos;re code is not passing an array or invalid value through to coreSetRelated(). If you&apos;re using symfony, a common cause of this is that you have an embedded form that has the same name as your relationship. This can cause issues currently.&lt;/p&gt;</comment>
                    <comment id="10222" author="domnulnopcea" created="Wed, 14 Oct 2009 06:09:08 +0000"  >&lt;p&gt;Hi!&lt;/p&gt;

&lt;p&gt;I am using symfony but I have a regular form! Not an embedded one!&lt;/p&gt;

&lt;p&gt;I have like this:&lt;/p&gt;

&lt;p&gt;            $form-&amp;gt;getObject()-&amp;gt;setAuthorId($authorId);&lt;/p&gt;

&lt;p&gt;and when I do a $form-&amp;gt;save I get an error in that method when dealing with the author!&lt;/p&gt;

&lt;p&gt;If I do a var_dump($value) it will not be an object but a string variable!&lt;/p&gt;

&lt;p&gt;$relatedTable = $value-&amp;gt;getTable();&lt;/p&gt;

&lt;p&gt;I worked with previous versions of symfony/doctrine but once I upgraded to 1.2.9 it doesn&apos;t work anymore!&lt;/p&gt;

&lt;p&gt;To me it seems that in the saving process Doctrine is not getting the correct $value object!&lt;/p&gt;</comment>
                    <comment id="10223" author="domnulnopcea" created="Wed, 14 Oct 2009 06:12:06 +0000"  >&lt;p&gt;Hi!&lt;/p&gt;

&lt;p&gt;I am using symfony but I have a regular form! Not an embedded one!&lt;/p&gt;

&lt;p&gt;I have like this:&lt;/p&gt;

&lt;p&gt;           $form-&amp;gt;getObject()-&amp;gt;setAuthorId($authorId);&lt;/p&gt;

&lt;p&gt;and when I do a $form-&amp;gt;save I get an error in that method when dealing with the author!&lt;/p&gt;

&lt;p&gt;If I do a var_dump($value) it will not be an object but a string variable!&lt;/p&gt;

&lt;p&gt;$relatedTable = $value-&amp;gt;getTable();&lt;/p&gt;

&lt;p&gt;I worked with previous versions of symfony/doctrine but once I upgraded to 1.2.9 it doesn&apos;t work anymore!&lt;/p&gt;

&lt;p&gt;To me it seems that in the saving process Doctrine is not getting the correct $value object!&lt;/p&gt;</comment>
                    <comment id="10287" author="guu_sama" created="Fri, 23 Oct 2009 14:18:43 +0000"  >&lt;p&gt;Quite same problem here.&lt;/p&gt;

&lt;p&gt;My code worked fine with Symfony 1.2.7, but I have the same fatal error since 1.2.8. If I change $value to $rel, everything works fine.&lt;/p&gt;

&lt;p&gt;I&apos;m using embedded forms with Doctrine and I have another way to solve it :&lt;/p&gt;

&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;With this, I&apos;ve got the issue :&lt;br/&gt;
$this-&amp;gt;embedForm(&apos;contact_physique&apos;, $contactForm);&lt;/li&gt;
&lt;/ul&gt;


&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;But no anymore with this :&lt;br/&gt;
$this-&amp;gt;embedForm(&apos;ContactPhysique&apos;, $contactForm);&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;contact_physique is a relationship in my schema.&lt;/p&gt;

&lt;p&gt;I do not know if that &quot;new behavior&quot; comes from Doctrine or Symfony, but it may help with Nopcea Flavius&apos; problem.&lt;/p&gt;

&lt;p&gt;Regards&lt;/p&gt;
</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-96] Add support for the SET datatype</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-96</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Similar to the ENUM datatype, MySQL also invented the SET datatype. Emulation should be easily doable just like its currently done for ENUM.&lt;br/&gt;
&lt;a href=&quot;http://dev.mysql.com/tech-resources/articles/mysql-set-datatype.html&quot; class=&quot;external-link&quot;&gt;http://dev.mysql.com/tech-resources/articles/mysql-set-datatype.html&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
            <key id="10164">DC-96</key>
            <summary>Add support for the SET datatype</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="lsmith">Lukas Kahwe</reporter>
                        <labels>
                    </labels>
                <created>Fri, 9 Oct 2009 12:50:10 +0000</created>
                <updated>Tue, 3 Nov 2009 05:19:34 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 05:19:34 +0000</resolved>
                            <version>1.2.0-ALPHA2</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-93] Calling refreshRelated causes hasOne records to be created in error</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-93</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Calling save() on a record, then refreshRelated(), then save() again will cause hasOne rows to be generated in error. I&apos;ve attached a Doctrine sandbox with everything you need to reproduce it. Below is a summary. &lt;/p&gt;

&lt;p&gt;schema.yml&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;schema.yml&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt; 
---
Staff:
  columns:
    username: string(50)
    password: string(255)
    active:
      type: &lt;span class=&quot;code-object&quot;&gt;boolean&lt;/span&gt;
      &lt;span class=&quot;code-keyword&quot;&gt;default&lt;/span&gt;: &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;
  indexes:
    user_pass_active_idx:
      fields: [username, password, active]


Tickets:
  columns:
    mask:
      unique: &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;
      type: string(10)
    staff_id: integer(9)
  relations:
    Staff:
      local: staff_id
      foreign: id
&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;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;Test.php&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-none&quot;&gt; 
&amp;lt;?php
$ticket = new Tickets();
$ticket-&amp;gt;save();
$ticket-&amp;gt;refreshRelated();
$ticket-&amp;gt;save();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Queries that were run:&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-sql&quot;&gt;root@localhost on doctrine11sandbox
START TRANSACTION
INSERT INTO tickets (id, mask, staff_id) VALUES (NULL, NULL, NULL)
COMMIT
START TRANSACTION
*INSERT INTO staff (active) VALUES (&apos;1&apos;)*
&lt;span class=&quot;code-keyword&quot;&gt;UPDATE&lt;/span&gt; tickets SET staff_id = &apos;2&apos; &lt;span class=&quot;code-keyword&quot;&gt;WHERE&lt;/span&gt; id = &apos;2&apos;
COMMIT
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>Linux</environment>
            <key id="10161">DC-93</key>
            <summary>Calling refreshRelated causes hasOne records to be created in error</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="jmazzi">Justin Mazzi</reporter>
                        <labels>
                    </labels>
                <created>Thu, 8 Oct 2009 19:56:30 +0000</created>
                <updated>Fri, 30 Oct 2009 17:31:23 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 17:31:23 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.0.13</fixVersion>
                <fixVersion>1.1.5</fixVersion>
                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Relations</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10190" author="jmazzi" created="Thu, 8 Oct 2009 20:14:10 +0000"  >&lt;p&gt;This seems to be enough to trigger it:&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
$ticket = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Tickets();
$ticket-&amp;gt;refreshRelated();
$ticket-&amp;gt;save();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                    <comment id="10220" author="jmazzi" created="Tue, 13 Oct 2009 15:27:16 +0000"  >&lt;p&gt;I&apos;ve tracked this down to fetchRelatedFor. This is the function creating the record:&lt;/p&gt;

&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeHeader panelHeader&quot; style=&quot;border-bottom-width: 1px;&quot;&gt;&lt;b&gt;LocalKey.php&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;&amp;lt;?php
/*
 *  $Id: LocalKey.php 5798 2009-06-02 15:10:46Z piccoloprincipe $
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * &lt;span class=&quot;code-quote&quot;&gt;&quot;AS IS&quot;&lt;/span&gt; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * This software consists of voluntary contributions made by many individuals
 * and is licensed under the LGPL. For more information, see
 * &amp;lt;http:&lt;span class=&quot;code-comment&quot;&gt;//www.phpdoctrine.org&amp;gt;.
&lt;/span&gt; */

/**
 * Doctrine_Relation_LocalKey
 * This class represents a local key relation
 *
 * @&lt;span class=&quot;code-keyword&quot;&gt;package&lt;/span&gt;     Doctrine
 * @subpackage  Relation
 * @author      Konsta Vesterinen &amp;lt;kvesteri@cc.hut.fi&amp;gt;
 * @license     http:&lt;span class=&quot;code-comment&quot;&gt;//www.opensource.org/licenses/lgpl-license.php LGPL
&lt;/span&gt; * @link        www.phpdoctrine.org
 * @since       1.0
 * @version     $Revision: 5798 $
 */
class Doctrine_Relation_LocalKey &lt;span class=&quot;code-keyword&quot;&gt;extends&lt;/span&gt; Doctrine_Relation
{
    /**
     * fetchRelatedFor
     *
     * fetches a component related to given record
     *
     * @param Doctrine_Record $record
     * @&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; Doctrine_Record|Doctrine_Collection
     */
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; function fetchRelatedFor(Doctrine_Record $record)
    {
        $localFieldName = $record-&amp;gt;getTable()-&amp;gt;getFieldName($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;definition[&apos;local&apos;]);
        $id = $record-&amp;gt;get($localFieldName);

        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (is_null($id) || ! $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;definition[&apos;table&apos;]-&amp;gt;getAttribute(Doctrine::ATTR_LOAD_REFERENCES)) {
            /* HERE */
            $related = $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;getTable()-&amp;gt;create();

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10066" name="Doctrine-1.1.4-Sandbox.tar.gz" size="365584" author="jmazzi" created="Thu, 8 Oct 2009 19:56:30 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-87] Import / export does not take into account the connection to the database</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-87</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;The mechanism of imports and exports does not include connection to the database. This creates many problems when we have multiple connections to the database and want to use a command to generate. (generateYamlFromDb or generateYamlFromModels or generateModelsFromDb or generateModelsFromYaml and other related methods)&lt;/p&gt;


&lt;p&gt;Possible solution: &lt;/p&gt;

&lt;p&gt;The file Doctrine/Import.php between lines 384 and 385 insert:&lt;br/&gt;
$definition&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;connection&amp;#39;&amp;#93;&lt;/span&gt; = $connection-&amp;gt;getName();&lt;br/&gt;
$definition&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;connectionClassName&amp;#39;&amp;#93;&lt;/span&gt; = $definition&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;className&amp;#39;&amp;#93;&lt;/span&gt;;&lt;/p&gt;

&lt;p&gt;The file Doctrine/Export/Schema.php between lines 71 and 72 insert line:&lt;br/&gt;
$table&lt;span class=&quot;error&quot;&gt;&amp;#91;&amp;#39;connection&amp;#39;&amp;#93;&lt;/span&gt; = $recordTable-&amp;gt;getConnection()-&amp;gt;getName();&lt;/p&gt;</description>
                <environment>Environment does not matter, the problem occurs in the Doctrine code. he problem occurs in any environment.</environment>
            <key id="10152">DC-87</key>
            <summary>Import / export does not take into account the connection 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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="krzysztofu">Krzysztof Ustowski</reporter>
                        <labels>
                    </labels>
                <created>Wed, 7 Oct 2009 19:59:42 +0000</created>
                <updated>Fri, 30 Oct 2009 16:14:56 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 16:14:56 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Connection</component>
                <component>Import/Export</component>
                <component>Schema Files</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-74] Condition of STATE_PROXY should be checked dynamically, not as a static state value</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-74</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;This issue is continuation of issue #2488 from Trac. I have prepared Test case showing that the problem is seriously. Below original content.&lt;/p&gt;


&lt;p&gt;A record gets STATE_PROXY state at hydration when its properties are not fully loaded. Here is a condition (placed in Doctrine_Record::hydrate()):&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;isModified() &amp;amp;&amp;amp; count($&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_values) &amp;lt; $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_table-&amp;gt;getColumnCount()) {
   $&lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt;-&amp;gt;_state = self::STATE_PROXY;
}

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But at first setting a column value (whatever if the column value was loaded or not), the record gets STATE_DIRTY and &quot;forgets&quot; its proxy state.&lt;/p&gt;

&lt;p&gt;In effect a call to any not loaded column of the record causes returning null value. It should, of course, load remaining column values and change record state from STATE_PROXY to STATE_DIRTY. It doesn&apos;t load because current record state is already STATE_DIRTY.&lt;/p&gt;

&lt;p&gt;I&apos;m attaching a patch, which fixes Doctrine_Record::load() in the described situation.&lt;/p&gt;

&lt;p&gt;In my opinion usage of STATE_PROXY must be rethinked. STATE_PROXY can mean:&lt;br/&gt;
1. STATE_CLEAN + not fully loaded columns (proxy)&lt;br/&gt;
2. STATE_DIRTY + not fully loaded columns (proxy)&lt;/p&gt;

&lt;p&gt;Currently it only points the first situation so there is not way to identify the second situation (and it is silently ignored).&lt;/p&gt;</description>
                <environment></environment>
            <key id="10128">DC-74</key>
            <summary>Condition of STATE_PROXY should be checked dynamically, not as a static state value</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="j.debowczyk">Jacek D&#281;bowczyk</reporter>
                        <labels>
                    </labels>
                <created>Wed, 30 Sep 2009 16:10:07 +0000</created>
                <updated>Mon, 2 Nov 2009 22:34:10 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 22:34:10 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Record</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10148" author="j.debowczyk" created="Wed, 30 Sep 2009 16:31:33 +0000"  >&lt;p&gt;I&apos;m including a patch.&lt;/p&gt;

&lt;p&gt;I think that the patch needs a little explanation. To solve the problem I see 2 solutions:&lt;br/&gt;
1. create new state, eg. STATE_PROXY_MODIFIED being activated when a proxy record gets modified&lt;br/&gt;
2. transform existing conditions to check proxy state dynamically using new Doctrine_Record::isInProxyState() method&lt;/p&gt;

&lt;p&gt;I chosen the second as a less invasive way. A record is in proxy state when it has any not loaded properties - this must be found out by the method. But... currently there is no way to find this. Doctrine_Null object in $record-&amp;gt;_data means that property is not loaded yet OR it has null value. &lt;br/&gt;
In the patch I divided real null value (simply stored as null in _data) from unknown (not loaded) value (stored as Doctrine_Null). &lt;/p&gt;</comment>
                    <comment id="10213" author="jwage" created="Tue, 13 Oct 2009 03:51:13 +0000"  >&lt;p&gt;When I tried this patch, it broke the test suite. Can you try your patch again?&lt;/p&gt;</comment>
                    <comment id="10260" author="j.debowczyk" created="Tue, 20 Oct 2009 14:48:21 +0000"  >&lt;p&gt;It breaks 2 test cases. &lt;/p&gt;

&lt;p&gt;The first is Doctrine_Ticket_1449_TestCase. I have appended following code to prepareData() in the test:&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;        $document-&amp;gt;Attachments-&amp;gt;getFirst()-&amp;gt;getTable()-&amp;gt;clear();
        $document-&amp;gt;getTable()-&amp;gt;clear();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and added &quot;a.document_id&quot; column to select:&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;        $document = Doctrine_Query::create()
            -&amp;gt;select(&apos;d.id, d.name, a.id, a.document_id&apos;)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;and the test passes. IMHO problem is in the test, what I noticed in &lt;a href=&quot;http://www.doctrine-project.org/jira/browse/DC-73&quot; title=&quot;TestCase framework normally uses identityMap for records created in prepareData() what can cause side effects&quot;&gt;&lt;del&gt;DC-73&lt;/del&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The second is Doctrine_Relation_OrderBy_TestCase. Currently there are identical queries asserted for lazy load $user-&amp;gt;ChildrenUsers  and $user-&amp;gt;ParentUser. IMHO second query in the test (line 93) is wrong. Could you check this?&lt;/p&gt;</comment>
                    <comment id="10261" author="j.debowczyk" created="Tue, 20 Oct 2009 14:53:50 +0000"  >&lt;p&gt;I&apos;m including the patch adapted to Doctrine-1.2.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10084" name="DC74-1.2.diff" size="6205" author="j.debowczyk" created="Tue, 20 Oct 2009 14:54:21 +0000" />
                    <attachment id="10051" name="DC74.patch" size="6222" author="j.debowczyk" created="Wed, 30 Sep 2009 16:31:33 +0000" />
                    <attachment id="10050" name="DC74TestCase.php" size="2890" author="j.debowczyk" created="Wed, 30 Sep 2009 16:12:11 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-73] TestCase framework normally uses identityMap for records created in prepareData() what can cause side effects</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-73</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;All new records are stored in the identityMap during insertion. This default behavior takes place also while executing test cases. &lt;/p&gt;

&lt;p&gt;In other words every record created in the prepareData() method gets to the identityMap.  Afterwards, in a test method, it is silently retrived from identityMap instead of (expected!) quering from sqlite. &lt;/p&gt;

&lt;p&gt;IMHO a testing environment should be as pure as possible and no such side effects are acceptable.&lt;/p&gt;

&lt;p&gt;I&apos;m including a test case and patch for Doctrine_UnitTestCase. After putting the patch, I have found that 2 test cases causes fail: 1449 and 736. In the first test IMHO there is a problem in a content test - I&apos;m including appropriate fix.&lt;br/&gt;
It seems that the second test, in fact, have never been passing. I think that positive result was caused by the side effect of identityMap.&lt;/p&gt;</description>
                <environment></environment>
            <key id="10126">DC-73</key>
            <summary>TestCase framework normally uses identityMap for records created in prepareData() what can cause side effects</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="j.debowczyk">Jacek D&#281;bowczyk</reporter>
                        <labels>
                    </labels>
                <created>Wed, 30 Sep 2009 12:33:08 +0000</created>
                <updated>Fri, 30 Oct 2009 17:17:02 +0000</updated>
                    <resolved>Fri, 30 Oct 2009 17:17:02 +0000</resolved>
                            <version>1.1.4</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10212" author="jwage" created="Tue, 13 Oct 2009 03:50:26 +0000"  >&lt;p&gt;This breaks the 1.2 test suite. Can you retry your patch?&lt;/p&gt;</comment>
                    <comment id="10258" author="j.debowczyk" created="Tue, 20 Oct 2009 12:56:33 +0000"  >&lt;p&gt;Yes, the patch breaks 2 test cases: 1449 and 736. &lt;br/&gt;
I explained it above in the ticket description.&lt;/p&gt;</comment>
                    <comment id="10259" author="jwage" created="Tue, 20 Oct 2009 14:36:33 +0000"  >&lt;p&gt;Does your patch fix those 2 failing test cases now?&lt;/p&gt;</comment>
                    <comment id="10265" author="j.debowczyk" created="Tue, 20 Oct 2009 15:41:37 +0000"  >&lt;p&gt;Ok, now I&apos;m including a patch that also fixes both test cases and causes all 1.2 tests passes.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10085" name="DC73-full.patch" size="1521" author="j.debowczyk" created="Tue, 20 Oct 2009 15:41:37 +0000" />
                    <attachment id="10083" name="DC73TestCase.php" size="2223" author="j.debowczyk" created="Tue, 20 Oct 2009 12:44:26 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-69] Linking between one to one relations with synchronizeWithArray fails</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-69</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Linking between one to one relations with synchronizeWithArray() ends up in an error message.&lt;/p&gt;

&lt;p&gt;Example:&lt;br/&gt;
Group has one User&lt;br/&gt;
User has one Group&lt;/p&gt;

&lt;p&gt;When I have a group-object and do the following:&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;$group-&amp;gt;synchronizeWithArray(array(
	&apos;User&apos; =&amp;gt; array(1)
));
$group-&amp;gt;save();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I get the message: &quot;Fatal error: Call to a member function identifier() on a non-object in &lt;span class=&quot;error&quot;&gt;&amp;#91;..&amp;#93;&lt;/span&gt;lib/Doctrine/Record.php on line 2327&quot;&lt;/p&gt;

&lt;p&gt;Apparantly $this-&amp;gt;_references&lt;span class=&quot;error&quot;&gt;&amp;#91;$alias&amp;#93;&lt;/span&gt; should be an collection, but in an one to one relation it is a record (which makes sense in my opinion).&lt;/p&gt;</description>
                <environment>tested on&lt;br/&gt;
MySQL&lt;br/&gt;
Doctrine Version 1.0.11 Revision: 6380&lt;br/&gt;
Doctrine Version 1.1.3 Revision: 6380&lt;br/&gt;
Doctrine Version 1.1.4 Revision: 6409&lt;br/&gt;
Doctrine Version 1.2 </environment>
            <key id="10120">DC-69</key>
            <summary>Linking between one to one relations with synchronizeWithArray fails</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="testvogel">Marcus H&#228;u&#223;ler</reporter>
                        <labels>
                    </labels>
                <created>Mon, 28 Sep 2009 13:51:43 +0000</created>
                <updated>Mon, 2 Nov 2009 20:13:37 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 20:13:37 +0000</resolved>
                            <version>1.0.12</version>
                <version>1.1.4</version>
                <version>1.2.0-ALPHA1</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Relations</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                        <comments>
                    <comment id="10157" author="testvogel" created="Thu, 1 Oct 2009 16:06:49 +0000"  >&lt;p&gt;I just realized that the whole linking process in one to one relations is not working.&lt;/p&gt;

&lt;p&gt;A simple&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;$group-&amp;gt;link(&apos;User&apos;, 1);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;ends up in &amp;lt;b&amp;gt;Fatal error&amp;lt;/b&amp;gt;:  Uncaught exception &apos;Doctrine_Exception&apos; with message &apos;Add is not supported for User&apos; in &lt;span class=&quot;error&quot;&gt;&amp;#91;..&amp;#93;&lt;/span&gt;/Doctrine/Access.php:201&lt;/p&gt;

&lt;p&gt;Because in Doctrine_Record the add-method is completely missing &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;br/&gt;
I hope it&apos;s just more or less a copy/past of Doctrine_Collection-&amp;gt;add()&lt;/p&gt;</comment>
                    <comment id="10191" author="testvogel" created="Fri, 9 Oct 2009 10:43:52 +0000"  >&lt;p&gt;I have build a fix that works for me, but I did not tested it fully.&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;Index: library/Doctrine/Doctrine/Record.php
===================================================================
--- library/Doctrine/Doctrine/Record.php        (Revision 6462)
+++ library/Doctrine/Doctrine/Record.php        (Arbeitskopie)
@@ -2323,13 +2323,23 @@
         }

         if (isset($this-&amp;gt;_references[$alias])) {
-            foreach ($this-&amp;gt;_references[$alias] as $k =&amp;gt; $record) {
-                if (in_array(current($record-&amp;gt;identifier()), $ids) || empty($ids)) {
-                    $this-&amp;gt;_references[$alias]-&amp;gt;remove($k);
-                }
-            }

-            $this-&amp;gt;_references[$alias]-&amp;gt;takeSnapshot();
+                       /*
+                        * Fix for One To One Relations
+                        */
+               if ($this-&amp;gt;_references[$alias] instanceof Doctrine_Record) {
+                       if (in_array($this-&amp;gt;_references[$alias]-&amp;gt;identifier(), $ids) || empty($ids)) {
+                               unset($this-&amp;gt;_references[$alias]);
+                       }
+               } else {
+                       foreach ($this-&amp;gt;_references[$alias] as $k =&amp;gt; $record) {
+                               if (in_array(current($record-&amp;gt;identifier()), $ids) || empty($ids)) {
+                                       $this-&amp;gt;_references[$alias]-&amp;gt;remove($k);
+                               }
+                       }
+                   $this-&amp;gt;_references[$alias]-&amp;gt;takeSnapshot();
+               }
+
         }

         if ( ! $this-&amp;gt;exists() || $now === false) {
@@ -2406,7 +2416,14 @@
                 -&amp;gt;execute();

             foreach ($records as $record) {
-                $this-&amp;gt;$alias-&amp;gt;add($record);
+               /*
+                * Fix for One To One Relations
+                */
+               if ($this-&amp;gt;$alias instanceof Doctrine_Record) {
+                       $this-&amp;gt;$alias = $record;
+               } else {
+                       $this-&amp;gt;$alias-&amp;gt;add($record);
+               }
             }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                </comments>
                    <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-65] Add documentation for Doctrine::ATTR_HYDRATE_OVERWRITE</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-65</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Maybe this sould be added somewhere in docs (since there&apos;s nothing about that in 1.1&apos;s)&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;$manager-&amp;gt;setAttribute(Doctrine::ATTR_HYDRATE_OVERWRITE, &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment></environment>
            <key id="10116">DC-65</key>
            <summary>Add documentation for Doctrine::ATTR_HYDRATE_OVERWRITE</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="jwage">Jonathan H. Wage</reporter>
                        <labels>
                    </labels>
                <created>Fri, 25 Sep 2009 16:49:06 +0000</created>
                <updated>Tue, 3 Nov 2009 20:14:55 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 20:14:55 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-55] Add documentation for record filters</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-55</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;There&apos;s nothing in the 1.0 documentation about Doctrine_Record_Filter. Would be nice because it&apos;s a handy feature! &lt;/p&gt;</description>
                <environment></environment>
            <key id="10104">DC-55</key>
            <summary>Add documentation for record filters</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="jwage">Jonathan H. Wage</assignee>
                                <reporter username="jwage">Jonathan H. Wage</reporter>
                        <labels>
                    </labels>
                <created>Thu, 24 Sep 2009 16:56:52 +0000</created>
                <updated>Tue, 3 Nov 2009 20:03:53 +0000</updated>
                    <resolved>Tue, 3 Nov 2009 20:03:53 +0000</resolved>
                                            <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Documentation</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>0</watches>
                                <attachments>
                </attachments>
            <subtasks>
        </subtasks>
        </item>

<item>
            <title>[DC-39] Linking between one to many relations with synchronizeWithArray fails</title>
                <link>http://www.doctrine-project.org/jira/browse/DC-39</link>
                <project id="10031" key="DC">Doctrine 1</project>
                        <description>&lt;p&gt;Linking between one to many relations with synchronizeWithArray() has a strange behavior.&lt;/p&gt;

&lt;p&gt;Example (fully example is in the attachment):&lt;br/&gt;
Group has many Users&lt;br/&gt;
User has one Group&lt;/p&gt;

&lt;p&gt;When I have a group-object (id 2) and do the following:&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;$group-&amp;gt;synchronizeWithArray(array(
	&apos;Users&apos; =&amp;gt; array(1,2)
));
$group-&amp;gt;save();
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt; 

&lt;p&gt;on the first execute of the script the users with id 1 and 2 are linked to group 2 (with foreign key = group_id in user table) -&amp;gt; right&lt;br/&gt;
on the second execute of the script the users with id 1 and 2 are linked to null -&amp;gt; failure&lt;br/&gt;
on the third execute of the script the users with id 1 and 2 are linked to group 2 -&amp;gt; right&lt;br/&gt;
on the fourth execute of the script the users with id 1 and 2 are linked to null -&amp;gt; failure&lt;br/&gt;
and so on&lt;/p&gt;

&lt;p&gt;I tried to find the error on my self, but had no luck.&lt;br/&gt;
That&apos;s what I have found:&lt;br/&gt;
On every script-execution the relations to group 2 are first nulled.&lt;br/&gt;
If they were allready null f&#252;r user 1 and 2, the relations are build with an update -&amp;gt; right!; but when this two users had allready this relation they are only nulled and no update is processed.&lt;br/&gt;
Thats why there is this strange toggling on the foreign key on every script execution.&lt;/p&gt;

&lt;p&gt;Maybe it has something to do with the record_state which is clean, when the relations are allready set in the DB -&amp;gt; no update is executed, but the nulling of all foreign key linked to group 2.&lt;/p&gt;</description>
                <environment>tested on&lt;br/&gt;
PHP Version 5.2.6-3ubuntu4.2, PHP Version 5.3&lt;br/&gt;
MySQL, PgSQL&lt;br/&gt;
Doctrine Version 1.0.11 Revision: 6380&lt;br/&gt;
Doctrine Version 1.1.3 Revision: 6380&lt;br/&gt;
Doctrine Version 1.1.4 Revision: 6409&lt;br/&gt;
Doctrine Version 1.2</environment>
            <key id="10084">DC-39</key>
            <summary>Linking between one to many relations with synchronizeWithArray fails</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="6" iconUrl="http://www.doctrine-project.org/jira/images/icons/statuses/closed.png">Closed</status>
                    <resolution id="1">Fixed</resolution>
                                <assignee username="jwage">Jonathan H. Wage</assignee>
                                <reporter username="testvogel">Marcus H&#228;u&#223;ler</reporter>
                        <labels>
                    </labels>
                <created>Fri, 18 Sep 2009 09:05:15 +0000</created>
                <updated>Mon, 2 Nov 2009 20:14:05 +0000</updated>
                    <resolved>Mon, 2 Nov 2009 20:14:05 +0000</resolved>
                            <version>1.0.12</version>
                <version>1.1.4</version>
                <version>1.2.0-ALPHA1</version>
                                <fixVersion>1.2.0-BETA1</fixVersion>
                                <component>Relations</component>
                        <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="10136" author="testvogel" created="Mon, 28 Sep 2009 10:03:18 +0000"  >&lt;p&gt;I changed the code on record.php near line 1923 to&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 (is_array($value)) {
                    if (isset($value[0]) &amp;amp;&amp;amp; ! is_array($value[0])) {
                        $this-&amp;gt;unlink($key, array(), true); // parameter set to true
                        foreach ($value as $id) {
                            $this-&amp;gt;link($key, $id, true); // parameter set to true
                        }
                    } else {
                        $this-&amp;gt;$key-&amp;gt;synchronizeWithArray($value);
                    }
                }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;With this changed parameters the described bug does not appear, cause the whole state-checking (in UnitOfWork-&amp;gt;saveGraph()) is not used and the querys are submitted emidiatly.&lt;/p&gt;

&lt;p&gt;Of course this can not be the way, but I hope it helps you a bit to find the error and others who need the synchronizeWithArray method working now.&lt;/p&gt;</comment>
                    <comment id="10173" author="jwage" created="Tue, 6 Oct 2009 18:06:08 +0000"  >&lt;p&gt;Have you tried producing a test case for this? When I tested it I was not able to produce the same behavior in Doctrine standalone. Does this happen in your project or did you try outside of your project with just Doctrine?&lt;/p&gt;</comment>
                    <comment id="10176" author="testvogel" created="Wed, 7 Oct 2009 07:17:44 +0000"  >&lt;p&gt;I tested this with doctrine as a standalone.&lt;/p&gt;

&lt;p&gt;Have you looked at the database entries with an external query-browser or have you just looked at the objects?&lt;br/&gt;
The doctrine_records/collections are build right while the database entries can act with the described behavior.&lt;/p&gt;

&lt;p&gt;I will try to build a testcase but tell me wether you looked in the database to recognize the behavior.&lt;/p&gt;</comment>
                    <comment id="10177" author="testvogel" created="Wed, 7 Oct 2009 08:15:03 +0000"  >&lt;p&gt;Testcase uploaded.&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="10059" name="DC39TestCase.php" size="3270" author="testvogel" created="Wed, 7 Oct 2009 08:15:03 +0000" />
                    <attachment id="10029" name="example.php" size="1373" author="testvogel" created="Fri, 18 Sep 2009 09:05:15 +0000" />
                </attachments>
            <subtasks>
        </subtasks>
        </item>
</channel>
</rss>