Mauro, your improvements to SchemaCache have also introduced an unanticipated problem triggered by download failure: https://jira.codehaus.org/browse/GEOT-4467
You set a 10 second timeout on connections and reads. It turns out that some application schemas, including that used in the GeoServer app-schema tutorial, import this W3 schema, which often takes more than 10 seconds to connect: http://www.w3.org/2001/xml.xsd Furthermore, when a download fails, an empty file is created in the cache, preventing further download attempts. The cache is poisoned and the file must be manually removed. For example, restarting GeoServer does not permit another download attempt. I would like to fix these problems, but I need your advice because I am not familiar with your use of SchemaCache and I do not want to, in fixing one bug, introduce another and break client code. (1) Why do you set a timeout at all? Just a best practice to avoid an application hang? (Good idea!) If so, the obvious workaround is to increase the timeout (60 seconds?) to accommodate slow servers. Would this be a satisfactory solution? (2) Please look at the logic in SchemaCache.startDownload(). Why is it necessary to create an empty file? How should SchemaCache recover when a download fails? Please have a look and recommend a solution. I know you gave this some thought and I do not want to introduce a deadlock or thread blocking that might impact your performance. The original AppSchemaCache had no timeout and did not write to a file until it had all the bytes of the remote resource, so 9.x is not affected by these issues. Kind regards, -- Ben Caradoc-Davies <ben.caradoc-dav...@csiro.au> Software Engineer CSIRO Earth Science and Resource Engineering Australian Resources Research Centre ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may _______________________________________________ GeoTools-Devel mailing list GeoTools-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel