Bug 1016103 - Incremental build takes too long; build time increases with number of commits in system.git
Summary: Incremental build takes too long; build time increases with number of commits...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss BRMS Platform 6
Classification: Retired
Component: Business Central
Version: 6.0.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ER5
: 6.0.0
Assignee: Alexandre Porcelli
QA Contact: Jiri Locker
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-10-07 13:45 UTC by Jiri Locker
Modified: 2014-08-06 20:19 UTC (History)
3 users (show)

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:
Clone Of:
Environment:
Last Closed: 2014-08-06 20:19:11 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Dummy rule save iterations 1-80 (68.86 KB, image/png)
2013-10-07 13:48 UTC, Jiri Locker
no flags Details
Dummy rule save iterations 81-180 (78.26 KB, image/png)
2013-10-07 13:49 UTC, Jiri Locker
no flags Details

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.


Note You need to log in before you can comment on or make changes to this bug.