Dear list,
I discovered a strange behavior using the ImageMosaic Plugin. I could successfully create the imagemosaic stores using the REST interface. But when extending the store with new data using the external.imagemosaic function, some mosaic stores were not updated.
I could identify some difference in the data: If I want to use data that are converted before with the gdal_translate -co NBITS=1 command, the geoserver throws an error: WARN [gce.imagemosaic] - Failure occurred while collecting the granules. See error message below. It works fine when I do not convert the data! The imagemosaic store creation works fine for both. Just updating is not possible when data are converted before.
The relevant gdalinfo differences are listed here (first file the not converted data, second file the NBITS=1 converted data):
< Band 1 Block=17393x1 Type=Byte, ColorInterp=Gray
Band 1 Block=17393x3 Type=Byte, ColorInterp=Palette
32a34,38
Image Structure Metadata:
NBITS=1
Color Table (RGB with 2 entries)
0: 0,0,0,255
1: 255,255,255,255
Is this a known problem or can you provide any quick solution for that?
Thanks,
Jonas
26 Apr 18:15:43 WARN [gce.imagemosaic] - Failure occurred while collecting the granules
org.apache.commons.io.DirectoryWalker$CancelException: Operation Cancelled
at org.apache.commons.io.DirectoryWalker.checkIfCancelled(DirectoryWalker.java:395)
at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:368)
at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
at org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker$MosaicDirectoryWalker.(ImageMosaicDirectoryWalker.java:114)
at org.geotools.gce.imagemosaic.ImageMosaicDirectoryWalker.run(ImageMosaicDirectoryWalker.java:196)
at org.geotools.gce.imagemosaic.ImageMosaicReader$HarvestedResource.harvestCalculation(ImageMosaicReader.java:405)
at org.geotools.gce.imagemosaic.ImageMosaicReader$HarvestedResource.access$100(ImageMosaicReader.java:187)
at org.geotools.gce.imagemosaic.ImageMosaicReader$HarvestedResource$1.harvest(ImageMosaicReader.java:202)
at org.geotools.gce.imagemosaic.ImageMosaicReader.harvest(ImageMosaicReader.java:1250)
at org.geoserver.catalog.CoverageDimensionCustomizerReader$CoverageDimensionCustomizerStructuredReader.harvest(CoverageDimensionCustomizerReader.java:128)
at org.geoserver.catalog.rest.CoverageStoreFileResource.handlePost(CoverageStoreFileResource.java:90)
at org.restlet.Finder.handle(Finder.java:296)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at org.geoserver.rest.RESTDispatcher$1.handle(RESTDispatcher.java:205)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:87)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
…