It is quite unusual. My concern is that this may reflect an underlying 
code problem that could prevent some use-cases, such as GeoTools used 
for offline processing on a host with no networking. This is JAI 
brain-damage, not really a GeoTools problem, but if we can defend 
against it then we should.

Kind regards,
Ben.

On 13/04/11 16:13, Michael Bedward wrote:
> Hi Ben,
>
> Not sure if it's fair to call this a bug - it's unusual to have no
> host name isn't it ?  In any case, there doesn't seem to be any way of
> telling SerializableRenderedImage not to look up the host name so I
> guess the thing to do is to add a boolean flag to  be check by the
> offending tests so that they skip when a host name isn't available.
>
> I can do this unless Simone, Daniele or Andrea have a better suggestion.
>
> Michael
>
>
> On 13 April 2011 17:37, Ben Caradoc-Davies (JIRA)<[email protected]>  wrote:
>> Build failure in coverage if no local host name
>> -----------------------------------------------
>>
>>                  Key: GEOT-3511
>>                  URL: http://jira.codehaus.org/browse/GEOT-3511
>>              Project: GeoTools
>>           Issue Type: Bug
>>           Components: core coverage
>>     Affects Versions: 8-M0
>>             Reporter: Ben Caradoc-Davies
>>             Priority: Minor
>>
>>
>> I have no idea how we can fix this. Building with no local host name causes 
>> JAI SerializableRenderedImage to throw in its constructor, breaking the 
>> build in coverage. Does this make these tests online tests.  :-)
>>
>> Our buildbot is on a VM that has just been migrated, hence the naming outage.
>>
>> From:
>> http://www.java2s.com/Open-Source/Java-Document/6.0-JDK-Modules/Java-Advanced-Imaging/javax/media/jai/remote/SerializableRenderedImage.java.htm
>> {code}
>> try {
>>     host = InetAddress.getLocalHost();
>> } catch (UnknownHostException e) {
>>     throw new RuntimeException(e.getMessage());
>> }
>> {code}
>>
>> Maven:
>>
>> {code}
>> Results :
>>
>> Tests in error:
>>   testSerialization(org.geotools.coverage.grid.GridCoverageTest)
>>   testSerialization(org.geotools.coverage.grid.InterpolatorTest)
>>
>> Tests run: 75, Failures: 0, Errors: 2, Skipped: 1
>>
>> -------------------------------------------------------------------------------
>> Test set: org.geotools.coverage.grid.GridCoverageTest
>> -------------------------------------------------------------------------------
>> Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.14 sec<<<  
>> FAILURE!
>> testSerialization(org.geotools.coverage.grid.GridCoverageTest)  Time 
>> elapsed: 0.079 sec<<<  ERROR!
>> java.lang.RuntimeException: wsrv2: wsrv2
>>         at 
>> javax.media.jai.remote.SerializableRenderedImage.<init>(SerializableRenderedImage.java:567)
>>         at 
>> javax.media.jai.remote.SerializableRenderedImage.<init>(SerializableRenderedImage.java:390)
>>         at 
>> org.geotools.coverage.grid.GridCoverage2D.writeObject(GridCoverage2D.java:991)
>>         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:592)
>>         at 
>> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
>>         at 
>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
>>         at 
>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
>>         at 
>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
>>         at 
>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
>>         at 
>> org.geotools.coverage.grid.GridCoverageTestBase.serialize(GridCoverageTestBase.java:391)
>>         at 
>> org.geotools.coverage.grid.GridCoverageTest.testSerialization(GridCoverageTest.java:66)
>>         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:592)
>>         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 
>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
>>         at 
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
>>         at 
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
>>         at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>         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:592)
>>         at 
>> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
>>         at 
>> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
>>
>> -------------------------------------------------------------------------------
>> Test set: org.geotools.coverage.grid.InterpolatorTest
>> -------------------------------------------------------------------------------
>> Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.197 sec<<< 
>>  FAILURE!
>> testSerialization(org.geotools.coverage.grid.InterpolatorTest)  Time 
>> elapsed: 0.023 sec<<<  ERROR!
>> java.lang.RuntimeException: wsrv2: wsrv2
>>         at 
>> javax.media.jai.remote.SerializableRenderedImage.<init>(SerializableRenderedImage.java:567)
>>         at 
>> javax.media.jai.remote.SerializableRenderedImage.<init>(SerializableRenderedImage.java:390)
>>         at 
>> org.geotools.coverage.grid.GridCoverage2D.writeObject(GridCoverage2D.java:991)
>>         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:592)
>>         at 
>> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
>>         at 
>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
>>         at 
>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
>>         at 
>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
>>         at 
>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
>>         at 
>> org.geotools.coverage.grid.GridCoverageTestBase.serialize(GridCoverageTestBase.java:391)
>>         at 
>> org.geotools.coverage.grid.InterpolatorTest.testSerialization(InterpolatorTest.java:118)
>>         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:592)
>>         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 
>> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
>>         at 
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
>>         at 
>> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
>>         at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
>>         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:592)
>>         at 
>> org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
>>         at 
>> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
>> {code}
>>
>> --
>> This message is automatically generated by JIRA.
>> -
>> If you think it was sent incorrectly contact one of the administrators: 
>> http://jira.codehaus.org/secure/Administrators.jspa
>> -
>> For more information on JIRA, see: http://www.atlassian.com/software/jira
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Forrester Wave Report - Recovery time is now measured in hours and minutes
>> not days. Key insights are discussed in the 2010 Forrester Wave Report as
>> part of an in-depth evaluation of disaster recovery service providers.
>> Forrester found the best-in-class provider in terms of services and vision.
>> Read this report now!  http://p.sf.net/sfu/ibm-webcastpromo
>> _______________________________________________
>> Geotools-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>
>
> ------------------------------------------------------------------------------
> Forrester Wave Report - Recovery time is now measured in hours and minutes
> not days. Key insights are discussed in the 2010 Forrester Wave Report as
> part of an in-depth evaluation of disaster recovery service providers.
> Forrester found the best-in-class provider in terms of services and vision.
> Read this report now!  http://p.sf.net/sfu/ibm-webcastpromo
> _______________________________________________
> Geotools-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>

-- 
Ben Caradoc-Davies <[email protected]>
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to