Return-Path: X-Original-To: apmail-db-derby-dev-archive@www.apache.org Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 93DD01174C for ; Fri, 27 Jun 2014 17:42:26 +0000 (UTC) Received: (qmail 77359 invoked by uid 500); 27 Jun 2014 17:42:26 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 77332 invoked by uid 500); 27 Jun 2014 17:42:26 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 77312 invoked by uid 99); 27 Jun 2014 17:42:26 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 27 Jun 2014 17:42:26 +0000 Date: Fri, 27 Jun 2014 17:42:26 +0000 (UTC) From: "Rick Hillegas (JIRA)" To: derby-dev@db.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (DERBY-590) How to integrate Derby with Lucene API? MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/DERBY-590?page=3Dcom.atlassian= .jira.plugin.system.issuetabpanels:all-tabpanel ] Rick Hillegas updated DERBY-590: -------------------------------- Attachment: derby-590-31-aa-multiField.diff Attaching derby-590-xx-publicAPILuceneUtils.diff. This patch changes the ap= i of the Lucene plugin as Knut and I discussed. The Lucene tests run cleanl= y with this patch. This patch makes the following changes: 1) Adds a new interface to the public api: org.apache.derby.optional.api.Lu= ceneIndexDescriptor. This interface allows the application developer to des= cribe the following: a) The names of fields which can be specified in Lucene queries. b) The Analyzer which should be used to build the index. c) The QueryParser which should be used to parse Lucene queries against the= index. 2) Changes the signatures of createIndex() and updateIndex(). The routines = now take an indexDescriptorMaker rather than an analyzerMaker. 3) Changes the signature of the index-specific table function which is used= to run queries against the index. The queryParserMaker argument has been r= emoved. Internally, the query uses the QueryParser returned by the LuceneIn= dexDescriptor which was bound to the index at createIndex() time. 4) Changes the signature of the table returned by listIndexes(). The table = no longer has an analyzerMaker column. Instead, it has an indexDescriptorMa= ker column. I expect that I will file a follow-on patch to address some more issues whi= ch I want to explore. I think that we need to prevent a LuceneIndexDescript= or from specifying field names which conflict with the names of the key and= text columns. After that, I plan to update the functional spec and file a doc issue to ad= dress these changes. Touches the following files: -------------------- A java/optional/org/apache/derby/optional/api/LuceneIndexDescriptor.j= ava M java/optional/org/apache/derby/optional/api/LuceneUtils.java M tools/javadoc/publishedapi.ant Support for the new interface in the public api. -------------------- M java/optional/org/apache/derby/optional/lucene/LuceneQueryVTI.java M java/optional/org/apache/derby/optional/lucene/LuceneSupport.java M java/optional/org/apache/derby/optional/lucene/LuceneListIndexesVTI= .java Signature changes. Support for multi-field queries. -------------------- M java/testing/org/apache/derbyTesting/functionTests/tests/lang/myLuc= eneClasses.jar M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eCoarseAuthorizationTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eBackupTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eSupportPermsTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eInMemoryTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eSupportTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eCollationTest.java M java/testing/org/apache/derbyTesting/functionTests/tests/lang/Lucen= eJarLoadingTest.java Adjusted tests to handle the new api. Added Knut's multi-field test case. > How to integrate Derby with Lucene API? > --------------------------------------- > > Key: DERBY-590 > URL: https://issues.apache.org/jira/browse/DERBY-590 > Project: Derby > Issue Type: Improvement > Components: Documentation, SQL > Reporter: Abhijeet Mahesh > Labels: derby_triage10_11 > Attachments: LucenePlugin.html, LucenePlugin.html, LucenePlugin.h= tml, derby-590-01-ag-publicAccessToLuceneRoutines.diff, derby-590-01-ah-pub= licAccessToLuceneRoutines.diff, derby-590-01-am-publicAccessToLuceneRoutine= s.diff, derby-590-02-aa-cleanupFindbugsErrors.diff, derby-590-03-aa-removeT= estingDiagnostic.diff, derby-590-04-aa-removeIDFromListIndexes.diff, derby-= 590-05-aa-accessDeclaredMembers.diff, derby-590-06-aa-suppressAccessChecks.= diff, derby-590-07-aa-accessClassInPackage.sun.misc.diff, derby-590-08-aa-o= mitLuceneFlag.diff, derby-590-09-aa-localeSensitiveAnalysis.diff, derby-590= -10-aa-fixLocaleTest.diff, derby-590-11-aa-moveCode.diff, derby-590-12-aa-n= ewJar.diff, derby-590-13-aa-indexViews.diff, derby-590-14-aa-coarseGrainedA= uthorization.diff, derby-590-15-aa-requireHardUpgrade.diff, derby-590-16-aa= -adjustUpgradeTest.diff, derby-590-17-aa-closeInputStreamOnPropertiesFile.d= iff, derby-590-18-aa-cleanupAPI.diff, derby-590-19-aa-cleanupAPI2.diff, der= by-590-20-aa-customQueryParser.diff, derby-590-21-aa-noTimeTravel.diff, der= by-590-22-aa-cleanupPrivacy.diff, derby-590-23-aa-correctTestLocale.diff, d= erby-590-24-ad-luceneDirectory.diff, derby-590-26-ac-backupRestore.diff, de= rby-590-26-ad-backupRestoreEncryption.diff, derby-590-27-aa-publicAPILucene= Utils.diff, derby-590-28-renameLuceneJars.diff, derby-590-29-aa-useLucene_4= .7.1.diff, derby-590-30-aa-nullableScoreCeiling.diff, derby-590-31-aa-multi= Field.diff, exceptions.diff, lucene_demo.diff, lucene_demo_2.diff, multifie= ld-with-custom-tokenizers.diff, multifield.diff, netbeans.diff, netbeans2.d= iff > > > In order to use derby with lucene API what should be the steps to be take= n?=20 -- This message was sent by Atlassian JIRA (v6.2#6252)