Quantcast

Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

steve_rowe
On 5/20/2011 at 7:58 AM, Apache Jenkins Server wrote:
> Build: https://builds.apache.org/hudson/job/Lucene-Solr-Maven-3.x/128/

There is some kind of problem with compiling the Solr clustering contrib under Java 1.5:

[INFO] Compiling 10 source files to /usr/home/hudson/hudson-slave/workspace/Lucene-Solr-Maven-3.x/checkout/solr/contrib/clustering/build/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Failure executing javac, but could not parse the error:
An exception has occurred in the compiler (1.5.0_16-p9). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report.  Thank you.
com.sun.tools.javac.code.Symbol$CompletionFailure: file org/simpleframework/xml/Root.class not found

I can repro on my Win7 box with Oracle JDK 1.5.0_22.

Steve
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

steve_rowe
This looks like a Maven-only problem, since compilation under Ant succeeds. - Steve

> -----Original Message-----
> From: Steven A Rowe [mailto:[hidden email]]
> Sent: Friday, May 20, 2011 8:51 AM
> To: [hidden email]
> Subject: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was:
> [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]
>
> On 5/20/2011 at 7:58 AM, Apache Jenkins Server wrote:
> > Build: https://builds.apache.org/hudson/job/Lucene-Solr-Maven-3.x/128/
>
> There is some kind of problem with compiling the Solr clustering contrib
> under Java 1.5:
>
> [INFO] Compiling 10 source files to /usr/home/hudson/hudson-
> slave/workspace/Lucene-Solr-Maven-
> 3.x/checkout/solr/contrib/clustering/build/classes
> [INFO] -------------------------------------------------------------
> [ERROR] COMPILATION ERROR :
> [INFO] -------------------------------------------------------------
> [ERROR] Failure executing javac, but could not parse the error:
> An exception has occurred in the compiler (1.5.0_16-p9). Please file a
> bug at the Java Developer Connection
> (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade
> for duplicates. Include your program and the following diagnostic in your
> report.  Thank you.
> com.sun.tools.javac.code.Symbol$CompletionFailure: file
> org/simpleframework/xml/Root.class not found
>
> I can repro on my Win7 box with Oracle JDK 1.5.0_22.
>
> Steve
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

steve_rowe
When Stanisław committed SOLR-2448 to branch_3x in r1103746, he removed the dependency on the library that contains the missing class org.simpleframework.xml.Root:

> -    <dependency>
> -      <groupId>org.simpleframework</groupId>
> -      <artifactId>simple-xml</artifactId>
> -      <version>2.3.5</version>
> -    </dependency>

Stanisław, were you expecting that this dependency would be resolved transitively?  If so, there seems to be a problem, because when I run "mvn dependency:resolve -X", simple-xml is not listed.

The simplest solution here, AFAICT, is to restore the simple-xml dependency.  When I do that, the build succeeds.

Steve

> -----Original Message-----
> From: Steven A Rowe [mailto:[hidden email]]
> Sent: Friday, May 20, 2011 8:55 AM
> To: [hidden email]
> Subject: RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/
> [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]
>
> This looks like a Maven-only problem, since compilation under Ant
> succeeds. - Steve
>
> > -----Original Message-----
> > From: Steven A Rowe [mailto:[hidden email]]
> > Sent: Friday, May 20, 2011 8:51 AM
> > To: [hidden email]
> > Subject: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was:
> > [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]
> >
> > On 5/20/2011 at 7:58 AM, Apache Jenkins Server wrote:
> > > Build: https://builds.apache.org/hudson/job/Lucene-Solr-Maven-
> 3.x/128/
> >
> > There is some kind of problem with compiling the Solr clustering
> contrib
> > under Java 1.5:
> >
> > [INFO] Compiling 10 source files to /usr/home/hudson/hudson-
> > slave/workspace/Lucene-Solr-Maven-
> > 3.x/checkout/solr/contrib/clustering/build/classes
> > [INFO] -------------------------------------------------------------
> > [ERROR] COMPILATION ERROR :
> > [INFO] -------------------------------------------------------------
> > [ERROR] Failure executing javac, but could not parse the error:
> > An exception has occurred in the compiler (1.5.0_16-p9). Please file a
> > bug at the Java Developer Connection
> > (http://java.sun.com/webapps/bugreport)  after checking the Bug Parade
> > for duplicates. Include your program and the following diagnostic in
> your
> > report.  Thank you.
> > com.sun.tools.javac.code.Symbol$CompletionFailure: file
> > org/simpleframework/xml/Root.class not found
> >
> > I can repro on my Win7 box with Oracle JDK 1.5.0_22.
> >
> > Steve
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

Stanislaw Osinski-4
Hi Steve,

When Stanisław committed SOLR-2448 to branch_3x in r1103746, he removed the dependency on the library that contains the missing class org.simpleframework.xml.Root:

> -    <dependency>
> -      <groupId>org.simpleframework</groupId>
> -      <artifactId>simple-xml</artifactId>
> -      <version>2.3.5</version>
> -    </dependency>

Stanisław, were you expecting that this dependency would be resolved transitively?  If so, there seems to be a problem, because when I run "mvn dependency:resolve -X", simple-xml is not listed.

The simplest solution here, AFAICT, is to restore the simple-xml dependency.  When I do that, the build succeeds.

My fault, please go ahead and add it back (a newer version is required though):

<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
<version>2.4.1</version>
</dependency>

I'm assuming trunk does not suffer from this issue?

Staszek
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

Stanislaw Osinski-4
The simplest solution here, AFAICT, is to restore the simple-xml dependency.  When I do that, the build succeeds.

My fault, please go ahead and add it back (a newer version is required though):

<dependency>
<groupId>org.simpleframework</groupId>
<artifactId>simple-xml</artifactId>
<version>2.4.1</version>
</dependency>

One more thing: SimpleXML is required during compilation (annotations), but it's not needed when running clustering within Solr. So I think a dependency with the "compile" scope should do too.

S.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

steve_rowe
In reply to this post by Stanislaw Osinski-4
Hi Staszek,

On 5/20/2011 at 9:51 AM, Stanislaw Osinski wrote:
> My fault, please go ahead and add it back (a newer version is
> required though):
>
> <dependency>
> <groupId>org.simpleframework</groupId>
> <artifactId>simple-xml</artifactId>
> <version>2.4.1</version>
> </dependency>

The jar checked into SVN, both on trunk and on branch_3x, is solr/contrib/clustering/lib/simple-xml-2.3.5.jar, which means that the Ant build is using this older version on both branches - shouldn't this also be upgraded to 2.4.1?

> I'm assuming trunk does not suffer from this issue?

Right, the official v3.5.0 carrot2-core POM includes the simple-xml dependency, while the Solr version (at solr/contrib/clustering/lib/solr-carrot2-core-pom.xml.template) does not (or did not, until you added it a few minutes ago).

> One more thing: SimpleXML is required during compilation
> (annotations), but it's not needed when running clustering
> within Solr. So I think a dependency with the "compile"
> scope should do too.

I think "provided" scope is the one we want here, since we want to exclude it as a transitive dependency (just like the servlet-api jar):

<http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope>

Steve

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

Stanislaw Osinski-4
The jar checked into SVN, both on trunk and on branch_3x, is solr/contrib/clustering/lib/simple-xml-2.3.5.jar, which means that the Ant build is using this older version on both branches - shouldn't this also be upgraded to 2.4.1?

In fact, Solr clustering plugin just needs a number of annotations from that JAR to compile, and these didn't change, so 2.3.5 should do the job just fine.

> I'm assuming trunk does not suffer from this issue?

Right, the official v3.5.0 carrot2-core POM includes the simple-xml dependency, while the Solr version (at solr/contrib/clustering/lib/solr-carrot2-core-pom.xml.template) does not (or did not, until you added it a few minutes ago).

> One more thing: SimpleXML is required during compilation
> (annotations), but it's not needed when running clustering
> within Solr. So I think a dependency with the "compile"
> scope should do too.

I think "provided" scope is the one we want here, since we want to exclude it as a transitive dependency (just like the servlet-api jar):

<http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope>

Good point! I've just made that change locally and it turns out that "provided" is not transitive, so we'd need to add the dependency to solr-clustering POM (instead of Carrot2's). I'm fine with either solution (keeping SimpleXML in Carrot2 POM with the default scope or in solr-clustering with provided scope), though I'm assuming the latter will save the consumers one JAR in their classpaths. Just let me know which one you'd prefer.

S.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

steve_rowe
On 5/20/2011 at 2:58 PM, Stanislaw Osinski wrote:
> > The jar checked into SVN, both on trunk and on branch_3x,
> > is solr/contrib/clustering/lib/simple-xml-2.3.5.jar, which
> > means that the Ant build is using this older version on
> > both branches - shouldn't this also be upgraded to 2.4.1?
>
> In fact, Solr clustering plugin just needs a number of
> annotations from that JAR to compile, and these didn't
> change, so 2.3.5 should do the job just fine.

While it doesn't appear to be a problem in this particular case, I'm very uncomfortable with different dependency versions being used, depending on which build system you're using.  Since the trunk version depends on v2.4.1 under Maven through the official carrot2-core POM, I think the only option here is to upgrade this dependency for the Ant build in both branches.  If you don't want to do it, I will.

> > > One more thing: SimpleXML is required during compilation
> > > (annotations), but it's not needed when running clustering
> > > within Solr. So I think a dependency with the "compile"
> > > scope should do too.
> >
> > I think "provided" scope is the one we want here, since we
> > want to exclude it as a transitive dependency (just like the
> > servlet-api jar):
> >
> > <http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope>
>
> Good point! I've just made that change locally and it turns out
> that "provided" is not transitive, so we'd need to add the
> dependency to solr-clustering POM (instead of Carrot2's).

I hadn't thought of that, but you're absolutely right!

> I'm fine with either solution (keeping SimpleXML in Carrot2 POM
> with the default scope or in solr-clustering with provided scope),
> though I'm assuming the latter will save the consumers one JAR
> in their classpaths. Just let me know which one you'd prefer.

I'm not sure - I'll leave it up to you - but I think consistency is important, and the trunk version under Maven does the former, as specified by the official carrot2-core POM.

Steve

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Branch 3.x build failure w/1.5: solr/contrib/clustering/ [was: [JENKINS-MAVEN] Lucene-Solr-Maven-3.x #128: POMs out of sync]

Stanislaw Osinski-4
While it doesn't appear to be a problem in this particular case, I'm very uncomfortable with different dependency versions being used, depending on which build system you're using.  Since the trunk version depends on v2.4.1 under Maven through the official carrot2-core POM, I think the only option here is to upgrade this dependency for the Ant build in both branches.  If you don't want to do it, I will.

No problem with that at all, I'll update the JAR in a second.
 
I'm not sure - I'll leave it up to you - but I think consistency is important, and the trunk version under Maven does the former, as specified by the official carrot2-core POM.

You're right. Let's stick with the dependency in Carrot2 POM for consistency and locality. I'll update the POM in a second too.

S.


Loading...