WCS Memory Leak

Description

I have a very large GeoTIFF (1.2GB) I have added to GeoServer as a coverage. This one - http://ueod-globe.net/globe/TrueMarble_GeoTIFF/TrueMarble.250m.21600x21600.H4.tif.gz - http://ueod-globe.net/globe/TrueMarble_GeoTIFF/TrueMarble.250m.21600x21600.H4.tif.gz (8MB download, nicely compressed because most of it is ocean).

I tried to download the dataset using WCS (this URL: <http://<host>:8080/geoserver/wcs?request=GetCoverage&version=1.1.1&identifier=j2:TrueMarble.250m.21600x21600.H4&SERVICE=wcs&FORMAT=image/geotiff&boundingbox=-90,135,-45,180,urn:ogc:def:crs:EPSG::4326> ) - sure enough it returns the image, but I cancel before it starts downloading. GeoServer then proceeds to fill it's RAM quota (1gig!) and never frees it, with the console giving the OutofMemoryError and Process Explorer reporing Geoserver is sitting on 1.1 to 1.2Gig of RAM (but not actually doing anything - no CPU processing, no disk access, nothing).

I restart GeoServer, and try a smaller dataset (180MB geotif). I use the exact same URL changing only the identifier. This one /should/ return "no intersection in BBOX" because there's no data in the given co-ord range, but it does return data. An 80MB EML file (whatever that is) that contains something like this:

MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_Part_0_28089599.1246536971975"

------=_Part_0_28089599.1246536971975
Content-Type: text/xml
Content-Transfer-Encoding: 7bit
Content-ID: <urn:ogc:wcs:1.1:coverages>

<?xml version="1.0" encoding="UTF-8"?><wcs:Coverages xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://193.63.128.51:8080/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd - http://193.63.128.51:8080/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd"><wcs:Coverage><ows:Title>Wales_SE is a Tagged Image File Format with Geographic information</ows:Title><ows:Abstract>.\data_dir\coverages\landsat\Wales_SE.tif</ows:Abstract><ows:Identifier>j2:Wales_SE</ows:Identifier><ows:Reference xlink:href="cid:theCoverage"/></wcs:Coverage></wcs:Coverages>
------=_Part_0_28089599.1246536971975
Content-Type: image/tiff
Content-Transfer-Encoding: base64
Content-ID: <theCoverage>

TU0AKgAAAAgAEAEAAAMAAAABISEAAAEBAAMAAAABHcUAAAECAAMAAAADAAAA0AEDAAMAAAABAAUA
AAEGAAMAAAABAAIAAAEVAAMAAAABAAMAAAEaAAUAAAABAAAA2AEbAAUAAAABAAAA4AEoAAMAAAAB
AAEAAAFCAAMAAAABAQAAAAFDAAMAAAABAQAAAAFEAAQAAAP8AAAA6AFFAAQAAAP8AAAQ2IMOAAwA
AAADAAAgyISCAAwAAAAGAAAg4IevAAMAAAAQAAAhEAAAAAAAAAAIAAgACAAAAAAAAQAAAAEAAAAB
AAAAAQAAITAAACQjAAAnFgAAKgkAACz8AAAv7wAAMuIAAFlWAAHCXAACrmgAAx9LAAM00QADN8QA
Azq3AAM9qgADQJ0AA0OQAANGgwADSXYAA0xpAANPXAADUk8AA1VCAANYNQADWygAA14bAANhDgAD
ZAEAA2b0AANp5wADbNoAA2/NAANywAADdbMAA3imAAN7mQADfowAA4F/AAOEcgADh2UAA4pYAAQw

Gg6FoeiaLo2j6RpOlaXpmm6dp+oajqWp6pquravrGs61reua7r2v7BsOxbHsmy7Ns+0bTtW17Ztu
3bfuG47lMqAg
----<del>=_Part_0_28089599.1246536971975</del>

As well as that, the GeoServer instance suddenly starts using 900MB of RAM which doesn't get cleared when the image has finished being transferred. It's now about 5 mins after the image was transferred and I've not made any more requests to the Geoserver for anything, yet the 900MB is still taken. Almost certainly a memory leak

Note - these are my Java starting parameters:
%RUN_JAVA% -Xms128M -Xmx1024M -XXermSize=64M -XX:MaxPermSize=256M
(the system has 4GB of RAM).

Environment

None

Status

Assignee

Unassigned

Reporter

codehaus

Triage

None

Fix versions

None

Affects versions

1.7.5

Components

Priority

High
Configure