You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by Jakob Braeuchi <jb...@gmx.ch> on 2004/12/03 23:13:21 UTC
Re: org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher bug
hi vladimir,
this bug is also present on the current ojb 1.1
i'll apply your patch asap.
thanks
jakob
Jakob Braeuchi schrieb:
> hi vladimir,
>
> which version of ojb are you using ?
>
> jakob
>
>
>>org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher bug
>>
>>in method
>>
>> private Criteria buildPrefetchCriteria(Collection ids,
>>String[] fkCols, String[] itemFkCols,
>> FieldDescriptor[] itemPkFields)
>> {
>> if (fkCols.length == 1) //bug is here
>> {
>> return buildPrefetchCriteriaSingleKey(ids,
>>fkCols[0], itemFkCols[0], itemPkFields[0]); //only first
>>item's foreign key passed
>> }
>> else
>> {
>> return buildPrefetchCriteriaMultipleKeys(ids,
>>fkCols, itemFkCols, itemPkFields);
>> }
>>
>> }
>>
>>assumption that if parent table has the only foreign key then
>>item table has the only FK too is incorrect.
>>
>><collection-descriptor name="recipients"
>>element-class-ref="nVerge.commons.User"
>>auto-delete="link" auto-retrieve="true" auto-update="link"
>>indirection-table="hot_folder_recipients">
>> <fk-pointing-to-this-class column="hot_folder_id"/>
>> <fk-pointing-to-element-class column="user_login"/>
>> <fk-pointing-to-element-class column="user_network_id"/>
>><!-- this FK is not put into where criteria -->
>></collection-descriptor>
>>
>>Quickfix for this is if (fkCols.length == 1 &&
>>itemFkCols.length == 1)
>>
>>
>>--
>>Best Regards,
>>Vladimir Kirichenko
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
>>For additional commands, e-mail: ojb-dev-help@db.apache.org
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org