[Geoserver-devel] [JIRA] (GEOS-9917) OutOfMemoryError on WFS 2.0.0 GetFeature of multiple layers

Matthew Northcott created an issue

GeoServer / BugGEOS-9917

OutOfMemoryError on WFS 2.0.0 GetFeature of multiple layers

Issue Type:

BugBug

Affects Versions:

2.17.2, 2.18.2

Assignee:

Unassigned

Created:

17/Feb/21 4:37 AM

Environment:

Tested on the following:

  • GeoServer 2.17.2 on Jetty, started from GeoNode project with paver start_geoserver (OpenJDK 11/Ubuntu 20.04 LTS)
  • GeoServer 2.18.2 on tomcat:9-jdk11-openjdk-slim Docker image

Both running on a machine with 2C/4T and 16GB of memory.

Priority:

MediumMedium

Reporter:

Matthew Northcott

I am experiencing an issue where WFS requests are timing out and causing GeoServer to throw OutOfMemoryError: Java heap space which requires a restart of the server. This occurs under the following conditions:

  • WFS version 2.0.0
  • GetFeature request type
  • At least two comma-separated layers specified as typeNames

An example of a problematic URL would be:
http://localhost:8080/geoserver/wfs?service=wfs&version=2.0.0&request=GetFeature&typeNames=geonode%3Arivers,geonode%3Awharf_edges&bbox=-180,-90,180,90,EPSG%3A4326

A different bbox parameter or specifying a restricted count parameter do not appear to have an effect.

Jetty outputs the following to stdout:

2021-02-17 16:16:01.740:WARN:oejs.AbstractConnector:qtp359023572-15-acceptor-0@anonymised.com@4ec6a292

{HTTP/1.1, (http/1.1)} {0.0.0.0:8080}

:
java.lang.OutOfMemoryError: Java heap space
at java.base/java.nio.channels.spi.AbstractSelectableChannel.<init>(AbstractSelectableChannel.java:72)
at java.base/java.nio.channels.SocketChannel.<init>(SocketChannel.java:133)
at java.base/sun.nio.ch.SocketChannelImpl.<init>(SocketChannelImpl.java:143)
at java.base/sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:299)
at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:388)
at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:702)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.base/java.lang.Thread.run(Thread.java:834)
Exception in thread “Thread-20”
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread “Thread-20”

Add Comment

Add Comment

Get Jira notifications on your phone! Download the Jira Cloud app for Android or iOS


This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100154-sha1:8902582)

Atlassian logo