Hi testn, here is my index details: Index fields :5 fields Store Fileds:10 fields
Index code: contents=new StringBuilder().append(compCallingPartyNumber).append(" ").append(compCalledPartyNumber).append(" ").append(compImsiNumber).append(" ").append(callType).toString(); records=new StringBuilder().append(compCallingPartyNumber).append(" ").append(compCalledPartyNumber).append(" ").append(compchargDur).append(" ").append(compTimeSc).append(" ").append(compImsiNumber).append(" ").append(outgoingRoute).append(" ").append(incomingRoute).append(" ").append(cgiLocation).toString(); Document document = new Document(); document.add(new Field("contents", contents, Field.Store.NO, Field.Index.TOKENIZED)); document.add(new Field("fil", filen, Field.Store.NO, Field.Index.TOKENIZED)); document.add(new Field("records", records, Field.Store.YES, Field.Index.NO)); document.add(new Field("dateSc", dateSc, Field.Store.YES, Field.Index.TOKENIZED)); indexWriter.addDocument(document); inputs for the document: compCallingPartyNumber="9840836588"; compCalledPartyNumber="9840861114"; compImsiNumber="984510005469874"; callType="1"; compChargDur="98456"; compTimeSc="984"; outgoingRoute="i987j"; incomingRoute="poi09"; cgiLocation="dft1234567"; here is my search code: Directory indexDir2 = FSDirectory.getDirectory(indexSourceDir02,false); IndexReader indexSource2 = IndexReader.open(indexDir2); Directory indexDir3 = FSDirectory.getDirectory(indexSourceDir03,false); IndexReader indexSource3 = IndexReader.open(indexDir3); Directory indexDir4 = FSDirectory.getDirectory(indexSourceDir04,false); IndexReader indexSource4 = IndexReader.open(indexDir4); IndexReader[] readArray = {indexSource2,indexSource3,indexSource4}; //merged reader IndexReader mergedReader = new MultiReader(readArray); IndexSearcher is = new IndexSearcher(mergedReader); QueryParser parser = new QueryParser("contents" ,new StandardAnalyzer()); String searchQuery= new StringBuffer().append(inputNo).append(" AND dateSc:[" ).append(fromDate).append(" TO ").append(toDate).append("]").append(" ").append("AND").append(" ").append(callTyp).toString(); Query callDetailquery = parser.parse(searchQuery); hits = is.search(callDetailquery); testn wrote: > > Can you provide more info about your index? How many documents, fields and > what is the average document length? > > > Sebastin wrote: >> >> Hi testn, >> i index the dateSc as 070904(2007/09/04) format.i am not using >> any timestamp here.how can we effectively reopen the IndexSearcher for >> an hour and save the memory because my index gets updated every minute. >> >> testn wrote: >>> >>> Check out Wiki for more information at >>> http://wiki.apache.org/jakarta-lucene/LargeScaleDateRangeProcessing >>> >>> >>> >>> Sebastin wrote: >>>> >>>> Hi All, >>>> i used to search 3 Lucene Index store of size 6 GB,10 GB,10 GB >>>> of records using MultiReader class. >>>> >>>> here is the following code snippet: >>>> >>>> >>>> >>>> Directory indexDir2 = >>>> FSDirectory.getDirectory(indexSourceDir02,false); >>>> IndexReader indexSource2 = >>>> IndexReader.open(indexDir2); >>>> Directory indexDir3 = >>>> >>>> FSDirectory.getDirectory(indexSourceDir03,false); >>>> IndexReader indexSource3 = >>>> IndexReader.open(indexDir3); >>>> Directory indexDir4 = >>>> >>>> FSDirectory.getDirectory(indexSourceDir04,false); >>>> IndexReader indexSource4 = >>>> IndexReader.open(indexDir4); >>>> >>>> >>>> >>>> IndexReader[] readArray = >>>> {indexSource2,indexSource3,indexSource4}; >>>> //merged reader >>>> IndexReader mergedReader = new MultiReader(readArray); >>>> IndexSearcher is = new IndexSearcher(mergedReader); >>>> >>>> >>>> QueryParser parser = >>>> new QueryParser("contents" ,new >>>> StandardAnalyzer()); >>>> >>>> >>>> String searchQuery= >>>> new >>>> StringBuffer().append(inputNo).append(" AND dateSc:[" >>>> ).append(fromDate).append(" TO ").append(toDate).append("]").append(" >>>> ").append("AND").append(" ").append(callTyp).toString(); >>>> >>>> >>>> >>>> Query callDetailquery = >>>> parser.parse(searchQuery); >>>> >>>> hits = is.search(callDetailquery); >>>> >>>> >>>> it takes 300 MB of RAM for every search and it is very very slow is >>>> there any other way to control the Memory and to make search faster.i >>>> use SINGLETON to use the IndexSearcher as a one time used object for >>>> all the instances. >>>> >>> >>> >> >> > > -- View this message in context: http://www.nabble.com/Java-Heap-Space--Out-Of-Memory-Error-tf4376803.html#a12492218 Sent from the Lucene - Java Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]