Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
And here we go: https://github.com/geoserver/geoserver/pull/2599 With those changes I can build GeoServer locally within 6 minutes. The two big speedups have been: - Splitting restconfig service into their own separate modules - Moving the gs-main security tests into their own separate module (this one alone cuts 50 seconds away from the build of both gs-main and the overall build time) In the end I did not touch the app-schema tests as with the new setup they are finishing just a few seconds after gs-web-gwc. Currently the "slow" part is wfs->wms->gwc, to make it faster one would need to untangle wms from its wfs dependencies (which is not trivial). I've noticed that importer depends for no particular good reason on gs-wms (just to run a test against wms getCapabilities, but the same could be done listing directly from the catalog), there might be some minor build times improvement in there, but right now I have no time... I might have a quick look next week :-) Cheers Andrea On Sat, Oct 14, 2017 at 1:49 AM, Jody Garnettwrote: > My feedback was not a -1, given that you have a solid benefit from the > modular architecture (secure env and micro deployment) I am firmly behind > breaking up rest-config into modules :) > > -- > Jody Garnett > > On 13 October 2017 at 13:35, Andrea Aime > wrote: > >> >> >> Il 13 ott 2017 10:13 PM, "Jody Garnett" ha >> scritto: >> >> Thinking about splitting up rest-config >> >> We ship the rest api out of the box currently I have not heard of any >> deployments where people have used our modular system make a distribution >> that does not include the rest api? >> >> >> I do that regularly for customers, but those are custom builds for high >> security environments: no ui, no rest, no way to change the fixed >> configuration. >> >> In other cases I have setups that a more micro-service oriented where the >> war supposedly contains a single service. >> >> Finally, the UI is already split on a per service modules, why not have >> REST align? >> >> >> The thing I like most about splitting up rest-config is it would allow >> the application to be more modular. If the rest-api is always present is it >> worth adding the "rest-config" into the individual gs-wfs and gs-wms >> modules? >> >> >> Besides the above feedback, even if rest config was always in, the per >> service modules would be in the core packaging anyways of course. So, where >> would be the harm, and how would it offset the benefit of a faster build to >> the point that we should abandon the idea? (your feedback sounds like a -1) >> >> Regards >> Andrea >> >> > -- Regards, Andrea Aime == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003. The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc. -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org!
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
My feedback was not a -1, given that you have a solid benefit from the modular architecture (secure env and micro deployment) I am firmly behind breaking up rest-config into modules :) -- Jody Garnett On 13 October 2017 at 13:35, Andrea Aimewrote: > > > Il 13 ott 2017 10:13 PM, "Jody Garnett" ha > scritto: > > Thinking about splitting up rest-config > > We ship the rest api out of the box currently I have not heard of any > deployments where people have used our modular system make a distribution > that does not include the rest api? > > > I do that regularly for customers, but those are custom builds for high > security environments: no ui, no rest, no way to change the fixed > configuration. > > In other cases I have setups that a more micro-service oriented where the > war supposedly contains a single service. > > Finally, the UI is already split on a per service modules, why not have > REST align? > > > The thing I like most about splitting up rest-config is it would allow the > application to be more modular. If the rest-api is always present is it > worth adding the "rest-config" into the individual gs-wfs and gs-wms > modules? > > > Besides the above feedback, even if rest config was always in, the per > service modules would be in the core packaging anyways of course. So, where > would be the harm, and how would it offset the benefit of a faster build to > the point that we should abandon the idea? (your feedback sounds like a -1) > > Regards > Andrea > > -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot___ Geoserver-devel mailing list Geoserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-devel
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
Il 13 ott 2017 10:13 PM, "Jody Garnett"ha scritto: Thinking about splitting up rest-config We ship the rest api out of the box currently I have not heard of any deployments where people have used our modular system make a distribution that does not include the rest api? I do that regularly for customers, but those are custom builds for high security environments: no ui, no rest, no way to change the fixed configuration. In other cases I have setups that a more micro-service oriented where the war supposedly contains a single service. Finally, the UI is already split on a per service modules, why not have REST align? The thing I like most about splitting up rest-config is it would allow the application to be more modular. If the rest-api is always present is it worth adding the "rest-config" into the individual gs-wfs and gs-wms modules? Besides the above feedback, even if rest config was always in, the per service modules would be in the core packaging anyways of course. So, where would be the harm, and how would it offset the benefit of a faster build to the point that we should abandon the idea? (your feedback sounds like a -1) Regards Andrea -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot___ Geoserver-devel mailing list Geoserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-devel
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
Thinking about splitting up rest-config We ship the rest api out of the box currently I have not heard of any deployments where people have used our modular system make a distribution that does not include the rest api? The thing I like most about splitting up rest-config is it would allow the application to be more modular. If the rest-api is always present is it worth adding the "rest-config" into the individual gs-wfs and gs-wms modules? -- Jody Garnett On 11 October 2017 at 09:36, Andrea Aimewrote: > Hi, > following up the geotools-devel thread on speeding up the build, I've made > some checks on > GeoServer as well. > > > Please let's not start a discussion about tests being integration and thus > slow, we all know that, > but I'm trying to discuss something that can be done with limited > resources here, > not planning the next 10 years of development or selling an idea for the > next code sprint :-) > (it's a fair conversation topic, if you want to start it please just do so > in a separate mail thread). > > > Compared to GeoTools the build takes longer because, among other reasons, > it parallelizes a lot less. > The "chain of death" keeping the build in low parallel mode is, roughly: > main->wfs->wms->restconfig->app-schema-test > > The main module takes here 1:20, and everything else depends on it. A > large chunk of that time is > spent running security related tests. > I'm only semi serious here, but as far as I can see, it could be > beneficial to move the securty > tests to their own module (e.g., security/core) while leaving the security > classes in main. > I'm just semi-serious because I realize splitting apart the classes and > their tests is not that great, > but at the same time, it could easily shave off 30-60 seconds off the > critical path. > > The WMS dependency onto WFS is hard to un-tangle, I've tried already some > years ago and > eventually gave up, it would require its own mini-sprint imho... so off > the board for this discussion. > > Restconfig is where things get interesting and actually doable in a > relatively short time. > Restconfig is a slow module to build, and has to wait onto all core OGC > services to be built, but it > does not have to be that way: I propose we split the service support part > into a small per service > module, e.g.: > >- gs-restconfig-wfs >- gs-restconfig-wms >- gs-restconfig-wcs >- gs-restconfig-wps (missing today, no way to configure WPS from REST) >- gs-restconfig-csw (missing today, no way to configure CSW from REST) > > Basically gs-restconfig would contain the core abstract service controller > class, and the "one class modules" > would add the templates, extra code, and tests (side effect, we'd make the > service rest configuration > actually pluggable). > There are also 4-5 a few tests hitting the OGC services as part of the > tests, those could also be moved > to the service specific restconfig module. > This way the main gs-restconfig module could start building as soon as > gs-main has completed. > > The other module that should be split imho is the app-schema-test one, in > the current build, and > on my current machine, it runs alone for 55 seconds after any other module > has terminated building. > The reason being that it depends on too many things, wfs, wms, restconfig. > I believe the module mostly does WFS tests with a few WMS and I believe > just one REST test, so can > we split it into three parts that can start running as soon as their > dependencies are made available? > >- app-schema-wfs-test >- app-schema-wms-test >- app-schema-rest-test > > Cheers > Andrea > > == > GeoServer Professional Services from the experts! Visit > http://goo.gl/it488V for more information. > == > > Ing. Andrea Aime > @geowolf > Technical Lead > > GeoSolutions S.A.S. > Via di Montramito 3/A > 55054 Massarosa (LU) > phone: +39 0584 962313 <+39%200584%20962313> > fax: +39 0584 1660272 <+39%200584%20166%200272> > mob: +39 339 8844549 <+39%20339%20884%204549> > > http://www.geo-solutions.it > http://twitter.com/geosolutions_it > > AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 > > Le informazioni contenute in questo messaggio di posta elettronica e/o > nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il > loro utilizzo è consentito esclusivamente al destinatario del messaggio, > per le finalità indicate nel messaggio stesso. Qualora riceviate questo > messaggio senza esserne il destinatario, Vi preghiamo cortesemente di > darcene notizia via e-mail e di procedere alla distruzione del messaggio > stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, > divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od > utilizzarlo per finalità diverse, costituisce comportamento contrario ai > principi dettati dal D.Lgs. 196/2003. > > The information in this message and/or attachments, is intended solely for > the attention and use of the
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
I certainly have no objections to things being faster. My only concern was on the geotools side, if there was an API change. I don’t see that as a consideration on geoserver though (application vs library). I’m not really able to help with it at the moment though, although I may be able to apply some test effort. Brad From: Andrea Aime [mailto:andrea.a...@geo-solutions.it] Sent: Saturday, 14 October 2017 2:30 AM To: Geoserver-devel <geoserver-devel@lists.sourceforge.net> Subject: Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules Hi, as with the thread on geotools-devel, there seems to be a distinct lack of enthusiams for the topic. Can at least get a sense if there are people opposed to the changes I'm proposing? I'd like to know before starting to split modules apart :-) Cheers Andreda On Wed, Oct 11, 2017 at 6:36 PM, Andrea Aime <andrea.a...@geo-solutions.it <mailto:andrea.a...@geo-solutions.it> > wrote: Hi, following up the geotools-devel thread on speeding up the build, I've made some checks on GeoServer as well. Please let's not start a discussion about tests being integration and thus slow, we all know that, but I'm trying to discuss something that can be done with limited resources here, not planning the next 10 years of development or selling an idea for the next code sprint :-) (it's a fair conversation topic, if you want to start it please just do so in a separate mail thread). Compared to GeoTools the build takes longer because, among other reasons, it parallelizes a lot less. The "chain of death" keeping the build in low parallel mode is, roughly: main->wfs->wms->restconfig->app-schema-test The main module takes here 1:20, and everything else depends on it. A large chunk of that time is spent running security related tests. I'm only semi serious here, but as far as I can see, it could be beneficial to move the securty tests to their own module (e.g., security/core) while leaving the security classes in main. I'm just semi-serious because I realize splitting apart the classes and their tests is not that great, but at the same time, it could easily shave off 30-60 seconds off the critical path. The WMS dependency onto WFS is hard to un-tangle, I've tried already some years ago and eventually gave up, it would require its own mini-sprint imho... so off the board for this discussion. Restconfig is where things get interesting and actually doable in a relatively short time. Restconfig is a slow module to build, and has to wait onto all core OGC services to be built, but it does not have to be that way: I propose we split the service support part into a small per service module, e.g.: * gs-restconfig-wfs * gs-restconfig-wms * gs-restconfig-wcs * gs-restconfig-wps (missing today, no way to configure WPS from REST) * gs-restconfig-csw (missing today, no way to configure CSW from REST) Basically gs-restconfig would contain the core abstract service controller class, and the "one class modules" would add the templates, extra code, and tests (side effect, we'd make the service rest configuration actually pluggable). There are also 4-5 a few tests hitting the OGC services as part of the tests, those could also be moved to the service specific restconfig module. This way the main gs-restconfig module could start building as soon as gs-main has completed. The other module that should be split imho is the app-schema-test one, in the current build, and on my current machine, it runs alone for 55 seconds after any other module has terminated building. The reason being that it depends on too many things, wfs, wms, restconfig. I believe the module mostly does WFS tests with a few WMS and I believe just one REST test, so can we split it into three parts that can start running as soon as their dependencies are made available? * app-schema-wfs-test * app-schema-wms-test * app-schema-rest-test Cheers Andrea == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 <tel:+39%200584%20962313> fax: +39 0584 1660272 <tel:+39%200584%20166%200272> mob: +39 <tel:+39%20339%20884%204549> 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene noti
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
I am obviously not in a place to approve / disapprove but I’ll add that your breakdown makes a lot of sense to me. On Fri, Oct 13, 2017 at 9:30 AM Andrea Aimewrote: > Hi, > as with the thread on geotools-devel, there seems to be a distinct lack of > enthusiams > for the topic. > Can at least get a sense if there are people opposed to the changes I'm > proposing? > I'd like to know before starting to split modules apart :-) > > Cheers > Andreda > > > On Wed, Oct 11, 2017 at 6:36 PM, Andrea Aime > wrote: > >> Hi, >> following up the geotools-devel thread on speeding up the build, I've >> made some checks on >> GeoServer as well. >> >> >> Please let's not start a discussion about tests being integration and >> thus slow, we all know that, >> but I'm trying to discuss something that can be done with limited >> resources here, >> not planning the next 10 years of development or selling an idea for the >> next code sprint :-) >> (it's a fair conversation topic, if you want to start it please just do >> so in a separate mail thread). >> >> >> Compared to GeoTools the build takes longer because, among other reasons, >> it parallelizes a lot less. >> The "chain of death" keeping the build in low parallel mode is, roughly: >> main->wfs->wms->restconfig->app-schema-test >> >> The main module takes here 1:20, and everything else depends on it. A >> large chunk of that time is >> spent running security related tests. >> I'm only semi serious here, but as far as I can see, it could be >> beneficial to move the securty >> tests to their own module (e.g., security/core) while leaving the >> security classes in main. >> I'm just semi-serious because I realize splitting apart the classes and >> their tests is not that great, >> but at the same time, it could easily shave off 30-60 seconds off the >> critical path. >> >> The WMS dependency onto WFS is hard to un-tangle, I've tried already some >> years ago and >> eventually gave up, it would require its own mini-sprint imho... so off >> the board for this discussion. >> >> Restconfig is where things get interesting and actually doable in a >> relatively short time. >> Restconfig is a slow module to build, and has to wait onto all core OGC >> services to be built, but it >> does not have to be that way: I propose we split the service support part >> into a small per service >> module, e.g.: >> >>- gs-restconfig-wfs >>- gs-restconfig-wms >>- gs-restconfig-wcs >>- gs-restconfig-wps (missing today, no way to configure WPS from REST) >>- gs-restconfig-csw (missing today, no way to configure CSW from REST) >> >> Basically gs-restconfig would contain the core abstract service >> controller class, and the "one class modules" >> would add the templates, extra code, and tests (side effect, we'd make >> the service rest configuration >> actually pluggable). >> There are also 4-5 a few tests hitting the OGC services as part of the >> tests, those could also be moved >> to the service specific restconfig module. >> This way the main gs-restconfig module could start building as soon as >> gs-main has completed. >> >> The other module that should be split imho is the app-schema-test one, in >> the current build, and >> on my current machine, it runs alone for 55 seconds after any other >> module has terminated building. >> The reason being that it depends on too many things, wfs, wms, >> restconfig. >> I believe the module mostly does WFS tests with a few WMS and I believe >> just one REST test, so can >> we split it into three parts that can start running as soon as their >> dependencies are made available? >> >>- app-schema-wfs-test >>- app-schema-wms-test >>- app-schema-rest-test >> >> Cheers >> Andrea >> >> == >> GeoServer Professional Services from the experts! Visit >> http://goo.gl/it488V for more information. >> == >> >> Ing. Andrea Aime >> @geowolf >> Technical Lead >> >> GeoSolutions S.A.S. >> Via di Montramito 3/A >> 55054 Massarosa (LU) >> phone: +39 0584 962313 <+39%200584%20962313> >> fax: +39 0584 1660272 <+39%200584%20166%200272> >> mob: +39 339 8844549 <+39%20339%20884%204549> >> >> http://www.geo-solutions.it >> http://twitter.com/geosolutions_it >> >> AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 >> >> Le informazioni contenute in questo messaggio di posta elettronica e/o >> nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il >> loro utilizzo è consentito esclusivamente al destinatario del messaggio, >> per le finalità indicate nel messaggio stesso. Qualora riceviate questo >> messaggio senza esserne il destinatario, Vi preghiamo cortesemente di >> darcene notizia via e-mail e di procedere alla distruzione del messaggio >> stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, >> divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od >> utilizzarlo per finalità diverse, costituisce comportamento contrario ai >> principi
Re: [Geoserver-devel] Speeding up the GeoServer build by splitting some modules
Hi, as with the thread on geotools-devel, there seems to be a distinct lack of enthusiams for the topic. Can at least get a sense if there are people opposed to the changes I'm proposing? I'd like to know before starting to split modules apart :-) Cheers Andreda On Wed, Oct 11, 2017 at 6:36 PM, Andrea Aimewrote: > Hi, > following up the geotools-devel thread on speeding up the build, I've made > some checks on > GeoServer as well. > > > Please let's not start a discussion about tests being integration and thus > slow, we all know that, > but I'm trying to discuss something that can be done with limited > resources here, > not planning the next 10 years of development or selling an idea for the > next code sprint :-) > (it's a fair conversation topic, if you want to start it please just do so > in a separate mail thread). > > > Compared to GeoTools the build takes longer because, among other reasons, > it parallelizes a lot less. > The "chain of death" keeping the build in low parallel mode is, roughly: > main->wfs->wms->restconfig->app-schema-test > > The main module takes here 1:20, and everything else depends on it. A > large chunk of that time is > spent running security related tests. > I'm only semi serious here, but as far as I can see, it could be > beneficial to move the securty > tests to their own module (e.g., security/core) while leaving the security > classes in main. > I'm just semi-serious because I realize splitting apart the classes and > their tests is not that great, > but at the same time, it could easily shave off 30-60 seconds off the > critical path. > > The WMS dependency onto WFS is hard to un-tangle, I've tried already some > years ago and > eventually gave up, it would require its own mini-sprint imho... so off > the board for this discussion. > > Restconfig is where things get interesting and actually doable in a > relatively short time. > Restconfig is a slow module to build, and has to wait onto all core OGC > services to be built, but it > does not have to be that way: I propose we split the service support part > into a small per service > module, e.g.: > >- gs-restconfig-wfs >- gs-restconfig-wms >- gs-restconfig-wcs >- gs-restconfig-wps (missing today, no way to configure WPS from REST) >- gs-restconfig-csw (missing today, no way to configure CSW from REST) > > Basically gs-restconfig would contain the core abstract service controller > class, and the "one class modules" > would add the templates, extra code, and tests (side effect, we'd make the > service rest configuration > actually pluggable). > There are also 4-5 a few tests hitting the OGC services as part of the > tests, those could also be moved > to the service specific restconfig module. > This way the main gs-restconfig module could start building as soon as > gs-main has completed. > > The other module that should be split imho is the app-schema-test one, in > the current build, and > on my current machine, it runs alone for 55 seconds after any other module > has terminated building. > The reason being that it depends on too many things, wfs, wms, restconfig. > I believe the module mostly does WFS tests with a few WMS and I believe > just one REST test, so can > we split it into three parts that can start running as soon as their > dependencies are made available? > >- app-schema-wfs-test >- app-schema-wms-test >- app-schema-rest-test > > Cheers > Andrea > > == > GeoServer Professional Services from the experts! Visit > http://goo.gl/it488V for more information. > == > > Ing. Andrea Aime > @geowolf > Technical Lead > > GeoSolutions S.A.S. > Via di Montramito 3/A > 55054 Massarosa (LU) > phone: +39 0584 962313 <+39%200584%20962313> > fax: +39 0584 1660272 <+39%200584%20166%200272> > mob: +39 339 8844549 <+39%20339%20884%204549> > > http://www.geo-solutions.it > http://twitter.com/geosolutions_it > > AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 > > Le informazioni contenute in questo messaggio di posta elettronica e/o > nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il > loro utilizzo è consentito esclusivamente al destinatario del messaggio, > per le finalità indicate nel messaggio stesso. Qualora riceviate questo > messaggio senza esserne il destinatario, Vi preghiamo cortesemente di > darcene notizia via e-mail e di procedere alla distruzione del messaggio > stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, > divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od > utilizzarlo per finalità diverse, costituisce comportamento contrario ai > principi dettati dal D.Lgs. 196/2003. > > The information in this message and/or attachments, is intended solely for > the attention and use of the named addressee(s) and may be confidential or > proprietary in nature or covered by the provisions of privacy act > (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection > Code).Any
[Geoserver-devel] Speeding up the GeoServer build by splitting some modules
Hi, following up the geotools-devel thread on speeding up the build, I've made some checks on GeoServer as well. Please let's not start a discussion about tests being integration and thus slow, we all know that, but I'm trying to discuss something that can be done with limited resources here, not planning the next 10 years of development or selling an idea for the next code sprint :-) (it's a fair conversation topic, if you want to start it please just do so in a separate mail thread). Compared to GeoTools the build takes longer because, among other reasons, it parallelizes a lot less. The "chain of death" keeping the build in low parallel mode is, roughly: main->wfs->wms->restconfig->app-schema-test The main module takes here 1:20, and everything else depends on it. A large chunk of that time is spent running security related tests. I'm only semi serious here, but as far as I can see, it could be beneficial to move the securty tests to their own module (e.g., security/core) while leaving the security classes in main. I'm just semi-serious because I realize splitting apart the classes and their tests is not that great, but at the same time, it could easily shave off 30-60 seconds off the critical path. The WMS dependency onto WFS is hard to un-tangle, I've tried already some years ago and eventually gave up, it would require its own mini-sprint imho... so off the board for this discussion. Restconfig is where things get interesting and actually doable in a relatively short time. Restconfig is a slow module to build, and has to wait onto all core OGC services to be built, but it does not have to be that way: I propose we split the service support part into a small per service module, e.g.: - gs-restconfig-wfs - gs-restconfig-wms - gs-restconfig-wcs - gs-restconfig-wps (missing today, no way to configure WPS from REST) - gs-restconfig-csw (missing today, no way to configure CSW from REST) Basically gs-restconfig would contain the core abstract service controller class, and the "one class modules" would add the templates, extra code, and tests (side effect, we'd make the service rest configuration actually pluggable). There are also 4-5 a few tests hitting the OGC services as part of the tests, those could also be moved to the service specific restconfig module. This way the main gs-restconfig module could start building as soon as gs-main has completed. The other module that should be split imho is the app-schema-test one, in the current build, and on my current machine, it runs alone for 55 seconds after any other module has terminated building. The reason being that it depends on too many things, wfs, wms, restconfig. I believe the module mostly does WFS tests with a few WMS and I believe just one REST test, so can we split it into three parts that can start running as soon as their dependencies are made available? - app-schema-wfs-test - app-schema-wms-test - app-schema-rest-test Cheers Andrea == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003. The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail