You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Amit Jain (JIRA)" <ji...@apache.org> on 2014/10/16 08:22:33 UTC

[jira] [Commented] (OAK-2199) Capture performance stats for lucene property indexes

    [ https://issues.apache.org/jira/browse/OAK-2199?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14173421#comment-14173421 ] 

Amit Jain commented on OAK-2199:
--------------------------------

The updated numbers are on a windows system with 16GB RAM.
The test run was {{AggregateNodeSearcher}}. The tests were run with the patch installed [OAK-2005-fixes.patch|https://issues.apache.org/jira/secure/attachment/12674920/OAK-2005-fixes.patch]. With the 1st change needed for producing results and the 2nd change needed for index selection.

|*Indexing (Random data)*|*Time Seconds (2.6 m nodes)*|*Time Seconds (5.25 m nodes)*|
|OrderedIndex|3540|>30 hrs|
|Lucene|878|1847|
For insertions the indexing time is way better than ordered indexes with an almost linear relationship to the data.

Query times are somewhat better than above
|*Query*|*Time Seconds (2.6 m nodes)*|*Time Seconds (5.25 m nodes)*|
|OrderedIndex|0.5|NA|
|Lucene|2.5|3.4|

I enabled benchmark profiler for the query and following is the output which indicates lot of time spent on reading blobs from FDS.
{code}
02:56:09.799 [main] INFO  o.a.j.o.s.ScalabilityAbstractSuite - Profiler: top 5 stack trace(s) of 3400 ms:
437/1641 (26%):
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at org.apache.jackrabbit.core.data.LazyFileInputStream.open(LazyFileInputStream.java:104)
at org.apache.jackrabbit.core.data.LazyFileInputStream.read(LazyFileInputStream.java:163)
at com.google.common.io.ByteStreams.read(ByteStreams.java:828)
at com.google.common.io.ByteStreams.readFully(ByteStreams.java:695)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:243)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:322)
at org.apache.lucene.store.DataInput.readBytes(DataInput.java:70)
at org.apache.lucene.store.Directory$SlicedIndexInput.readInternal(Directory.java:306)
at org.apache.lucene.store.BufferedIndexInput.refill(BufferedIndexInput.java:271)
at org.apache.lucene.store.BufferedIndexInput.readByte(BufferedIndexInput.java:51)
at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
at org.apache.lucene.store.BufferedIndexInput.readVInt(BufferedIndexInput.java:218)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum$Frame.loadBlock(BlockTreeTermsReader.java:2397)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum.seekExact(BlockTreeTermsReader.java:1726)
at org.apache.lucene.index.TermContext.build(TermContext.java:95)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:166)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:684)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:378)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.loadDocs(LucenePropertyIndex.java:355)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:290)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:282)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor$1.hasNext(LucenePropertyIndex.java:1147)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor.hasNext(LucenePropertyIndex.java:1168)
at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:636)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:661)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.<init>(QueryResultImpl.java:104)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
at org.apache.jackrabbit.oak.scalability.SearchScalabilityBenchmark.search(SearchScalabilityBenchmark.java:64)
at org.apache.jackrabbit.oak.scalability.AggregateNodeSearcher.execute(AggregateNodeSearcher.java:94)
at org.apache.jackrabbit.oak.scalability.ScalabilityNodeSuite$1.run(ScalabilityNodeSuite.java:373)
293/1641 (17%):
at java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
at java.io.File.exists(Unknown Source)
at org.apache.jackrabbit.core.data.FileDataStore.getRecordIfStored(FileDataStore.java:144)
at org.apache.jackrabbit.core.data.AbstractDataStore.getRecord(AbstractDataStore.java:43)
at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.getDataRecord(DataStoreBlobStore.java:429)
at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.getStream(DataStoreBlobStore.java:418)
at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.getInputStream(DataStoreBlobStore.java:294)
at org.apache.jackrabbit.oak.plugins.blob.BlobStoreBlob.getNewStream(BlobStoreBlob.java:47)
at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getNewStream(SegmentBlob.java:84)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:197)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:243)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:322)
at org.apache.lucene.store.DataInput.readBytes(DataInput.java:70)
at org.apache.lucene.store.Directory$SlicedIndexInput.readInternal(Directory.java:306)
at org.apache.lucene.store.BufferedIndexInput.refill(BufferedIndexInput.java:271)
at org.apache.lucene.store.BufferedIndexInput.readByte(BufferedIndexInput.java:51)
at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
at org.apache.lucene.store.BufferedIndexInput.readVInt(BufferedIndexInput.java:218)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum$Frame.loadBlock(BlockTreeTermsReader.java:2397)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum.seekExact(BlockTreeTermsReader.java:1726)
at org.apache.lucene.index.TermContext.build(TermContext.java:95)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:166)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:684)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:378)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.loadDocs(LucenePropertyIndex.java:355)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:290)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:282)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor$1.hasNext(LucenePropertyIndex.java:1147)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor.hasNext(LucenePropertyIndex.java:1168)
at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:636)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:661)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.<init>(QueryResultImpl.java:104)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
at org.apache.jackrabbit.oak.scalability.SearchScalabilityBenchmark.search(SearchScalabilityBenchmark.java:64)
at org.apache.jackrabbit.oak.scalability.AggregateNodeSearcher.execute(AggregateNodeSearcher.java:94)
at org.apache.jackrabbit.oak.scalability.ScalabilityNodeSuite$1.run(ScalabilityNodeSuite.java:373)
218/1641 (13%):
at java.io.WinNTFileSystem.checkAccess(Native Method)
at java.io.File.canRead(Unknown Source)
at org.apache.jackrabbit.core.data.LazyFileInputStream.<init>(LazyFileInputStream.java:62)
at org.apache.jackrabbit.core.data.FileDataRecord.getStream(FileDataRecord.java:59)
at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.getStream(DataStoreBlobStore.java:418)
at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.getInputStream(DataStoreBlobStore.java:294)
at org.apache.jackrabbit.oak.plugins.blob.BlobStoreBlob.getNewStream(BlobStoreBlob.java:47)
at org.apache.jackrabbit.oak.plugins.segment.SegmentBlob.getNewStream(SegmentBlob.java:84)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:197)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:243)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:322)
at org.apache.lucene.store.DataInput.readBytes(DataInput.java:70)
at org.apache.lucene.store.Directory$SlicedIndexInput.readInternal(Directory.java:306)
at org.apache.lucene.store.BufferedIndexInput.refill(BufferedIndexInput.java:271)
at org.apache.lucene.store.BufferedIndexInput.readByte(BufferedIndexInput.java:51)
at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
at org.apache.lucene.store.BufferedIndexInput.readVInt(BufferedIndexInput.java:218)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum$Frame.loadBlock(BlockTreeTermsReader.java:2397)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum.seekExact(BlockTreeTermsReader.java:1726)
at org.apache.lucene.index.TermContext.build(TermContext.java:95)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:166)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:684)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:378)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.loadDocs(LucenePropertyIndex.java:355)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:290)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:282)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor$1.hasNext(LucenePropertyIndex.java:1147)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor.hasNext(LucenePropertyIndex.java:1168)
at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:636)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:661)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.<init>(QueryResultImpl.java:104)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
at org.apache.jackrabbit.oak.scalability.SearchScalabilityBenchmark.search(SearchScalabilityBenchmark.java:64)
at org.apache.jackrabbit.oak.scalability.AggregateNodeSearcher.execute(AggregateNodeSearcher.java:94)
at org.apache.jackrabbit.oak.scalability.ScalabilityNodeSuite$1.run(ScalabilityNodeSuite.java:373)
105/1641 (6%):
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at org.apache.jackrabbit.core.data.LazyFileInputStream.open(LazyFileInputStream.java:104)
at org.apache.jackrabbit.core.data.LazyFileInputStream.read(LazyFileInputStream.java:163)
at com.google.common.io.ByteStreams.read(ByteStreams.java:828)
at com.google.common.io.ByteStreams.readFully(ByteStreams.java:695)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:243)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:322)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readByte(OakDirectory.java:328)
at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum$Frame.loadBlock(BlockTreeTermsReader.java:2397)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum.seekExact(BlockTreeTermsReader.java:1726)
at org.apache.lucene.index.TermContext.build(TermContext.java:95)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:166)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:684)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:378)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.loadDocs(LucenePropertyIndex.java:355)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:290)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:282)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor$1.hasNext(LucenePropertyIndex.java:1147)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor.hasNext(LucenePropertyIndex.java:1168)
at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:636)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:661)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.<init>(QueryResultImpl.java:104)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
at org.apache.jackrabbit.oak.scalability.SearchScalabilityBenchmark.search(SearchScalabilityBenchmark.java:64)
at org.apache.jackrabbit.oak.scalability.AggregateNodeSearcher.execute(AggregateNodeSearcher.java:94)
at org.apache.jackrabbit.oak.scalability.ScalabilityNodeSuite$1.run(ScalabilityNodeSuite.java:373)
103/1641 (6%):
at java.io.FileInputStream.close0(Native Method)
at java.io.FileInputStream.close(Unknown Source)
at org.apache.commons.io.input.AutoCloseInputStream.close(AutoCloseInputStream.java:63)
at org.apache.jackrabbit.core.data.LazyFileInputStream.close(LazyFileInputStream.java:125)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.loadBlob(OakDirectory.java:201)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexFile.readBytes(OakDirectory.java:243)
at org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory$OakIndexInput.readBytes(OakDirectory.java:322)
at org.apache.lucene.store.DataInput.readBytes(DataInput.java:70)
at org.apache.lucene.store.Directory$SlicedIndexInput.readInternal(Directory.java:306)
at org.apache.lucene.store.BufferedIndexInput.refill(BufferedIndexInput.java:271)
at org.apache.lucene.store.BufferedIndexInput.readByte(BufferedIndexInput.java:51)
at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
at org.apache.lucene.store.BufferedIndexInput.readVInt(BufferedIndexInput.java:218)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum$Frame.loadBlock(BlockTreeTermsReader.java:2397)
at org.apache.lucene.codecs.BlockTreeTermsReader$FieldReader$SegmentTermsEnum.seekExact(BlockTreeTermsReader.java:1726)
at org.apache.lucene.index.TermContext.build(TermContext.java:95)
at org.apache.lucene.search.TermQuery.createWeight(TermQuery.java:166)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.BooleanQuery$BooleanWeight.<init>(BooleanQuery.java:185)
at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:390)
at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:684)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:378)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.loadDocs(LucenePropertyIndex.java:355)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:290)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$1.computeNext(LucenePropertyIndex.java:282)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor$1.hasNext(LucenePropertyIndex.java:1147)
at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at org.apache.jackrabbit.oak.spi.query.Cursors$PathCursor.hasNext(Cursors.java:199)
at org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndex$LucenePathCursor.hasNext(LucenePropertyIndex.java:1168)
at org.apache.jackrabbit.oak.query.ast.SelectorImpl.next(SelectorImpl.java:401)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.fetchNext(QueryImpl.java:636)
at org.apache.jackrabbit.oak.query.QueryImpl$RowIterator.hasNext(QueryImpl.java:661)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.fetch(QueryResultImpl.java:108)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl$1.<init>(QueryResultImpl.java:104)
at org.apache.jackrabbit.oak.jcr.query.QueryResultImpl.getRows(QueryResultImpl.java:91)
at org.apache.jackrabbit.oak.scalability.SearchScalabilityBenchmark.search(SearchScalabilityBenchmark.java:64)
at org.apache.jackrabbit.oak.scalability.AggregateNodeSearcher.execute(AggregateNodeSearcher.java:94)
at org.apache.jackrabbit.oak.scalability.ScalabilityNodeSuite$1.run(ScalabilityNodeSuite.java:373)
summary:
79%: org.apache.jackrabbit.core.data
16%: org.apache.commons.io.input
{code}

> Capture performance stats for lucene property indexes
> -----------------------------------------------------
>
>                 Key: OAK-2199
>                 URL: https://issues.apache.org/jira/browse/OAK-2199
>             Project: Jackrabbit Oak
>          Issue Type: Sub-task
>          Components: oak-lucene
>            Reporter: Amit Jain
>             Fix For: 1.2
>
>
> Capture different performance statistics related to indexing time, querying time for the lucene property indexes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)