Bug 1016103

Summary: Incremental build takes too long; build time increases with number of commits in system.git
Product: [Retired] JBoss BRMS Platform 6 Reporter: Jiri Locker <jlocker>
Component: Business CentralAssignee: Alexandre Porcelli <porcelli>
Status: CLOSED CURRENTRELEASE QA Contact: Jiri Locker <jlocker>
Severity: high Docs Contact:
Priority: high    
Version: 6.0.0CC: etirelli, rrajasek, vigoyal
Target Milestone: ER5   
Target Release: 6.0.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Summary: Incremental builds take a long time to build. This problem is compounded as multiple commits are added to the system.git and increases with the size of the file that triggered the build, the repository it belongs to or the system.git repository. Cause: Consequence: Fix: Result:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-06 20:19:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Dummy rule save iterations 1-80
none
Dummy rule save iterations 81-180 none

Description Jiri Locker 2013-10-07 13:45:23 UTC
Description of problem:
1) Minimal observed inc. build time is ~20s, which is not what I would expect from "incremental" build. It should be faster than complete project build, shouldn't it?

2) More importantly, the time increases as commits cumulate in system.git repository. When my system.git grew close to 2000 commits[1], the incremental build for mortgages duration reached 60s for any DRL rule. After deleting system.git and server restart, inc. build time dropped back to ~20s.

Version-Release number of selected component (if applicable):
ER3

How reproducible:
-

Steps to Reproduce:
1. open Dummy rule in mortgages
2. repeatedly save the file and observe the duration of incremental build in server log, or the time before save success notification appears (the notification is blocked by running inc. build)

Actual results:
After 180 save iterations the inc. build time (and time between save notifications) increased from 24s to ~75s. Then I created a new rule and made a few more saves, which took ~60s too.

Expected results:
1) The incremental build should be significantly faster (a few seconds at most).
2) Inc. build time shouldn't increase with history size of either the file which triggered the build, the repository it belongs to, or system.git repository.

Additional info:
Not only incremental build is getting slower as system.git grows. Switching to authoring perspective and navigating between repositories, projects and packages in Project Explorer is evidently slower, too.

[1] Most of the commits are inbox updates (recently viewed, recently edited etc.).

Comment 1 Jiri Locker 2013-10-07 13:48:54 UTC
Created attachment 808847 [details]
Dummy rule save iterations 1-80

Comment 2 Jiri Locker 2013-10-07 13:49:42 UTC
Created attachment 808848 [details]
Dummy rule save iterations 81-180

Comment 3 Alexandre Porcelli 2013-10-25 02:42:43 UTC
Several improvements were executed on UberFire, here the most recent ones that are related to system.git repository. Pushed to master and 0.3.x branches of UberFire

https://github.com/droolsjbpm/uberfire/commit/71f70893e
https://github.com/droolsjbpm/uberfire/commit/1a86168e1

Comment 4 Jiri Locker 2014-01-17 12:27:28 UTC
Verified in ER7. The incremental build now doesn't interrupt work in the UI. It cannot be observed anymore and the build time increase cannot be reproduced.