[Geoserver-devel] ImageMosaic stopped working in

Hi,

When upgrading from nightly trunk 2009.10.29 to nightly 2.0.x 2009.12.15 my existing ImageMosaic layers (dirs with GeoTiffs) stopped working, nor am I able to create new ImageMosaic layers. I get multiple exceptions of which this is the main one IMO (strange that EsriAsciiGridRaster is called):

15 Dec 12:03:08 ERROR [class org.geotools.gce.imagemosaic.ImageMosaicUtils] - Unable to build mosaic
java.lang.NullPointerException
  at it.geosolutions.imageio.plugins.arcgrid.raster.StringToDouble.acquire(StringToDouble.java:293)
  at it.geosolutions.imageio.plugins.arcgrid.raster.EsriAsciiGridRaster.parseHeader(EsriAsciiGridRaster.java:144)
  at it.geosolutions.imageio.plugins.arcgrid.spi.AsciiGridsImageReaderSpi.canDecodeInput(AsciiGridsImageReaderSpi.java:219)
  at javax.imageio.ImageIO$CanDecodeInputFilter.filter(ImageIO.java:541)
  at javax.imageio.spi.FilterIterator.advance(ServiceRegistry.java:793)
  at javax.imageio.spi.FilterIterator.next(ServiceRegistry.java:811)
  at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:502)
  at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:487)
  at org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.handleFile(IndexBuilder.java:553)
  at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:367)
  at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
  at org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.<init>(IndexBuilder.java:857)
  at org.geotools.gce.imagemosaic.IndexBuilder.run(IndexBuilder.java:1064)
  at org.geotools.gce.imagemosaic.ImageMosaicUtils.createMosaic(ImageMosaicUtils.java:246)
  at org.geotools.gce.imagemosaic.ImageMosaicUtils.checkSource(ImageMosaicUtils.java:352)
  at org.geotools.gce.imagemosaic.ImageMosaicReader.<init>(ImageMosaicReader.java:171)
  at org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:267)
  at org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:87)
  at org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:834)
  at org.geoserver.catalog.CatalogBuilder.buildCoverage(CatalogBuilder.java:572)
  at org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:72)
  at org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:162)
  at org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:108)

I also found this error in http://pastebin.com/d2d1ab6fd . Found on Mac OSX (.DS_STORE maybe?). Switching back to trunk 2009.10.29 makes ImageMosaic fully working again. Any idea or an existing ticket I may not be aware off ? best,

--Just van den Broecke

Dear Just,
do you have any chance to share part of your sample data to reproduce the issue?
The pastebin link found by you have been posted yesterday by a colleague of mine having that issue.
However, he told me that he had a dirty installation since he had duplicated imageio-ext jars in both geoserver/WEB-INF/lib as well as on its JAVA_HOME/jre/lib/ext. Cleaning the machine (by eliminating duplicated jars reachable by the classloader), he solved the issue.

Please, let me know.
Best Regards,
Daniele

On Tue, Dec 15, 2009 at 1:37 PM, Just van den Broecke <just@anonymised.com> wrote:

Hi,

When upgrading from nightly trunk 2009.10.29 to nightly 2.0.x
2009.12.15 my existing ImageMosaic layers (dirs with GeoTiffs) stopped
working, nor am I able to create new ImageMosaic layers. I get multiple
exceptions of which this is the main one IMO (strange that
EsriAsciiGridRaster is called):

15 Dec 12:03:08 ERROR [class
org.geotools.gce.imagemosaic.ImageMosaicUtils] - Unable to build mosaic
java.lang.NullPointerException
at
it.geosolutions.imageio.plugins.arcgrid.raster.StringToDouble.acquire(StringToDouble.java:293)
at
it.geosolutions.imageio.plugins.arcgrid.raster.EsriAsciiGridRaster.parseHeader(EsriAsciiGridRaster.java:144)
at
it.geosolutions.imageio.plugins.arcgrid.spi.AsciiGridsImageReaderSpi.canDecodeInput(AsciiGridsImageReaderSpi.java:219)
at javax.imageio.ImageIO$CanDecodeInputFilter.filter(ImageIO.java:541)
at javax.imageio.spi.FilterIterator.advance(ServiceRegistry.java:793)
at javax.imageio.spi.FilterIterator.next(ServiceRegistry.java:811)
at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:502)
at javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:487)
at
org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.handleFile(IndexBuilder.java:553)
at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:367)
at org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
at
org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.(IndexBuilder.java:857)
at org.geotools.gce.imagemosaic.IndexBuilder.run(IndexBuilder.java:1064)
at
org.geotools.gce.imagemosaic.ImageMosaicUtils.createMosaic(ImageMosaicUtils.java:246)
at
org.geotools.gce.imagemosaic.ImageMosaicUtils.checkSource(ImageMosaicUtils.java:352)
at
org.geotools.gce.imagemosaic.ImageMosaicReader.(ImageMosaicReader.java:171)
at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:267)
at
org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:87)
at
org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:834)
at
org.geoserver.catalog.CatalogBuilder.buildCoverage(CatalogBuilder.java:572)
at
org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:72)
at
org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:162)
at
org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:108)

I also found this error in http://pastebin.com/d2d1ab6fd . Found on Mac
OSX (.DS_STORE maybe?). Switching back to trunk 2009.10.29 makes
ImageMosaic fully working again. Any idea or an existing ticket I may
not be aware off ? best,

–Just van den Broecke


Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev


Geoserver-devel mailing list
Geoserver-devel@anonymised.comsts.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Eng. Daniele Romagnoli
Software Engineer

GeoSolutions S.A.S.
Via Carignoni 51
55041 Camaiore (LU)
Italy

phone: +39 0584983027
fax: +39 0584983027
mob: +39 328 0559267

http://www.geo-solutions.it


Dear Daniele,

Yes I can send you a link but probably this is not neccessary anymore. I think the entire issue boils down to the fact that ImageMosaic fails after redeploy in a running Tomcat instance. I tested with several versions (2.0.0a, 2.0.x-2009.12.15 and trunk-2009.12.15) but always ImageMosaic fails after a redeploy.

I am mostly using hot-deploy, building/deploying a geoserver .war in Tomcat Ant using a configured GS version. This always works fine for most GS/GT functions but appearantly not for ImageMosaic. Maybe a class-unloading issue. I don't know if it is a requirement that GS should be redeployable.

Thanks, and best regards,

--Just

Daniele Romagnoli wrote:

Dear Just,
do you have any chance to share part of your sample data to reproduce the issue?
The pastebin link found by you have been posted yesterday by a colleague of mine having that issue.
However, he told me that he had a dirty installation since he had duplicated imageio-ext jars in both geoserver/WEB-INF/lib as well as on its JAVA_HOME/jre/lib/ext. Cleaning the machine (by eliminating duplicated jars reachable by the classloader), he solved the issue.

Please, let me know.
Best Regards,
Daniele

On Tue, Dec 15, 2009 at 1:37 PM, Just van den Broecke <just@anonymised.com <mailto:just@anonymised.com>> wrote:

    Hi,

    When upgrading from nightly trunk 2009.10.29 to nightly 2.0.x
    2009.12.15 my existing ImageMosaic layers (dirs with GeoTiffs) stopped
    working, nor am I able to create new ImageMosaic layers. I get multiple
    exceptions of which this is the main one IMO (strange that
    EsriAsciiGridRaster is called):

    15 Dec 12:03:08 ERROR [class
    org.geotools.gce.imagemosaic.ImageMosaicUtils] - Unable to build mosaic
    java.lang.NullPointerException
           at
    it.geosolutions.imageio.plugins.arcgrid.raster.StringToDouble.acquire(StringToDouble.java:293)
           at
    it.geosolutions.imageio.plugins.arcgrid.raster.EsriAsciiGridRaster.parseHeader(EsriAsciiGridRaster.java:144)
           at
    it.geosolutions.imageio.plugins.arcgrid.spi.AsciiGridsImageReaderSpi.canDecodeInput(AsciiGridsImageReaderSpi.java:219)
           at
    javax.imageio.ImageIO$CanDecodeInputFilter.filter(ImageIO.java:541)
           at
    javax.imageio.spi.FilterIterator.advance(ServiceRegistry.java:793)
           at
    javax.imageio.spi.FilterIterator.next(ServiceRegistry.java:811)
           at
    javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:502)
           at
    javax.imageio.ImageIO$ImageReaderIterator.next(ImageIO.java:487)
           at
    org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.handleFile(IndexBuilder.java:553)
           at
    org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:367)
           at
    org.apache.commons.io.DirectoryWalker.walk(DirectoryWalker.java:335)
           at
    org.geotools.gce.imagemosaic.IndexBuilder$MosaicDirectoryWalker.<init>(IndexBuilder.java:857)
           at
    org.geotools.gce.imagemosaic.IndexBuilder.run(IndexBuilder.java:1064)
           at
    org.geotools.gce.imagemosaic.ImageMosaicUtils.createMosaic(ImageMosaicUtils.java:246)
           at
    org.geotools.gce.imagemosaic.ImageMosaicUtils.checkSource(ImageMosaicUtils.java:352)
           at
    org.geotools.gce.imagemosaic.ImageMosaicReader.<init>(ImageMosaicReader.java:171)
           at
    org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:267)
           at
    org.geotools.gce.imagemosaic.ImageMosaicFormat.getReader(ImageMosaicFormat.java:87)
           at
    org.geoserver.catalog.ResourcePool.getGridCoverageReader(ResourcePool.java:834)
           at
    org.geoserver.catalog.CatalogBuilder.buildCoverage(CatalogBuilder.java:572)
           at
    org.geoserver.web.data.layer.NewLayerPageProvider.getItems(NewLayerPageProvider.java:72)
           at
    org.geoserver.web.wicket.GeoServerDataProvider.getFilteredItems(GeoServerDataProvider.java:162)
           at
    org.geoserver.web.data.layer.NewLayerPageProvider.getFilteredItems(NewLayerPageProvider.java:108)

    I also found this error in http://pastebin.com/d2d1ab6fd . Found on Mac
    OSX (.DS_STORE maybe?). Switching back to trunk 2009.10.29 makes
    ImageMosaic fully working again. Any idea or an existing ticket I may
    not be aware off ? best,

    --Just van den Broecke

    ------------------------------------------------------------------------------
    Return on Information:
    Google Enterprise Search pays you back
    Get the facts.
    http://p.sf.net/sfu/google-dev2dev
    _______________________________________________
    Geoserver-devel mailing list
    Geoserver-devel@lists.sourceforge.net
    <mailto:Geoserver-devel@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
-------------------------------------------------------
Eng. Daniele Romagnoli
Software Engineer

GeoSolutions S.A.S.
Via Carignoni 51
55041 Camaiore (LU)
Italy

phone: +39 0584983027
fax: +39 0584983027
mob: +39 328 0559267

http://www.geo-solutions.it

-------------------------------------------------------

--
Just

Just van den Broecke just@anonymised.com
Just Objects B.V. tel +31 65 4268627 Skype: justb4
The Netherlands http://www.justobjects.nl