Opened 12 years ago

Last modified 12 years ago

#264 closed defect

petascope should have some memory safeguard — at Version 1

Reported by: Dimitar Misev Owned by: Dimitar Misev
Priority: major Milestone: 8.4
Component: petascope Version: 8.3
Keywords: Cc:
Complexity: Medium

Description (last modified by Dimitar Misev)

If large amounts of data (> RAM) are requested via petascope, usually the response will be a heap allocation exception. Petascope should handle this in a better way.

Error message indicates where we should try to catch for the exception (petascope.util.ras.RasUtil.executeRasqlQuery(RasUtil.java:111))

java.lang.OutOfMemoryError: Java heap space
	rasj.rnp.ParameterOpaque.readSpecific(RnpParameter.java:314)
	rasj.rnp.RnpParameter.constructFromStream(RnpParameter.java:113)
	rasj.rnp.RnpFragment.read(RnpFragment.java:102)
	rasj.rnp.RnpMessage.read(RnpMessage.java:65)
	rasj.rnp.RnpBaseClientComm.communicate(RnpBaseClientComm.java:186)
	rasj.rnp.RnpBaseClientComm.sendRequestGetAnswer(RnpBaseClientComm.java:115)
	rasj.rnp.RasRNPImplementation.executeQueryRequest(RasRNPImplementation.java:857)
	rasj.rnp.RasRNPImplementation.queryRequest(RasRNPImplementation.java:398)
	rasj.odmg.RasOQLQuery.execute(RasOQLQuery.java:244)
	petascope.util.ras.RasUtil.executeRasqlQuery(RasUtil.java:111)
	petascope.wcs2.extensions.AbstractFormatExtension.executeRasqlQuery(AbstractFormatExtension.java:215)
	petascope.wcs2.extensions.GeotiffFormatExtension.handle(GeotiffFormatExtension.java:100)
	petascope.wcs2.handlers.GetCoverageHandler.handle(GetCoverageHandler.java:49)
	petascope.wcs2.handlers.GetCoverageHandler.handle(GetCoverageHandler.java:36)
	petascope.wcs2.extensions.AbstractProtocolExtension.handle(AbstractProtocolExtension.java:67)
	petascope.PetascopeInterface.handleWcs2Request(PetascopeInterface.java:584)
	petascope.PetascopeInterface.handleWcsRequest(PetascopeInterface.java:515)
	petascope.PetascopeInterface.doGet(PetascopeInterface.java:299)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

Change History (1)

comment:1 by Dimitar Misev, 12 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.