I just quickly skimmed the code since I don't have much time right now but it looks like you are keeping an array of IndexSearchers open that you re-use in this search function, right? If that's the case, you need to tell those IndexSearchers to re-open the indexes because they have changed since they were first opened. That should solve your problem.
- Greg On Mon, Jan 19, 2009 at 4:45 PM, Amin Mohammed-Coleman <ami...@gmail.com>wrote: > I make a call to my search class which looks like this: > > > public Summary[] search(SearchRequest searchRequest) { > List<Summary> summaryList = new ArrayList<Summary>(); > StopWatch stopWatch = new StopWatch("searchStopWatch"); > stopWatch.start(); > MultiSearcher multiSearcher = null; > try { > multiSearcher = new > MultiSearcher(searchers.toArray(new IndexSearcher[] {})); > QueryParser queryParser = new > MultiFieldQueryParser(FieldNameEnum.fieldNameDescriptions(), analyzer); > Query query = > queryParser.parse(searchRequest.getSearchTerm()); > > //TODO: Sort and Filters > > TopDocs topDocs = multiSearcher.search(query, 100); > ScoreDoc[] scoreDocs = topDocs.scoreDocs; > LOGGER.debug("total number of hits for [" + > query.toString() + " ] = " +topDocs.totalHits); > > for (ScoreDoc scoreDoc : scoreDocs) { > final Document doc = > multiSearcher.doc(scoreDoc.doc); > float score = scoreDoc.score; > final BaseDocument baseDocument = new > BaseDocument(doc, score); > Summary documentSummary = new > DocumentSummaryImpl(baseDocument); > summaryList.add(documentSummary); > } > > } catch (Exception e) { > throw new IllegalStateException(e); > } > stopWatch.stop(); > > LOGGER.debug("total time taken for seach: " + > stopWatch.getTotalTimeMillis() + " ms"); > return summaryList.toArray(new Summary[] {}); > } > > Do I need to do this explicitly? > > > Cheers > Amin > > > On 19 Jan 2009, at 20:48, Greg Shackles wrote: > > After you make the commit to the index, are you reloading the index in the >> searchers? >> >> - Greg >> >> >> On Mon, Jan 19, 2009 at 3:29 PM, Amin Mohammed-Coleman <ami...@gmail.com >> >wrote: >> >> Hi >>> >>> I have recently worked on developing an application which allows you to >>> upload a file (which is indexed so you can search later). I have >>> numerous >>> tests to show that you can index and search documents (in some instances >>> within the same test), however when I perform the operation in the site: >>> >>> 1) Upload File and Index >>> 2) Search >>> >>> I don't get any hits. When I restart the application then if I make >>> another search I can find the results. It seems as though indexes aren't >>> being committed when I do the initial upload. This is strange. I >>> explicitly call commit in my code when I upload the file. Has anyone >>> experienced this before? >>> >>> Any help would be appreciated. >>> >>> Kind Regards >>> >>> Amin >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org >>> For additional commands, e-mail: java-user-h...@lucene.apache.org >>> >>> >>> >