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)