You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by Tom LAMPERT <t....@laboquantup.eu> on 2014/10/28 22:21:51 UTC

Lucene version compatibility

Hello,

Does anyone know whether it is possible to upgrade the version of lucene that mahout's lucene.vector and luecene2seq functions are compatible with? Currently they require lucene 4.6.1 indexes but this version is already quite dated...

Kind regards,

Tom

Re: Lucene version compatibility

Posted by Suneel Marthi <su...@gmail.com>.
It's expected. There have been constant api changes between lucene versions and the code may need some tweaking. All the errors u r seeing are in mahout-integration which Culd be from lucene2seq utility which is tightly bound to lucene. Go with the latest lucene version and please open a Jira and feel free to submit a patch.

Sent from my iPhone

> On Oct 30, 2014, at 9:13 AM, Tom LAMPERT <t....@laboquantup.eu> wrote:
> 
> Thanks, but as soon as it is changed to anything higher (I've tried 4.7, 4.8, 4.9, and 4.10.1) then compilation errors result. For example, using 4.10.1 (LUCENE_4_10_1) the following errors are observed (these are different depending upon which version is used):
> 
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[29,31] cannot find symbol
>  symbol:   class BufferedIndexOutput
>  location: package org.apache.lucene.store
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[305,47] cannot find symbol
>  symbol:   class BufferedIndexOutput
>  location: class org.apache.mahout.text.ReadOnlyFileSystemDirectory
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[163,12] incompatible types
>  required: org.apache.lucene.store.IndexOutput
>  found:    org.apache.mahout.text.ReadOnlyFileSystemDirectory.FileSystemIndexOutput
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[178,23] <anonymous org.apache.mahout.text.ReadOnlyFileSystemDirectory$1> is not abstract and does not override abstract method close() in org.apache.lucene.store.Lock
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[319,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[327,14] abstract method close() in org.apache.lucene.store.Directory cannot be accessed directly
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[324,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[335,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[340,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[345,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/LuceneSegmentRecordReader.java:[67,20] method scorer in class org.apache.lucene.search.Weight cannot be applied to given types;
>  required: org.apache.lucene.index.AtomicReaderContext,org.apache.lucene.util.Bits
>  found: org.apache.lucene.index.AtomicReaderContext,boolean,boolean,<nulltype>
>  reason: actual and formal argument lists differ in length
> [INFO] 11 errors 
> [INFO] -------------------------------------------------------------
> [INFO] ------------------------------------------------------------------------
> [INFO] Reactor Summary:
> [INFO] 
> [INFO] Mahout Build Tools ................................ SUCCESS [  1.808 s]
> [INFO] Apache Mahout ..................................... SUCCESS [  0.437 s]
> [INFO] Mahout Math ....................................... SUCCESS [ 11.337 s]
> [INFO] Mahout MapReduce Legacy ........................... SUCCESS [ 15.163 s]
> [INFO] Mahout Integration ................................ FAILURE [  1.416 s]
> [INFO] Mahout Examples ................................... SKIPPED
> [INFO] Mahout Release Package ............................ SKIPPED
> [INFO] Mahout Math/Scala wrappers ........................ SKIPPED
> [INFO] Mahout Spark bindings ............................. SKIPPED
> [INFO] Mahout Spark bindings shell ....................... SKIPPED
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 30.612 s
> [INFO] Finished at: 2014-10-30T06:10:11-08:00
> [INFO] Final Memory: 52M/411M
> [INFO] ------------------------------------------------------------------------
> [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project mahout-integration: Compilation failure: Compilation failure:
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[29,31] cannot find symbol
> [ERROR] symbol:   class BufferedIndexOutput
> [ERROR] location: package org.apache.lucene.store
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[305,47] cannot find symbol
> [ERROR] symbol:   class BufferedIndexOutput
> [ERROR] location: class org.apache.mahout.text.ReadOnlyFileSystemDirectory
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[163,12] incompatible types
> [ERROR] required: org.apache.lucene.store.IndexOutput
> [ERROR] found:    org.apache.mahout.text.ReadOnlyFileSystemDirectory.FileSystemIndexOutput
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[178,23] <anonymous org.apache.mahout.text.ReadOnlyFileSystemDirectory$1> is not abstract and does not override abstract method close() in org.apache.lucene.store.Lock
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[319,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[327,14] abstract method close() in org.apache.lucene.store.Directory cannot be accessed directly
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[324,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[335,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[340,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[345,5] method does not override or implement a method from a supertype
> [ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/LuceneSegmentRecordReader.java:[67,20] method scorer in class org.apache.lucene.search.Weight cannot be applied to given types;
> [ERROR] required: org.apache.lucene.index.AtomicReaderContext,org.apache.lucene.util.Bits
> [ERROR] found: org.apache.lucene.index.AtomicReaderContext,boolean,boolean,<nulltype>
> [ERROR] reason: actual and formal argument lists differ in length
> 
> 
> 
> ________________________________________
> From: Suneel Marthi <sm...@apache.org>
> Sent: 29 October 2014 21:56
> To: user@mahout.apache.org
> Subject: Re: Lucene version compatibility
> 
> u need to update the Lucene Jars in pom.xml to relevant versions.
> 
> On Wed, Oct 29, 2014 at 4:50 PM, Tom LAMPERT <t....@laboquantup.eu>
> wrote:
> 
>> Hi Suneel,
>> 
>> Thank you for your help but replacing all instances of LUCENE_46 with
>> LUCENE_410 (or 47, 48, etc) results in a 'cannot find symbol' error:
>> 
>> ERROR]
>> /mahout/trunk/mrlegacy/src/main/java/org/apache/mahout/common/lucene/AnalyzerUtils.java:[35,53]
>> cannot find symbol
>> [ERROR] symbol:   variable LUCENE_47
>> [ERROR] location: class org.apache.lucene.util.Version
>> 
>> Should I also be replacing some lucene jars?
>> 
>> Kind regards,
>> 
>> Tom
>> 
>> ________________________________________
>> From: Suneel Marthi <sm...@apache.org>
>> Sent: 28 October 2014 22:33
>> To: user@mahout.apache.org
>> Subject: Re: Lucene version compatibility
>> 
>> Yes it should be possible, and we have been upgrading to the latest and
>> greatest Lucene versions at the point of Release and may be a trivial
>> change.
>> Just gotta replace all references in the code for 'Version_46' with
>> 'Version_<Latest>'.
>> 
>> Also Lucene >= 4.7 mandate Java 1.7.
>> 
>> On Tue, Oct 28, 2014 at 5:21 PM, Tom LAMPERT <t....@laboquantup.eu>
>> wrote:
>> 
>>> Hello,
>>> 
>>> Does anyone know whether it is possible to upgrade the version of lucene
>>> that mahout's lucene.vector and luecene2seq functions are compatible
>> with?
>>> Currently they require lucene 4.6.1 indexes but this version is already
>>> quite dated...
>>> 
>>> Kind regards,
>>> 
>>> Tom

Re: Lucene version compatibility

Posted by Tom LAMPERT <t....@laboquantup.eu>.
Thanks, but as soon as it is changed to anything higher (I've tried 4.7, 4.8, 4.9, and 4.10.1) then compilation errors result. For example, using 4.10.1 (LUCENE_4_10_1) the following errors are observed (these are different depending upon which version is used):

[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[29,31] cannot find symbol
  symbol:   class BufferedIndexOutput
  location: package org.apache.lucene.store
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[305,47] cannot find symbol
  symbol:   class BufferedIndexOutput
  location: class org.apache.mahout.text.ReadOnlyFileSystemDirectory
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[163,12] incompatible types
  required: org.apache.lucene.store.IndexOutput
  found:    org.apache.mahout.text.ReadOnlyFileSystemDirectory.FileSystemIndexOutput
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[178,23] <anonymous org.apache.mahout.text.ReadOnlyFileSystemDirectory$1> is not abstract and does not override abstract method close() in org.apache.lucene.store.Lock
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[319,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[327,14] abstract method close() in org.apache.lucene.store.Directory cannot be accessed directly
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[324,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[335,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[340,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[345,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/LuceneSegmentRecordReader.java:[67,20] method scorer in class org.apache.lucene.search.Weight cannot be applied to given types;
  required: org.apache.lucene.index.AtomicReaderContext,org.apache.lucene.util.Bits
  found: org.apache.lucene.index.AtomicReaderContext,boolean,boolean,<nulltype>
  reason: actual and formal argument lists differ in length
[INFO] 11 errors 
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Mahout Build Tools ................................ SUCCESS [  1.808 s]
[INFO] Apache Mahout ..................................... SUCCESS [  0.437 s]
[INFO] Mahout Math ....................................... SUCCESS [ 11.337 s]
[INFO] Mahout MapReduce Legacy ........................... SUCCESS [ 15.163 s]
[INFO] Mahout Integration ................................ FAILURE [  1.416 s]
[INFO] Mahout Examples ................................... SKIPPED
[INFO] Mahout Release Package ............................ SKIPPED
[INFO] Mahout Math/Scala wrappers ........................ SKIPPED
[INFO] Mahout Spark bindings ............................. SKIPPED
[INFO] Mahout Spark bindings shell ....................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 30.612 s
[INFO] Finished at: 2014-10-30T06:10:11-08:00
[INFO] Final Memory: 52M/411M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project mahout-integration: Compilation failure: Compilation failure:
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[29,31] cannot find symbol
[ERROR] symbol:   class BufferedIndexOutput
[ERROR] location: package org.apache.lucene.store
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[305,47] cannot find symbol
[ERROR] symbol:   class BufferedIndexOutput
[ERROR] location: class org.apache.mahout.text.ReadOnlyFileSystemDirectory
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[163,12] incompatible types
[ERROR] required: org.apache.lucene.store.IndexOutput
[ERROR] found:    org.apache.mahout.text.ReadOnlyFileSystemDirectory.FileSystemIndexOutput
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[178,23] <anonymous org.apache.mahout.text.ReadOnlyFileSystemDirectory$1> is not abstract and does not override abstract method close() in org.apache.lucene.store.Lock
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[319,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[327,14] abstract method close() in org.apache.lucene.store.Directory cannot be accessed directly
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[324,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[335,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[340,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/ReadOnlyFileSystemDirectory.java:[345,5] method does not override or implement a method from a supertype
[ERROR] /mahout/trunk/integration/src/main/java/org/apache/mahout/text/LuceneSegmentRecordReader.java:[67,20] method scorer in class org.apache.lucene.search.Weight cannot be applied to given types;
[ERROR] required: org.apache.lucene.index.AtomicReaderContext,org.apache.lucene.util.Bits
[ERROR] found: org.apache.lucene.index.AtomicReaderContext,boolean,boolean,<nulltype>
[ERROR] reason: actual and formal argument lists differ in length



________________________________________
From: Suneel Marthi <sm...@apache.org>
Sent: 29 October 2014 21:56
To: user@mahout.apache.org
Subject: Re: Lucene version compatibility

u need to update the Lucene Jars in pom.xml to relevant versions.

On Wed, Oct 29, 2014 at 4:50 PM, Tom LAMPERT <t....@laboquantup.eu>
wrote:

> Hi Suneel,
>
> Thank you for your help but replacing all instances of LUCENE_46 with
> LUCENE_410 (or 47, 48, etc) results in a 'cannot find symbol' error:
>
> ERROR]
> /mahout/trunk/mrlegacy/src/main/java/org/apache/mahout/common/lucene/AnalyzerUtils.java:[35,53]
> cannot find symbol
> [ERROR] symbol:   variable LUCENE_47
> [ERROR] location: class org.apache.lucene.util.Version
>
> Should I also be replacing some lucene jars?
>
> Kind regards,
>
> Tom
>
> ________________________________________
> From: Suneel Marthi <sm...@apache.org>
> Sent: 28 October 2014 22:33
> To: user@mahout.apache.org
> Subject: Re: Lucene version compatibility
>
> Yes it should be possible, and we have been upgrading to the latest and
> greatest Lucene versions at the point of Release and may be a trivial
> change.
> Just gotta replace all references in the code for 'Version_46' with
> 'Version_<Latest>'.
>
> Also Lucene >= 4.7 mandate Java 1.7.
>
> On Tue, Oct 28, 2014 at 5:21 PM, Tom LAMPERT <t....@laboquantup.eu>
> wrote:
>
> > Hello,
> >
> > Does anyone know whether it is possible to upgrade the version of lucene
> > that mahout's lucene.vector and luecene2seq functions are compatible
> with?
> > Currently they require lucene 4.6.1 indexes but this version is already
> > quite dated...
> >
> > Kind regards,
> >
> > Tom
>

Re: Lucene version compatibility

Posted by Suneel Marthi <sm...@apache.org>.
u need to update the Lucene Jars in pom.xml to relevant versions.

On Wed, Oct 29, 2014 at 4:50 PM, Tom LAMPERT <t....@laboquantup.eu>
wrote:

> Hi Suneel,
>
> Thank you for your help but replacing all instances of LUCENE_46 with
> LUCENE_410 (or 47, 48, etc) results in a 'cannot find symbol' error:
>
> ERROR]
> /mahout/trunk/mrlegacy/src/main/java/org/apache/mahout/common/lucene/AnalyzerUtils.java:[35,53]
> cannot find symbol
> [ERROR] symbol:   variable LUCENE_47
> [ERROR] location: class org.apache.lucene.util.Version
>
> Should I also be replacing some lucene jars?
>
> Kind regards,
>
> Tom
>
> ________________________________________
> From: Suneel Marthi <sm...@apache.org>
> Sent: 28 October 2014 22:33
> To: user@mahout.apache.org
> Subject: Re: Lucene version compatibility
>
> Yes it should be possible, and we have been upgrading to the latest and
> greatest Lucene versions at the point of Release and may be a trivial
> change.
> Just gotta replace all references in the code for 'Version_46' with
> 'Version_<Latest>'.
>
> Also Lucene >= 4.7 mandate Java 1.7.
>
> On Tue, Oct 28, 2014 at 5:21 PM, Tom LAMPERT <t....@laboquantup.eu>
> wrote:
>
> > Hello,
> >
> > Does anyone know whether it is possible to upgrade the version of lucene
> > that mahout's lucene.vector and luecene2seq functions are compatible
> with?
> > Currently they require lucene 4.6.1 indexes but this version is already
> > quite dated...
> >
> > Kind regards,
> >
> > Tom
>

Re: Lucene version compatibility

Posted by Tom LAMPERT <t....@laboquantup.eu>.
Hi Suneel,

Thank you for your help but replacing all instances of LUCENE_46 with LUCENE_410 (or 47, 48, etc) results in a 'cannot find symbol' error:

ERROR] /mahout/trunk/mrlegacy/src/main/java/org/apache/mahout/common/lucene/AnalyzerUtils.java:[35,53] cannot find symbol
[ERROR] symbol:   variable LUCENE_47
[ERROR] location: class org.apache.lucene.util.Version

Should I also be replacing some lucene jars?

Kind regards,

Tom

________________________________________
From: Suneel Marthi <sm...@apache.org>
Sent: 28 October 2014 22:33
To: user@mahout.apache.org
Subject: Re: Lucene version compatibility

Yes it should be possible, and we have been upgrading to the latest and
greatest Lucene versions at the point of Release and may be a trivial
change.
Just gotta replace all references in the code for 'Version_46' with
'Version_<Latest>'.

Also Lucene >= 4.7 mandate Java 1.7.

On Tue, Oct 28, 2014 at 5:21 PM, Tom LAMPERT <t....@laboquantup.eu>
wrote:

> Hello,
>
> Does anyone know whether it is possible to upgrade the version of lucene
> that mahout's lucene.vector and luecene2seq functions are compatible with?
> Currently they require lucene 4.6.1 indexes but this version is already
> quite dated...
>
> Kind regards,
>
> Tom

Re: Lucene version compatibility

Posted by Suneel Marthi <sm...@apache.org>.
Yes it should be possible, and we have been upgrading to the latest and
greatest Lucene versions at the point of Release and may be a trivial
change.
Just gotta replace all references in the code for 'Version_46' with
'Version_<Latest>'.

Also Lucene >= 4.7 mandate Java 1.7.

On Tue, Oct 28, 2014 at 5:21 PM, Tom LAMPERT <t....@laboquantup.eu>
wrote:

> Hello,
>
> Does anyone know whether it is possible to upgrade the version of lucene
> that mahout's lucene.vector and luecene2seq functions are compatible with?
> Currently they require lucene 4.6.1 indexes but this version is already
> quite dated...
>
> Kind regards,
>
> Tom