You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by "Sharan Foga (JIRA)" <ji...@apache.org> on 2015/02/21 08:39:02 UTC

[jira] [Updated] (OFBIZ-3856) quicker picklist option functionality

     [ https://issues.apache.org/jira/browse/OFBIZ-3856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sharan Foga updated OFBIZ-3856:
-------------------------------
    Sprint: Bug Crush Event - 21/2/2015

> quicker picklist option functionality
> -------------------------------------
>
>                 Key: OFBIZ-3856
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-3856
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: product
>    Affects Versions: Release 4.0, Release 09.04, Trunk
>            Reporter: Albert Mayo
>            Priority: Minor
>         Attachments: FindOrdersToPick.groovy, PickListServices.java, entitymodel.xml, quicker picklist.diff
>
>
> I am noticing as our OFBiz database grows larger, it is taking the PicklistOptions longer to load. Even for a batch as small as 50 orders it can take up to a couple minutes to load.  300 orders can take upwards of 5-10 minutes.  My development system with much lesser hardware can get through a hundred orders in seconds, so I have a feeling it has to do with the process/code inefficiency.
> For instance, the picklistoptions function does the following (abbreviated):
> select * from OrderHeader
> for each orderHeader {
>     select * from OrderItemShipGroup where orderId = orderHeader.orderId
>     for each orderItemShipGroup in orderItemShipGroupList {
>         select * from OrderItemShipGrpInvRes where orderId = orderItemShipGroup.orderId;
>         for each orderItemShipGrpInvRes in orderItemShipGrpInvResList {
>             etc....
>          }
>     }
> }
> These kind of loops can create many hits to the database and greatly slow down the process, especially if the database tables have many records.  Our database is now almost 8 gigs.  The PicklistOptions process took ~4 minutes for 40 pickable orders. 
> I am using OFBiz 4.0, but the trunk version has a lot of the same code.  I am opening this ticket to start a conversation of a quicker method to create picklists, like with the use of views or DynamicViewEntitys. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)