[Geoserver-devel] build failures (xerces version bump, networking issues)

Hi all,

I’ve been having test failures locally on geoserver trunk for some time, but since I am not all that active there and no one else seems to be complaining I didn’t bring it up on the list. Today I finally found some time to investigate, and actually found two issues. Now I get all tests passing :slight_smile:

  1. xerces version conflict - For most modules in GeoServer is identifying xercesImpl 2.6.2 as the correct one to include on the classpath, however for org.geoserver:main it is using 2.4.0. This is causing AbstractMethodError’s at runtime, as you might expect. I tried bumping the version in geoserver’s main pom to 2.6.2 and tests pass, any objections to committing it?
  2. networking in coverage setup - this one is a little weird… redhat based systems like my fedora laptop have a weird glitch where setting a custom hostname during the install process doesn’t necessarily update the /etc/hosts file, then some programs have issues when “myname.localdomain” doesn’t resolve. The JVM seems to be one of those programs. Ok, so I fixed my hosts file. The weird part is that I was running into those errors during setup of coveragestores in mock data directories for GeoServer’s unit tests, should there be networking going on during this operation? I’m attaching a stack trace for one of the failing tests to this mail.


David Winslow
OpenGeo - http://opengeo.org/

(attachments)

org.vfny.geoserver.ProjectionPolicyTest.txt (12.2 KB)

Thanks David; I was just stressing over the xerces version conflict (trying to test geotools patches against geoserver). Please commit :slight_smile:
It is hard to cut down on networking going on during units tests; some classes like URL like to hit the network for hashcode and equals etc…


Jody Garnett

On Sunday, 19 June 2011 at 12:50 PM, David Winslow wrote:

Hi all,

I’ve been having test failures locally on geoserver trunk for some time, but since I am not all that active there and no one else seems to be complaining I didn’t bring it up on the list. Today I finally found some time to investigate, and actually found two issues. Now I get all tests passing :slight_smile:

  1. xerces version conflict - For most modules in GeoServer is identifying xercesImpl 2.6.2 as the correct one to include on the classpath, however for org.geoserver:main it is using 2.4.0. This is causing AbstractMethodError’s at runtime, as you might expect. I tried bumping the version in geoserver’s main pom to 2.6.2 and tests pass, any objections to committing it?
  2. networking in coverage setup - this one is a little weird… redhat based systems like my fedora laptop have a weird glitch where setting a custom hostname during the install process doesn’t necessarily update the /etc/hosts file, then some programs have issues when “myname.localdomain” doesn’t resolve. The JVM seems to be one of those programs. Ok, so I fixed my hosts file. The weird part is that I was running into those errors during setup of coveragestores in mock data directories for GeoServer’s unit tests, should there be networking going on during this operation? I’m attaching a stack trace for one of the failing tests to this mail.


David Winslow
OpenGeo - http://opengeo.org/


EditLive Enterprise is the world’s most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev


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

Attachments:

  • org.vfny.geoserver.ProjectionPolicyTest.txt

Looking into the xerces version hell for a bit; the root pom explicitly has 2.4.0 in the dependency management section.

GeoTools meanwhile has 2.7.1 - so my guess is most of the modules get xerces as a transitive dependency; and main that actually uses it directly is the odd fish out.

Blame provides the following for geotools:

59fbd7d9 (acuster 2008-05-08 15:02:00 +0000 862) 2.7.1

And the following for geoserver:

a86653f4 geoserver/pom.xml (jdeolive 2007-02-07 04:10:33 +0000 572) 2.4.0

So this appears to be a long standing issue? Any idea why it is hitting us today…


Jody Garnett

On Sunday, 19 June 2011 at 3:06 PM, Jody Garnett wrote:

Thanks David; I was just stressing over the xerces version conflict (trying to test geotools patches against geoserver). Please commit :slight_smile:
It is hard to cut down on networking going on during units tests; some classes like URL like to hit the network for hashcode and equals etc…


Jody Garnett

On Sunday, 19 June 2011 at 12:50 PM, David Winslow wrote:

Hi all,

I’ve been having test failures locally on geoserver trunk for some time, but since I am not all that active there and no one else seems to be complaining I didn’t bring it up on the list. Today I finally found some time to investigate, and actually found two issues. Now I get all tests passing :slight_smile:

  1. xerces version conflict - For most modules in GeoServer is identifying xercesImpl 2.6.2 as the correct one to include on the classpath, however for org.geoserver:main it is using 2.4.0. This is causing AbstractMethodError’s at runtime, as you might expect. I tried bumping the version in geoserver’s main pom to 2.6.2 and tests pass, any objections to committing it?
  2. networking in coverage setup - this one is a little weird… redhat based systems like my fedora laptop have a weird glitch where setting a custom hostname during the install process doesn’t necessarily update the /etc/hosts file, then some programs have issues when “myname.localdomain” doesn’t resolve. The JVM seems to be one of those programs. Ok, so I fixed my hosts file. The weird part is that I was running into those errors during setup of coveragestores in mock data directories for GeoServer’s unit tests, should there be networking going on during this operation? I’m attaching a stack trace for one of the failing tests to this mail.


David Winslow
OpenGeo - http://opengeo.org/


EditLive Enterprise is the world’s most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev


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

Attachments:

  • org.vfny.geoserver.ProjectionPolicyTest.txt

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have one failure in the flow control extension:


Test set: org.geoserver.flow.controller.UserFlowControllerTest

Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec <<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest) Time elapsed: 1.212 sec <<< FAILURE!
junit.framework.AssertionFailedError: expected: but was:
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:280)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)


Jody Garnett

On Sunday, 19 June 2011 at 3:26 PM, Jody Garnett wrote:

Looking into the xerces version hell for a bit; the root pom explicitly has 2.4.0 in the dependency management section.

GeoTools meanwhile has 2.7.1 - so my guess is most of the modules get xerces as a transitive dependency; and main that actually uses it directly is the odd fish out.

Blame provides the following for geotools:

59fbd7d9 (acuster 2008-05-08 15:02:00 +0000 862) 2.7.1

And the following for geoserver:

a86653f4 geoserver/pom.xml (jdeolive 2007-02-07 04:10:33 +0000 572) 2.4.0

So this appears to be a long standing issue? Any idea why it is hitting us today…


Jody Garnett

On Sunday, 19 June 2011 at 3:06 PM, Jody Garnett wrote:

Thanks David; I was just stressing over the xerces version conflict (trying to test geotools patches against geoserver). Please commit :slight_smile:
It is hard to cut down on networking going on during units tests; some classes like URL like to hit the network for hashcode and equals etc…


Jody Garnett

On Sunday, 19 June 2011 at 12:50 PM, David Winslow wrote:

Hi all,

I’ve been having test failures locally on geoserver trunk for some time, but since I am not all that active there and no one else seems to be complaining I didn’t bring it up on the list. Today I finally found some time to investigate, and actually found two issues. Now I get all tests passing :slight_smile:

  1. xerces version conflict - For most modules in GeoServer is identifying xercesImpl 2.6.2 as the correct one to include on the classpath, however for org.geoserver:main it is using 2.4.0. This is causing AbstractMethodError’s at runtime, as you might expect. I tried bumping the version in geoserver’s main pom to 2.6.2 and tests pass, any objections to committing it?
  2. networking in coverage setup - this one is a little weird… redhat based systems like my fedora laptop have a weird glitch where setting a custom hostname during the install process doesn’t necessarily update the /etc/hosts file, then some programs have issues when “myname.localdomain” doesn’t resolve. The JVM seems to be one of those programs. Ok, so I fixed my hosts file. The weird part is that I was running into those errors during setup of coveragestores in mock data directories for GeoServer’s unit tests, should there be networking going on during this operation? I’m attaching a stack trace for one of the failing tests to this mail.


David Winslow
OpenGeo - http://opengeo.org/


EditLive Enterprise is the world’s most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev


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

Attachments:

  • org.vfny.geoserver.ProjectionPolicyTest.txt

On Sun, Jun 19, 2011 at 8:05 AM, Jody Garnett <jody.garnett@anonymised.com> wrote:

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have
one failure in the flow control extension:
-------------------------------------------------------------------------------
Test set: org.geoserver.flow.controller.UserFlowControllerTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec
<<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest)
Time elapsed: 1.212 sec <<< FAILURE!
junit.framework.AssertionFailedError: expected:<PROCESSING> but
was:<STARTED>
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:280)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at
org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)

Yeah, these random exception occur every now and then on other
systems... but not on my machines and very rarely on the build box...

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: +39 0584 962313
fax: +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

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

Yes, I saw this behavior on oracle jvm 1.6.0_26 and whichever openjdk
release is current in fedora (I'm not currently at my computer.) I
haven't tried with a java 5 setup since I started having trouble on
this machine.

--
David Winslow
OpenGeo - http://opengeo.org/

On Sunday, June 19, 2011, Andrea Aime <andrea.aime@anonymised.com> wrote:

On Sun, Jun 19, 2011 at 8:05 AM, Jody Garnett <jody.garnett@anonymised.com> wrote:

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have
one failure in the flow control extension:
-------------------------------------------------------------------------------
Test set: org.geoserver.flow.controller.UserFlowControllerTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec
<<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest)
Time elapsed: 1.212 sec <<< FAILURE!
junit.framework.AssertionFailedError: expected:<PROCESSING> but
was:<STARTED>
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:280)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at
org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)

Yeah, these random exception occur every now and then on other
systems... but not on my machines and very rarely on the build box...

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: +39 0584 962313
fax: +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

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

Yes, I saw this behavior on oracle jvm 1.6.0_26 and whichever openjdk
release is current in fedora (I'm not currently at my computer.) I
haven't tried with a java 5 setup since I started having trouble on
this machine.

--
David Winslow
OpenGeo - http://opengeo.org/

On Sunday, June 19, 2011, Andrea Aime <andrea.aime@anonymised.com> wrote:

On Sun, Jun 19, 2011 at 8:05 AM, Jody Garnett <jody.garnett@anonymised.com> wrote:

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have
one failure in the flow control extension:
-------------------------------------------------------------------------------
Test set: org.geoserver.flow.controller.UserFlowControllerTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec
<<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest)
Time elapsed: 1.212 sec <<< FAILURE!
junit.framework.AssertionFailedError: expected:<PROCESSING> but
was:<STARTED>
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:280)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at
org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)

Yeah, these random exception occur every now and then on other
systems... but not on my machines and very rarely on the build box...

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: +39 0584 962313
fax: +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

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

Yes, I saw this behavior on oracle jvm 1.6.0_26 and whichever openjdk
release is current in fedora (I'm not currently at my computer.) I
haven't tried with a java 5 setup since I started having trouble on
this machine.

--
David Winslow
OpenGeo - http://opengeo.org/

On Sunday, June 19, 2011, Andrea Aime <andrea.aime@anonymised.com> wrote:

On Sun, Jun 19, 2011 at 8:05 AM, Jody Garnett <jody.garnett@anonymised.com> wrote:

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have
one failure in the flow control extension:
-------------------------------------------------------------------------------
Test set: org.geoserver.flow.controller.UserFlowControllerTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec
<<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest)
Time elapsed: 1.212 sec <<< FAILURE!
junit.framework.AssertionFailedError: expected:<PROCESSING> but
was:<STARTED>
at junit.framework.Assert.fail(Assert.java:47)
at junit.framework.Assert.failNotEquals(Assert.java:280)
at junit.framework.Assert.assertEquals(Assert.java:64)
at junit.framework.Assert.assertEquals(Assert.java:71)
at
org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)

Yeah, these random exception occur every now and then on other
systems... but not on my machines and very rarely on the build box...

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: +39 0584 962313
fax: +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

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

Jody, here is the bug report I filed for this issue:
GEOS-4462: Intermittent control-flow {User,Global}FlowControllerTest failures break build
http://jira.codehaus.org/browse/GEOS-4462

On 19/06/11 14:57, Andrea Aime wrote:

On Sun, Jun 19, 2011 at 8:05 AM, Jody Garnett<jody.garnett@anonymised.com> wrote:

After you hint to use xerces 2.7.1 most of geoserver builds for me; I have
one failure in the flow control extension:
-------------------------------------------------------------------------------
Test set: org.geoserver.flow.controller.UserFlowControllerTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.226 sec
<<< FAILURE!
testConcurrentRequestsSingleUser(org.geoserver.flow.controller.UserFlowControllerTest)
  Time elapsed: 1.212 sec<<< FAILURE!
junit.framework.AssertionFailedError: expected:<PROCESSING> but
was:<STARTED>
         at junit.framework.Assert.fail(Assert.java:47)
         at junit.framework.Assert.failNotEquals(Assert.java:280)
         at junit.framework.Assert.assertEquals(Assert.java:64)
         at junit.framework.Assert.assertEquals(Assert.java:71)
         at
org.geoserver.flow.controller.UserFlowControllerTest.testConcurrentRequestsSingleUser(UserFlowControllerTest.java:49)

Yeah, these random exception occur every now and then on other
systems... but not on my machines and very rarely on the build box...

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
Ben Caradoc-Davies <Ben.Caradoc-Davies@anonymised.com>
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

Justin you will need this change for
http://jira.codehaus.org/browse/GEOS-4631

As for Xerces, I believe you are both building with java 6 already?
I found that removing the dependency solid (from the main pom) made
the build work fine, too

Cheers
Andrea

--
-------------------------------------------------------
Ing. Andrea Aime
GeoSolutions S.A.S.
Tech lead

Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: +39 0584 962313
fax: +39 0584 962313

http://www.geo-solutions.it
http://geo-solutions.blogspot.com/
http://www.youtube.com/user/GeoSolutionsIT
http://www.linkedin.com/in/andreaaime
http://twitter.com/geowolf

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