List of usage examples for org.apache.lucene.index CodecReader getNumericDocValues
@Override
public final NumericDocValues getNumericDocValues(String field) throws IOException
From source file:org.elasticsearch.index.merge.policy.VersionFieldUpgraderTest.java
License:Apache License
/** Simple test: one doc in the old format, check that it looks correct */ public void testUpgradeOneDocument() throws Exception { Directory dir = newDirectory();/*from w w w. j a v a 2 s .c om*/ IndexWriter iw = new IndexWriter(dir, new IndexWriterConfig(null)); // add a document with a _uid having a payload of 3 Document doc = new Document(); Token token = new Token("1", 0, 1); token.setPayload(new BytesRef(Numbers.longToBytes(3))); doc.add(new TextField(UidFieldMapper.NAME, new CannedTokenStream(token))); iw.addDocument(doc); iw.commit(); CodecReader reader = getOnlySegmentReader(DirectoryReader.open(iw, true)); CodecReader upgraded = VersionFieldUpgrader.wrap(reader); // we need to be upgraded, should be a different instance assertNotSame(reader, upgraded); // make sure we can see our numericdocvalues in fieldinfos FieldInfo versionField = upgraded.getFieldInfos().fieldInfo(VersionFieldMapper.NAME); assertNotNull(versionField); assertEquals(DocValuesType.NUMERIC, versionField.getDocValuesType()); // should have a value of 3, and be visible in docsWithField assertEquals(3, upgraded.getNumericDocValues(VersionFieldMapper.NAME).get(0)); assertTrue(upgraded.getDocsWithField(VersionFieldMapper.NAME).get(0)); // verify filterreader with checkindex TestUtil.checkReader(upgraded); reader.close(); iw.close(); dir.close(); }
From source file:org.elasticsearch.index.merge.policy.VersionFieldUpgraderTest.java
License:Apache License
/** Test upgrading two documents */ public void testUpgradeTwoDocuments() throws Exception { Directory dir = newDirectory();//from ww w. ja v a2 s .c o m IndexWriter iw = new IndexWriter(dir, new IndexWriterConfig(null)); // add a document with a _uid having a payload of 3 Document doc = new Document(); Token token = new Token("1", 0, 1); token.setPayload(new BytesRef(Numbers.longToBytes(3))); doc.add(new TextField(UidFieldMapper.NAME, new CannedTokenStream(token))); iw.addDocument(doc); doc = new Document(); token = new Token("2", 0, 1); token.setPayload(new BytesRef(Numbers.longToBytes(4))); doc.add(new TextField(UidFieldMapper.NAME, new CannedTokenStream(token))); iw.addDocument(doc); iw.commit(); CodecReader reader = getOnlySegmentReader(DirectoryReader.open(iw, true)); CodecReader upgraded = VersionFieldUpgrader.wrap(reader); // we need to be upgraded, should be a different instance assertNotSame(reader, upgraded); // make sure we can see our numericdocvalues in fieldinfos FieldInfo versionField = upgraded.getFieldInfos().fieldInfo(VersionFieldMapper.NAME); assertNotNull(versionField); assertEquals(DocValuesType.NUMERIC, versionField.getDocValuesType()); // should have a values of 3 and 4, and be visible in docsWithField assertEquals(3, upgraded.getNumericDocValues(VersionFieldMapper.NAME).get(0)); assertEquals(4, upgraded.getNumericDocValues(VersionFieldMapper.NAME).get(1)); assertTrue(upgraded.getDocsWithField(VersionFieldMapper.NAME).get(0)); assertTrue(upgraded.getDocsWithField(VersionFieldMapper.NAME).get(1)); // verify filterreader with checkindex TestUtil.checkReader(upgraded); reader.close(); iw.close(); dir.close(); }