Opened 9 years ago

Closed 9 years ago

#988 closed defect (fixed)

Read time error with Petascope when embedded with Jetty

Reported by: Bang Pham Huu Owned by: Bang Pham Huu
Priority: major Milestone: 9.2
Component: petascope Version: development
Keywords: Cc: Peter Baumann, Dimitar Misev, Alex Dumitru, Vlad Merticariu
Complexity: Easy

Description

I'm trying to test Petascope which was embedded with Jetty. The problem is when user want to 'Describe Coverage' and Petascope need to read the 'CRS Resolver', for example: EPGS 4326. However, after some debug and tracking, I've noticed because of 2 arguments 'Timeout' in ConfigManger.java (rasdaman/applications/petascope/main/java/petascope/) is too short (2000 and 10000 milisecond) so it will error.

[13:39:13] TRACE CrsUtil@179: http://localhost:8080/def/crs/EPSG/0/4326 definition needs to be parsed from resolver.
[13:39:23] ERROR DbMetadataSource@1446: Error while parsing the CRS definitions to SECORE ([http://localhost:8080/def]).
[13:39:23] ERROR PetascopeInterface@493: Error stack trace:
SecoreError: http://localhost:8080/def/crs/EPSG/0/4326: resolver exception: Read timed out
	at petascope.PetascopeInterface.doGet(PetascopeInterface.java:444)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)

After that, user could not see anything about this coverage and stuck in there with a notice from petascope 'could not retreive this coverage'.

I've changed both values to 20000 and it looks good now.

  /* CRS RESOLVERS' timeouts (milliseconds) */
    public static final int CRSRESOLVER_CONN_TIMEOUT = 20000; // should be longer because some EPSG CRS is long (for example 4326)
    public static final int CRSRESOLVER_READ_TIMEOUT = 20000; // should be longer because some EPSG CRS is long (for example 4326)

[13:51:31] DEBUG CrsUtil@1153: http://localhost:8080/def/crs/EPSG/0/4326 CRS is already decoded in cache.
[13:51:31] TRACE CrsUtil@168: http://localhost:8080/def/crs/EPSG/0/4326 definition is already in cache: do not need to fetch GML definition.
[13:51:31] DEBUG CrsUtil@1153: http://localhost:8080/def/crs/EPSG/0/4326 CRS is already decoded in cache.

NOTE: This problem will also affect when user want to user wcst_import with "crs_resolver" and "default_crs" if not changed these values when run Jetty embedded. One solution for me before fix this problem is using CRS online: http://kahlua.eecs.jacobs-university.de:8080/def/ which is cached so time is not important.

Change History (2)

comment:1 by Bang Pham Huu, 9 years ago

Status: newaccepted

comment:2 by Bang Pham Huu, 9 years ago

Resolution: fixed
Status: acceptedclosed
Note: See TracTickets for help on using tickets.