You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Michael Young (JIRA)" <ji...@apache.org> on 2006/03/14 07:26:39 UTC

[jira] Created: (JCR-352) Upgrade to Lucene 1.9.1

Upgrade to Lucene 1.9.1
-----------------------

         Key: JCR-352
         URL: http://issues.apache.org/jira/browse/JCR-352
     Project: Jackrabbit
        Type: Improvement
    Versions: 1.1, 1.0.1, 1.0    
 Environment: All
    Reporter: Michael Young


We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Michael Young (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370421 ] 

Michael Young commented on JCR-352:
-----------------------------------

Jukka,

You were right. I deleted the indexes and everything is fine. I do think that an upgrade to lucene 1.9.1 or 2.x would be beneficial, if not now, then in the future. BTW, we are integrating Jackrabbit into the Liferay Portal core, replacing many components of our backend store with this JCR for our upcoming 4.0 release this month. If you would like you could add us as an example deployment on the wiki JcrLinks page. Congratulations on the awesome work!

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 1.0.1, 1.1
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370902 ] 

Jukka Zitting commented on JCR-352:
-----------------------------------

I tried changing the visibility of the difference() method, which did solve the compile problem, but now I get a ClassCastException from org.apache.lucene.store.Directory.createFile() when the repository is being initialized. This problem can be reconstructed like this after placing lucene/jars/lucene-1.9.1.jar in the local maven repository:

    $ svn export http://svn.apache.org/repos/asf/incubator/jackrabbit/branches/1.0/jackrabbit
    $ cd jackrabbit
    $ perl -i -pe 's/1.4.3/1.9.1/' project.xml
    $ perl -i -pe 's/protected float difference/public float difference/' \
      src/main/java/org/apache/jackrabbit/core/query/lucene/WildcardTermEnum.java
    $ maven test

This seems to have something to do with the "this method should be abstract" notice in the Lucene Directory.createOutput() method. The FSDirectory class in Jackrabbit doesn't seem to play well with the modified Directory implementation in Lucene 1.9.1.

If there is a similar simple and non-intrusive fix for this problem, then I can have the change included in 1.0, otherwise not. In any case I am going to keep Lucene 1.4.3 as the official dependency in Jackrabbit 1.0. A possible fix would be there just to help people deploy Jackrabbit 1.0 with Lucene 1.9.1.


> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370379 ] 

Jukka Zitting commented on JCR-352:
-----------------------------------

Isn't Lucene 1.9.1 backwards compatible with 1.4.3 used by Jackrabbit? If it is, then you should be able to simply use the more recent Lucene jar during deployment.

We may also want to consider upgrading directly to Lucene 2.0 that should be out in a few months. I'm not an expert on Lucene but it seems like they claim improved performance and greater flexibility in Lucene 2.0. Any Lucene experts hanging out here for a quick comment on whether we should upgrade?

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 1.0.1, 1.1
>  Environment: All
>     Reporter: Michael Young

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370936 ] 

Jukka Zitting commented on JCR-352:
-----------------------------------

OK, thanks for carrying this on.

This is actually a good example of things to keep in mind when evolving the Jackrabbit internals. Although the API itself remains virtually the same, the workaround support for deprecated methods seems to be erroneous. I suppose this is a case that hasn't received too much testing.

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Sascha Sadat-Guscheh (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12371010 ] 

Sascha Sadat-Guscheh commented on JCR-352:
------------------------------------------

any news on this issue? is it a lucene bug or just incompatibility?

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Michael Young (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370918 ] 

Michael Young commented on JCR-352:
-----------------------------------

I think this the FSIndexOutput is a Lucene bug. I see it too after replacing the jar.

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Alexandru Popescu (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370915 ] 

Alexandru Popescu commented on JCR-352:
---------------------------------------

Good catch Jukka. I guess this is impossible to have a quick fix (but I am not a Lucene expert, so I may be loosin some details).

jack.FSDirectory.createFile -> lucene.FSDirectory.createFile (= lucene.Directory.createFile) -> lucene.FSDirectory.createOutput => new FSIndexOutput(file)

and FSIndexOutput extends BufferedIndexOutput extends IndexOutput, while jack.FSDirectory (respectively) lucene.Director createFile must return an OutputStream.

Now, I am wondering if this is not a Lucene bug: calling a lucene.FSDirectory.createFile() results in returning a FSIndexOutput and so a ClassCastException.

I will try to post this question on Lucene ML,

./alex
--
.w( the_mindstorm )p.


> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Michael Young (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370394 ] 

Michael Young commented on JCR-352:
-----------------------------------

And yes, even lucene 1.9.1 claims performance improvements, and we're seeing some better performance on our indexing / searches in the internal Liferay indexes.

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JCR-352?page=all ]

Jukka Zitting updated JCR-352:
------------------------------

    Version: 0.9
                 (was: 1.1)
                 (was: 1.0.1)

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Michael Young (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370393 ] 

Michael Young commented on JCR-352:
-----------------------------------

It is backward compatible, but we're seeing some serialUID problems when jackrabbit tries to index using newer version. Would it be possible for someone to upgrade the trunk to 1.9.1 since it actually is backward compatible?

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Sascha Sadat-Guscheh (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12371014 ] 

Sascha Sadat-Guscheh commented on JCR-352:
------------------------------------------

quote: "When you call FSDirectory.openFile(String) you get a ClassCastException since FSIndexInput is not an org.apache.lucene.store.InputStream
The workaround is to reimplement using openInput(String)."

http://issues.apache.org/jira/browse/LUCENE-523?watch=true

can this be done in jcr?

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Alexandru Popescu (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370884 ] 

Alexandru Popescu commented on JCR-352:
---------------------------------------

I have followed the recommendation from Lucene ML and I have compiled Jackrabbit branch 1.0 code (384322) against the Lucene 1.9.1 distribution. 
There is an incompatibility but a really small one than can be patched right away:

org.apache.jackrabbit.core.query.lucene.WildcardTermEnum.difference(): the method is current protected, but in Lucene 1.9.1 FilteredTermEnum it is declared as public abstract.

So, if Jackrabbit 1.0 wants to be compatible with both Lucene versions it just needs to make this small change.

Do you think this would be possible for the 1.0rc2? (I guess there is no issue having such a small change).

./alex
--
.w( the_mindstorm )p.


> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Michael Young (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12370404 ] 

Michael Young commented on JCR-352:
-----------------------------------

I was just thinking the same thing. I will verify and let you know.

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Assigned: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JCR-352?page=all ]

Jukka Zitting reassigned JCR-352:
---------------------------------

    Assign To: Jukka Zitting

> It is backward compatible, but we're seeing some serialUID problems when jackrabbit
> tries to index using newer version.

Could you'r problem be caused by having an existing index generated with Lucene 1.4.3 being accessed by Lucene 1.9.1? If this is the case, then you should be safe by manually removing the index when you upgrade the Lucene jar. Jackrabbit will recreate the index when it is next started.

> Would it be possible for someone to upgrade the trunk to 1.9.1 since it actually is backward compatible?

I can do that unless anyone objects. (Assigned to me.) I'm a bit worried though about the compatibility problem you are mentioning. Is it possible for you to isolate the problem a bit more specifically?


> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.1, 1.0.1, 1.0
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (JCR-352) Upgrade to Lucene 1.9.1

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/JCR-352?page=comments#action_12371017 ] 

Jukka Zitting commented on JCR-352:
-----------------------------------

> quote: "When you call FSDirectory.openFile(String) you get a ClassCastException since FSIndexInput is not an
> org.apache.lucene.store.InputStream The workaround is to reimplement using openInput(String)." 

I think the openInput() method is only available since Lucene 1.9, so we can't use this workaround as long as we want to keep compatibility with Lucene 1.4.

PS. Here's the Lucene issue link without the embedded "watch this issue" action: http://issues.apache.org/jira/browse/LUCENE-523 :-) 

> Upgrade to Lucene 1.9.1
> -----------------------
>
>          Key: JCR-352
>          URL: http://issues.apache.org/jira/browse/JCR-352
>      Project: Jackrabbit
>         Type: Improvement
>     Versions: 1.0, 0.9
>  Environment: All
>     Reporter: Michael Young
>     Assignee: Jukka Zitting

>
> We would like to upgrade to Lucene 1.9.1. There are jar conflicts when integrating with other projects such as Liferay Portal --  which uses v 1.9.1.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira