StackOverflowError caused by Secure Catalog decorators

Description

In the context of a Boundless Exchange deployment, over time, Layers in GeoServer would start to throw StackOverflowErrors when performing GetCapabilities and GetMap calls. If unaddressed, eventually trying to navigate to the Layer list page or the Layer Preview page in GeoServer would cause StackOverflowErrors as well. It was discovered that reloading the Catalog would alleviate the symptoms for a while. However, over time, the symptoms would pop back up.

The StackOverflowErrors were observed in both Java serialization and deserialization of DataStoreInfo objects related to the layers, specifically SecuredDataStoreInfo object instances (see attached logs).

Environment

OS: Centos 7
GeoServer: 2.12.2
Java: 1.8.0_161

This is in the context of a Boundless Exchange deployment based on GeoNode.

Status

Assignee

Unassigned

Reporter

Erik Merkle

Triage

None

Fix versions

Affects versions

2.12.1
2.11.4
2.12.2
2.12.0

Components

Priority

High
Configure