[Geoserver-devel] [jira] (GEOS-6398) GeoServer w/JDBCConfig is very slow at displaying admin layer list with 11K+ layers

Matt Bertrand created an issue

GeoServer / BugGEOS-6398

GeoServer w/JDBCConfig is very slow at displaying admin layer list with 11K+ layers

Issue Type:

BugBug

Affects Versions:

2.4.5

Assignee:

Justin Deoliveira

Attachments:

filter.png

Components:

JDBCConfig

Created:

13/Mar/14 10:15 AM

Environment:

Ubuntu 12.04, Tomcat7,

Priority:

MajorMajor

Reporter:

Matt Bertrand

After loading 11,467 layers (and ~15K SLD’s) into JDBCConfig, Geoserver responsiveness (particularly the layers list in the admin interface) is initially fine. But after a restart, or a configuration/catalog reload, it often takes 2+ minutes to display the layers list.

The slowdown seems to occur at this line in the code, for the method ConfigDatabase.count:
https://github.com/geoserver/geoserver/blob/master/src/community/jdbcconfig/src/main/java/org/geoserver/jdbcconfig/internal/ConfigDatabase.java#232

which I believe is trying to get the count of all layers in the catalog. During the iteration, ConfigDatabase.getId is called for apparently every item in the catalog:
https://github.com/geoserver/geoserver/blob/master/src/community/jdbcconfig/src/main/java/org/geoserver/jdbcconfig/internal/ConfigDatabase.java#747

The two filters being used in the count method are an IncludeFilter and IsEqualToImpl filter (screenshot attached).

Add Comment

Add Comment

This message was sent by Atlassian JIRA (v6.1.6#6162-sha1:7af547c)

Atlassian logo