[Geoserver-devel] April release train starting

Good morning all, looking at starting the release train (a few days late due to foss4gna conference).

The most recent CITE tests have:

version = 2.15-SNAPSHOT
git revision = 6512081de52f22144da3914cdafac06174033280
git branch = origin/2.15.x
build date = 23-Apr-2019 01:24
geotools version = 21-SNAPSHOT
geotools revision = b5940536fca8378e546bc9f0aeb986c21be38e10
geowebcache version = 1.15-SNAPSHOT
geowebcache revision = f05686d2752762758709029f1cc2fb1fbdcb5601/f0568

Any last minuet changes required? Speak now or wait for the next release …

I will be updating the release scripts so that README.html links are set via a build parameter (between latest, stable and maintenance) using the same approach as was done for GeoTools.

There is an open bug about some of the required jars of the GeoTools binary release being missing that I will look out for.

Torben I will ping you to upload GWC and GeoServer docs when ready (although we should teach build.geoserver.org to do that with a script).

···


Jody Garnett

I’ve committed this morning an upgrade to jai-ext that improves performance of the Scale2 operation, which is activated
only via system variable flag (no changes outside of Scale2, so it should not affect anything else).
Would be nice if it was in the release, but if not, well, it’s fine too. The revision is 79a1a813b925f7e88fa224f661ed5001ecfec0a3 (just after the one above).

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 ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

Thanks, given that I am going to look at the release scripts this morning we have time to run the cite tests again.

···


Jody Garnett

GeoServer release is ready for testing: https://build.geoserver.org/geoserver/release/2.15.1

···


Jody Garnett

Tested the binary download on macOS / Java 11 without problem.

Windows testing (java 8 32-bit / windows service) starts up but showing the layer preview for spearfish produces:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

Error occurred decoding the espg code EPSG:4326

No code "EPSG:4326" from authority "European Petroleum Survey Group" found for object of type "IdentifiedObject".

The logs folder has wrapper.log and keepme.txt but no geoserver.log

Checking wrapper.log the problems start right away:

···


Jody Garnett

Okay when installed to run manually the windows release worked as expected.

I am going to assume the windows service did not have permissions to unpack the geotools EPSG database someplace safe. Not even sure windows services have a “home” directory…

···


Jody Garnett

Testing the 1.15.0 release running as a windows service works, uninstalling that and returning to 1.15.1 continues to fail.

I am not aware of any work done on the install between 1.15.0 and now … any suggestions?

···


Jody Garnett

PDF manual has right version and a lot of pages.

Deployed the .war on tomcat9 on geoserver 19.04 with default JVM (openjdk 11.0.3).

Restarted – runs up OK. Logged in, expected UI shows.

Tasmania and NYC layer previews work OK.

Spearfish layers show a ServiceException (NullPointerException). ß Problem

The GetCapabilities all work.

Tried a couple of demo requests and the WCS builder, seems fine.

In the logs, when I try a spearfish layer:

2019-04-26 17:35:41,548 INFO [geoserver.wms] -

Request: getServiceInfo

2019-04-26 17:35:42,959 ERROR [geoserver.ows] -

java.lang.NullPointerException

at org.geoserver.wms.MapLayerInfo.getOtherStyleNames(MapLayerInfo.java:213)

at org.geoserver.wms.map.AbstractOpenLayersMapOutputFormat.styleNames(AbstractOpenLayersMapOutputFormat.java:277)

at org.geoserver.wms.map.AbstractOpenLayersMapOutputFormat.produceMap(AbstractOpenLayersMapOutputFormat.java:112)

at org.geoserver.wms.map.OpenLayersMapOutputFormat.produceMap(OpenLayersMapOutputFormat.java:60)

at org.geoserver.wms.map.OpenLayersMapOutputFormat.produceMap(OpenLayersMapOutputFormat.java:21)

at org.geoserver.wms.GetMap.executeInternal(GetMap.java:707)

at org.geoserver.wms.GetMap.run(GetMap.java:287)

at org.geoserver.wms.GetMap.run(GetMap.java:110)

at org.geoserver.wms.DefaultWebMapService.getMap(DefaultWebMapService.java:251)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.base/java.lang.reflect.Method.invoke(Method.java:566)

at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)

at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)

at org.geoserver.kml.WebMapServiceKmlInterceptor.invoke(WebMapServiceKmlInterceptor.java:38)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)

at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:55)

at org.geoserver.gwc.wms.CacheSeedingWebMapService.invoke(CacheSeedingWebMapService.java:31)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)

at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:72)

at org.geoserver.gwc.wms.CachingWebMapService.invoke(CachingWebMapService.java:52)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)

at org.geoserver.ows.util.RequestObjectLogger.invoke(RequestObjectLogger.java:50)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)

at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)

at com.sun.proxy.$Proxy67.getMap(Unknown Source)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.base/java.lang.reflect.Method.invoke(Method.java:566)

at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:877)

at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:264)

at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)

at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998)

at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:890)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)

at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69)

at org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73)

at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66)

at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:81)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)

at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)

at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74)

at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)

at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.base/java.lang.Thread.run(Thread.java:834)

We have a new release to test: https://build.geoserver.org/geoserver/release/2.15.1/

Thanks for Friday bug stomp assistance Andrea, the windows service should be fixed now.

Torben I was unable to clear the GeoTools 21.1 tag on build.geoserver.org so the build is failing the last tag step. Is this something you can clear?

···


Jody Garnett

Looks like we are good to go:

  • Binary release tested on macOS
  • Windows Service tested on Windows 10
···


Jody Garnett

On Mon, Apr 29, 2019 at 9:53 AM Jody Garnett <jody.garnett@anonymised.com> wrote:

We have a new release to test: https://build.geoserver.org/geoserver/release/2.15.1/

Thanks for Friday bug stomp assistance Andrea, the windows service should be fixed now.

Torben I was unable to clear the GeoTools 21.1 tag on build.geoserver.org so the build is failing the last tag step. Is this something you can clear?

The 21.1 tag on github does not exist:
https://github.com/geotools/geotools/releases

The issue seems to be local to the build server:

sent 261786919 bytes  received 88 bytes  24932095.90 bytes/sec
total size is 261754689  speedup is 1.00
+ popd
+ git tag 21.1
fatal: tag '21.1' already exists
Build step 'Execute shell' marked build as failure
Finished: FAILURE

This requires direct command line access to it, but I cannot access to the server.
The issue is that the access was limited to a bunch of IP addresses (to somehow account
for my lack of static IP), and recently upgraded to a faster net which sports a completely different subnet.

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 ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

I could run the rename script locally and make a commit + tag but that feels cheap.

···


Jody Garnett