memoryProvider.flush();
idxSystem.syncWthVersion(10000, zvt2);
List<ZoieIndexReader<IndexReader>> readers = null;
Searcher searcher =null;
MultiReader reader = null;
try
{
readers=idxSystem.getIndexReaders();
reader = new MultiReader(readers.toArray(new IndexReader[readers.size()]),false);
for(int i=0; i<readers.size(); i++)
{
IndexReader ir = readers.get(i);
//Map<String, String> commitData = reader.getCommitUserData(ir.directory()); // = new HashMap<String,String>();
//System.out.println("ZoieTest: directory: " + ir.directory());
//System.out.println("ZoieTest: commitData(ZoieVersion): " + commitData);
}
//Map<String, String> commitData = reader.getCommitUserData(reader.directory());// = new HashMap<String,String>();
// for(int i=0; i<readers.size(); i++)
// {
// IndexReader ir = readers.get(i);
// Map<String, String> commitData = IndexReader.getCommitUserData(ir.directory()); // = new HashMap<String,String>();
// System.out.println("i:" + i + "ZoieTest: directory: " + ir.directory());
// System.out.println("i:" + i + "ZoieTest: commitData(ZoieVersion): " + commitData);
// }
//Map<String, String> commitData = IndexReader.getCommitUserData(reader.directory());// = new HashMap<String,String>();
//System.out.println("ZoieTest:commitData" + commitData);
//commitData = reader.getCommitUserData();
//int x = reader.maxDoc();
//for(int y = 0; y<x; y++)
//{
// Document d = reader.document(y);
// System.out.println(d.toString());
//}
//TermEnum terms = reader.terms();
//while(terms.next())
//{
// System.out.println(terms.term().text());
// TermDocs td = reader.termDocs(terms.term());
// while(td.next())
// {
// System.out.println(td.doc());
// }
//}
//terms = reader.terms();
//while(terms.next())
//{
// System.out.println("term:" + terms.term().text());
// TermPositions tp = reader.termPositions(terms.term());
//
// while(tp.next())
// {
// System.out.println("docID: " + tp.doc() + "freq: " + tp.freq());
// System.out.println("positions");
// for(int i=0; i<tp.freq();i++)
// {
// System.out.println(tp.nextPosition());
// }
// }
//}
searcher=new IndexSearcher(reader);
TopDocs hits=searcher.search(new TermQuery(new Term("contents","hao,yan")),10);
assertEquals(1,hits.totalHits);
//assertEquals(String.valueOf((long)((long)Integer.MAX_VALUE*2L)),searcher.doc(hits.scoreDocs[0].doc).get("id"));
assertEquals(String.valueOf((long)((long)Integer.MAX_VALUE*2L+1L)),searcher.doc(hits.scoreDocs[0].doc).get("id"));
hits=searcher.search(new TermQuery(new Term("contents","hao")),10);
assertEquals(1,hits.totalHits);
//assertEquals(String.valueOf((long)((long)Integer.MAX_VALUE*2L)),searcher.doc(hits.scoreDocs[0].doc).get("id"));
System.out.println("hao: searching is successful");
}
finally
{
try{
if (searcher != null){
searcher.close();
searcher = null;
reader.close();
reader = null;
}
}
finally{
idxSystem.returnIndexReaders(readers);