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 09.04, Release 4.0, SVN trunk
            Reporter: Albert Mayo
            Priority: Minor


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 is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to