directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pierre-Arnaud Marcelot" ...@marcelot.net>
Subject [Studio] How to speed up build time?
Date Tue, 23 Sep 2008 14:47:30 GMT
Hi all,

On my machine it takes around 4 minutes to build Apache Directory Studio.
Sometimes, when maven is updating the latest snapshots, it can go up to 6 or
more minutes. It's a long time.

Let's take a look at the build log:
[INFO]
------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
------------------------------------------------------------------------
[INFO] Apache Directory Studio ............................... SUCCESS
[6.566s]
[INFO] Apache Directory Studio Repository .................... SUCCESS
[0.932s]
[INFO] Apache Directory Studio DSML Parser ................... SUCCESS
[8.374s]
[INFO] Apache Directory Studio Jars .......................... SUCCESS
[3.299s]
[INFO] Apache Directory Studio LDIF Parser ................... SUCCESS
[1.394s]
[INFO] Apache Directory Studio Connection Core ............... SUCCESS
[0.713s]
[INFO] Apache Directory Studio LDAP Browser Core ............. SUCCESS
[2.695s]
[INFO] Apache Directory Studio Connection UI ................. SUCCESS
[1.130s]
[INFO] Apache Directory Studio LDAP Browser Common ........... SUCCESS
[1.852s]
[INFO] Apache Directory Studio Value Editors ................. SUCCESS
[0.781s]
[INFO] Apache Directory Studio ACI Item Editor ............... SUCCESS
[0.886s]
[INFO] Apache Directory Studio Schema Editor ................. SUCCESS
[4.029s]
[INFO] Apache Directory Studio Schema Editor Feature ......... SUCCESS
[0.101s]
[INFO] Apache Directory Studio Schema Editor Help ............ SUCCESS
[27.815s]
[INFO] Apache Directory Studio RCP ........................... SUCCESS
[0.809s]
[INFO] Apache Directory Studio RCP Feature ................... SUCCESS
[0.294s]
[INFO] Apache Directory Studio RCP Help ...................... SUCCESS
[16.841s]
[INFO] Apache Directory Studio LDIF Editor ................... SUCCESS
[1.716s]
[INFO] Apache Directory Studio LDIF Editor Feature ........... SUCCESS
[0.098s]
[INFO] Apache Directory Studio LDIF Editor Help .............. SUCCESS
[15.026s]
[INFO] Apache Directory Studio LDAP Browser UI ............... SUCCESS
[2.421s]
[INFO] Apache Directory Studio LDAP Browser Feature .......... SUCCESS
[0.088s]
[INFO] Apache Directory Studio LDAP Browser Help ............. SUCCESS
[40.328s]
[INFO] Apache Directory Studio Apache DS Configuration ....... SUCCESS
[2.360s]
[INFO] Apache Directory Studio Apache DS Configuration Feature  SUCCESS
[0.107s]
[INFO] Apache Directory Studio Apache DS Configuration Help .. SUCCESS
[23.601s]
[INFO] Apache Directory Studio Apache DS Launcher ............ SUCCESS
[2.611s]
[INFO] Apache Directory Studio Apache DS ..................... SUCCESS
[2.496s]
[INFO] Apache Directory Studio Apache DS Help ................ SUCCESS
[16.241s]
[INFO] Apache Directory Studio Apache DS Feature ............. SUCCESS
[0.152s]
[INFO] Apache Directory Studio Core Integration Tests ........ SUCCESS
[6.197s]
[INFO] Apache Directory Studio UI Integration Tests .......... SUCCESS
[4.163s]
[INFO] Apache Directory Studio Update Site ................... SUCCESS
[17.197s]
[INFO] Apache Directory Studio Build ......................... SUCCESS
[19.715s]
[INFO]
------------------------------------------------------------------------
[INFO]
------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 3 minutes 59 seconds
[INFO] Finished at: Tue Sep 23 16:24:06 CEST 2008
[INFO] Final Memory: 68M/123M
[INFO]
------------------------------------------------------------------------

I think we can now say, after a few months, that we're all very happy with
the Maven build system. It took us long hours to get working, but now it has
made the integration of studio in the CI system very easy, and has unified
the whole build system within the Directory project. I really think it was a
great move.
It made me like Maven a lot... :D

There's only one thing I regret from our old Ant build system, that saved us
a lot of time.
In the old system, we had a timestamp set in the help projects and we were
only building them if, and only if, there has been changes to the code
between the last build (according to the timestamp).

Let's have a look at the help plugins build times:
[INFO] Apache Directory Studio Schema Editor Help ............ SUCCESS
[27.815s]
[INFO] Apache Directory Studio RCP Help ...................... SUCCESS
[16.841s]
[INFO] Apache Directory Studio LDIF Editor Help .............. SUCCESS
[15.026s]
[INFO] Apache Directory Studio LDAP Browser Help ............. SUCCESS
[40.328s]
[INFO] Apache Directory Studio Apache DS Configuration Help .. SUCCESS
[23.601s]
[INFO] Apache Directory Studio Apache DS Help ................ SUCCESS
[16.241s]

These 6 projects took 139,7 seconds to build. That's 58% of the time of our
build... :(

I really wish we could do something about this, and only build these
projects when we need them.

If anyone has an idea.

Thanks,
Pierre-Arnaud

Mime
View raw message