db-ojb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ojb-...@db.apache.org
Subject [DB OJB Wiki] New: Bugs
Date Thu, 18 Nov 2004 10:32:55 GMT
   Date: 2004-11-18T02:32:55
   Editor: VladimirKirichenko <razer@male.ru>
   Wiki: DB OJB Wiki
   Page: Bugs
   URL: http://wiki.apache.org/db-ojb/Bugs

   no comment

New Page:

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) 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Mime
View raw message