From: Simone G. <sim...@ge...> - 2009-05-08 08:47:56
|
Thx for reporting, going to look into it. Are you running this on ubuntu 9.04? Simone. ------------------------------------------------------- Ing. Simone Giannecchini GeoSolutions S.A.S. Owner - Software Engineer Via Carignoni 51 55041 Camaiore (LU) Italy phone: +39 0584983027 fax: +39 0584983027 mob: +39 333 8128928 http://www.geo-solutions.it http://simboss.blogspot.com/ http://www.linkedin.com/in/simonegiannecchini ------------------------------------------------------- On Fri, May 8, 2009 at 10:20 AM, Andrea Aime <aa...@op...> wrote: > Hi all, > I'm experiencing a consistent build failure on my box > on 2.5.x with imagemosaic. > > The failure is: > > Failed tests: > crop(org.geotools.gce.imagemosaic.ImageMosaicReaderTest) > alpha(org.geotools.gce.imagemosaic.ImageMosaicReaderTest) > defaultParameterValue(org.geotools.gce.imagemosaic.ImageMosaicReaderTest) > > > I can reproduce the same in Eclipse. Since it's local to my machine > I investigated a little and found out that tests are failing > on the rgbAURL case, which points to a directory (not a shp file): > file:/home/aaime/devel/gt2.5.x/modules/plugin/imagemosaic/target/test-classes/org/geotools/gce/imagemosaic/test-data/rgba/ > > The contents of the directory are: > > aaime@phoenix:~/devel/gt2.5.x/modules/plugin/imagemosaic$ ls > /home/aaime/devel/gt2.5.x/modules/plugin/imagemosaic/target/test-classes/org/geotools/gce/imagemosaic/test-data/rgba/ > error.txt passA2006128193711.prj passA2006128194218.png > passA2006128194218.wld passA2006128211927.prj > passA2006128193711.png passA2006128193711.wld passA2006128194218.prj > passA2006128211927.png passA2006128211927.wld > > It took some time to figure out the actual exception because it's logged > at FINE level only, but it turned out to be a failure in building > the mosaic .shp/.properties files: > > > java.lang.NullPointerException > 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:682) > at > org.geotools.gce.imagemosaic.IndexBuilder.run(IndexBuilder.java:962) > at > org.geotools.gce.imagemosaic.ImageMosaicUtils.createMosaic(ImageMosaicUtils.java:201) > at > org.geotools.gce.imagemosaic.ImageMosaicUtils.checkSource(ImageMosaicUtils.java:289) > at > org.geotools.gce.imagemosaic.ImageMosaicFormat.accepts(ImageMosaicFormat.java:196) > at > org.geotools.coverage.grid.io.GridFormatFinder.findFormats(GridFormatFinder.java:174) > at > org.geotools.coverage.grid.io.GridFormatFinder.findFormat(GridFormatFinder.java:203) > at > org.geotools.gce.imagemosaic.ImageMosaicReaderTest.getFormat(ImageMosaicReaderTest.java:337) > at > org.geotools.gce.imagemosaic.ImageMosaicReaderTest.imageMosaicCropTest(ImageMosaicReaderTest.java:359) > at > org.geotools.gce.imagemosaic.ImageMosaicReaderTest.crop(ImageMosaicReaderTest.java:102) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59) > at > org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98) > at > org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79) > at > org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87) > at > org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77) > at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42) > at > org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88) > at > org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51) > at > org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44) > at > org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27) > at > org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37) > at > org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42) > at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:36) > at > org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81) > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) > > The issue being globEnvelope == null. > > I guess this is happening because of a different file order scanning on my > ext4 file system compared to windows and ext3 on the build server. > Also, and again guessing, it's due to the mosaic stumbling into a file > that's not a coverage (a .prj, a .wld) before reding a file that > can be added. > Either the code stops relying on fileIndex to decide whether it's the > first file loaded or fileIndex is incremented only on successful reads > (suggestion, why don't you use the gloEnvelope itself as the sentinel > for the first file check?) > > Cheers > Andrea > > > -- > Andrea Aime > OpenGeo - http://opengeo.org > Expert service straight from the developers. > > |