[eclipse-dtp] Port to Lucene 4.
mbooth
mbooth at fedoraproject.org
Tue Mar 18 16:20:35 UTC 2014
commit 65d94572a9c64355be993c36597f8db9adb08bf6
Author: Mat Booth <fedora at matbooth.co.uk>
Date: Tue Mar 18 15:34:10 2014 +0000
Port to Lucene 4.
eclipse-dtp-lucene4-port.patch | 105 ++++++++++++++++++++++++++++++++++++++++
eclipse-dtp.spec | 27 ++++++++---
2 files changed, 125 insertions(+), 7 deletions(-)
---
diff --git a/eclipse-dtp-lucene4-port.patch b/eclipse-dtp-lucene4-port.patch
new file mode 100644
index 0000000..fba5d99
--- /dev/null
+++ b/eclipse-dtp-lucene4-port.patch
@@ -0,0 +1,105 @@
+--- plugins/org.eclipse.datatools.sqltools.result/META-INF/MANIFEST.MF.orig 2014-03-18 12:08:55.989782958 +0000
++++ plugins/org.eclipse.datatools.sqltools.result/META-INF/MANIFEST.MF 2014-03-18 12:50:38.716679214 +0000
+@@ -9,7 +9,9 @@
+ Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
+ org.eclipse.help;bundle-version="[3.2.0,4.0.0)",
+- org.apache.lucene.core;bundle-version="[2.9.0,4.0.0)",
++ org.apache.lucene.core;bundle-version="[4.0.0,5.0.0)",
++ org.apache.lucene.queryparser;bundle-version="[4.0.0,5.0.0)",
++ org.apache.lucene.analysis;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.datatools.connectivity;bundle-version="[1.0.0,2.0.0)"
+ Import-Package: com.ibm.icu.text;version="3.6.1",
+ com.ibm.icu.util;version="3.6.1"
+--- plugins/org.eclipse.datatools.sqltools.result/src/org/eclipse/datatools/sqltools/result/internal/index/ResultHistoryLuceneIndex.java.orig 2014-02-07 21:10:37.000000000 +0000
++++ plugins/org.eclipse.datatools.sqltools.result/src/org/eclipse/datatools/sqltools/result/internal/index/ResultHistoryLuceneIndex.java 2014-03-18 15:31:33.354079067 +0000
+@@ -23,12 +23,12 @@
+ import org.apache.lucene.document.Field;
+ import org.apache.lucene.index.IndexReader;
+ import org.apache.lucene.index.IndexWriter;
++import org.apache.lucene.index.IndexWriterConfig;
+ import org.apache.lucene.index.Term;
+-import org.apache.lucene.queryParser.ParseException;
+-import org.apache.lucene.queryParser.QueryParser;
++import org.apache.lucene.queryparser.classic.ParseException;
++import org.apache.lucene.queryparser.classic.QueryParser;
+ import org.apache.lucene.search.IndexSearcher;
+ import org.apache.lucene.search.Query;
+-import org.apache.lucene.search.Searcher;
+ import org.apache.lucene.search.TopDocs;
+ import org.apache.lucene.store.Directory;
+ import org.apache.lucene.store.RAMDirectory;
+@@ -70,7 +70,9 @@
+ // Create the index
+ try
+ {
+- _writer = new IndexWriter(_ramDir, _analyzer, true, IndexWriter.MaxFieldLength.UNLIMITED);
++ IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_CURRENT, _analyzer);
++ conf.setOpenMode(IndexWriterConfig.OpenMode.CREATE);
++ _writer = new IndexWriter(_ramDir, conf);
+ _writer.close();
+ }
+ catch(IOException ioe)
+@@ -109,7 +111,9 @@
+ try
+ {
+ // Append new document to the index
+- _writer = new IndexWriter(_ramDir, _analyzer, false, IndexWriter.MaxFieldLength.UNLIMITED);
++ IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_CURRENT, _analyzer);
++ conf.setOpenMode(IndexWriterConfig.OpenMode.APPEND);
++ _writer = new IndexWriter(_ramDir, conf);
+ for (int i = 0; i < instances.length; i++)
+ {
+ IResultInstance instance = instances[i];
+@@ -164,9 +168,11 @@
+ {
+ try
+ {
+- IndexReader reader = IndexReader.open(_ramDir, false);
+ if(instances != null)
+ {
++ IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_CURRENT, _analyzer);
++ conf.setOpenMode(IndexWriterConfig.OpenMode.APPEND);
++ _writer = new IndexWriter(_ramDir, conf);
+ IResultInstance instance = null;
+ for(int i=0;i<instances.length;i++)
+ {
+@@ -181,7 +187,7 @@
+ {
+ try
+ {
+- reader.deleteDocuments(new Term(FIELD_IDENTIFIER, id));
++ _writer.deleteDocuments(new Term(FIELD_IDENTIFIER, id));
+ }
+ catch(IOException ioe)
+ {
+@@ -190,7 +196,7 @@
+ }
+ }
+ }
+- reader.close();
++ _writer.close();
+ }
+ }
+ catch(IOException ioe)
+@@ -211,9 +217,10 @@
+ QueryParser parser = new QueryParser(Version.LUCENE_CURRENT, FIELD_OPERATION, _analyzer);
+ try
+ {
++ IndexReader reader = IndexReader.open(_ramDir);
+ Query query = parser.parse(expression);
+- Searcher searcher = new IndexSearcher(_ramDir, true);
+- TopDocs hits = searcher.search(query, searcher.maxDoc());
++ IndexSearcher searcher = new IndexSearcher(reader);
++ TopDocs hits = searcher.search(query, reader.maxDoc());
+ int count = hits.totalHits;
+ IResultInstance[] instances = new IResultInstance[count];
+
+@@ -223,6 +230,7 @@
+ Document doc = searcher.doc(docID);
+ instances[i] = (IResultInstance)_id2result.get(doc.getField(FIELD_IDENTIFIER).stringValue());
+ }
++ reader.close();
+ return instances;
+ }
+ catch(ParseException pe)
diff --git a/eclipse-dtp.spec b/eclipse-dtp.spec
index 14067d4..6c9b38e 100644
--- a/eclipse-dtp.spec
+++ b/eclipse-dtp.spec
@@ -6,7 +6,7 @@
Name: eclipse-dtp
Version: 1.11.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Eclipse Data Tools Platform
Group: System Environment/Libraries
License: EPL
@@ -43,6 +43,9 @@ Patch1: %{name}-remove-duplicate-plugin.patch
Patch6: %{name}-enable-newer-javax.wsdl.patch
Patch7: %{name}-remove-javaxxml.patch
+# port to a newer version of lucene
+Patch8: %{name}-lucene4-port.patch
+
%if 0%{?rhel} >= 6
ExclusiveArch: %{ix86} x86_64
%else
@@ -61,6 +64,7 @@ BuildRequires: xml-commons-resolver >= 1.1-2.15
BuildRequires: xalan-j2 >= 2.7.0-7.5
BuildRequires: xml-commons-apis >= 1.3.04-1.4
BuildRequires: lpg-java-compat = 1.1.0
+BuildRequires: lucene >= 4.7.0
Requires: jpackage-utils
Requires: eclipse-platform >= 1:4.2.0-0.4
@@ -73,6 +77,7 @@ Requires: xml-commons-resolver >= 1.1-2.15
Requires: xalan-j2 >= 2.7.0-7.5
Requires: xml-commons-apis >= 1.3.04-1.4
Requires: lpg-java-compat = 1.1.0
+Requires: lucene >= 4.7.0
%description
The Eclipse Data Tools Platform provides extensible frameworks and exemplary
@@ -88,6 +93,7 @@ pushd org.eclipse.datatools.connectivity-%{tag}
popd
pushd org.eclipse.datatools.build-%{tag}
%patch1 -p1
+%patch7 -p2
popd
pushd org.eclipse.datatools.enablement.ibm-%{tag}
%patch2
@@ -95,8 +101,8 @@ popd
pushd org.eclipse.datatools.enablement.oda-%{tag}
%patch6 -p1
popd
-pushd org.eclipse.datatools.build-%{tag}/
-%patch7 -p2
+pushd org.eclipse.datatools.sqltools-%{tag}/
+%patch8 -b .orig
popd
pushd org.eclipse.datatools.build-%{tag}/features
@@ -124,12 +130,14 @@ fi
mkdir orbitDeps
pushd orbitDeps
-ln -s %{_javadir}/lucene.jar lucene.jar
+ln -s %{_javadir}/lpgjavaruntime.jar .
+ln -s %{_javadir}/lucene/lucene-core.jar .
+ln -s %{_javadir}/lucene/queryparser.jar .
+ln -s %{_javadir}/lucene/analyzers-common.jar .
ln -s %{_javadir}/xerces-j2.jar org.apache.xerces_2.9.0.jar
ln -s %{_javadir}/xalan-j2-serializer.jar org.apache.xml.serializer_2.7.1.jar
ln -s %{_javadir}/xml-commons-resolver.jar org.apache.xml.resolver_1.2.0.jar
ln -s %{_javadir}/wsdl4j.jar javax.wsdl_1.5.1.jar
-ln -s %{_javadir}/lpgjavaruntime.jar net.sourceforge.lpg.lpgjavaruntime_1.1.0.jar
ln -s %{_javadir}/emf/eclipse/plugins/org.eclipse.emf* .
popd
@@ -164,8 +172,10 @@ rm javax.wsdl_*.jar
ln -s ../../../../../java/wsdl4j.jar javax.wsdl_1.5.1.jar
popd
pushd %{buildroot}%{eclipse_dropin}/dtp-sqldevtools/eclipse/plugins
-rm net.sourceforge.lpg.lpgjavaruntime_*.jar
-ln -s ../../../../../java/lpgjavaruntime.jar net.sourceforge.lpg.lpgjavaruntime_1.1.0.jar
+ln -s ../../../../../java/lpgjavaruntime.jar .
+ln -s ../../../../../java/lucene/lucene-core.jar .
+ln -s ../../../../../java/lucene/queryparser.jar .
+ln -s ../../../../../java/lucene/analyzers-common.jar .
popd
%files
@@ -176,6 +186,9 @@ popd
%doc org.eclipse.datatools.build-%{tag}/features/org.eclipse.datatools.sdk-all.feature/rootfiles/*
%changelog
+* Tue Mar 18 2014 Mat Booth <fedora at matbooth.co.uk> - 1.11.2-2
+- Port to Lucene 4.
+
* Mon Mar 17 2014 Mat Booth <fedora at matbooth.co.uk> - 1.11.2-1
- Update to latest upstream, Kepler SR2.
- Drop requires on java, rhbz #1068036
More information about the scm-commits
mailing list