[
https://issues.apache.org/jira/browse/LUCENE-5168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13740840#comment-13740840
]
Dawid Weiss commented on LUCENE-5168:
-------------------------------------
Don't be so sure. :) FreqProxTermsWriterPerField::flush inlines half of the
world (and is compiled multiple times, in fact). readVInt *is* in fact inlined
there (but it doesn't seem to be the root of the problem to me).
{code}
8206 1158
org.apache.lucene.index.FreqProxTermsWriterPerField::flush (1207 bytes)
@ 4 org.apache.lucene.index.FieldInfo::isIndexed
(5 bytes) inline (hot)
@ 16
org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsWriter::addField
(327 bytes) too big
@ 16
org.apache.lucene.codecs.BlockTreeTermsWriter::addField (53 bytes) too big
@ 23
org.apache.lucene.codecs.BlockTreeTermsWriter$TermsWriter::getComparator (4
bytes) inline (hot)
@ 23
org.apache.lucene.codecs.blockterms.BlockTermsWriter$TermsWriter::getComparator
(4 bytes) inline (hot)
@ 0
org.apache.lucene.util.BytesRef::getUTF8SortedAsUnicodeComparator (4 bytes)
inline (hot)
@ 0
org.apache.lucene.util.BytesRef::getUTF8SortedAsUnicodeComparator (4 bytes)
inline (hot)
@ 32
org.apache.lucene.index.FieldInfo::getIndexOptions (5 bytes) inline (hot)
@ 61 java.lang.Enum::compareTo (44 bytes) too
big
@ 79 java.lang.Enum::compareTo (44 bytes) too
big
@ 97 java.lang.Enum::compareTo (44 bytes) too
big
@ 238 java.util.HashMap::size (5 bytes) inline
(hot)
@ 267
org.apache.lucene.index.TermsHashPerField::sortPostings (9 bytes) executed <
MinInliningThreshold times
@ 279 org.apache.lucene.util.BytesRefHash::size
(5 bytes) inline (hot)
@ 288 org.apache.lucene.util.BytesRef::<init> (8
bytes) inline (hot)
@ 4 org.apache.lucene.util.BytesRef::<init> (9
bytes) inline (hot)
@ 5 org.apache.lucene.util.BytesRef::<init>
(41 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 26
org.apache.lucene.util.BytesRef::isValid (329 bytes) hot method too big
@ 309
org.apache.lucene.index.ByteSliceReader::<init> (5 bytes) inline (hot)
@ 1 org.apache.lucene.store.DataInput::<init>
(5 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 318
org.apache.lucene.index.ByteSliceReader::<init> (5 bytes) inline (hot)
@ 1 org.apache.lucene.store.DataInput::<init>
(5 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 331
org.apache.lucene.index.SegmentInfo::getDocCount (23 bytes) inline (hot)
@ 334 org.apache.lucene.util.FixedBitSet::<init>
(29 bytes) inline (hot)
@ 1 org.apache.lucene.search.DocIdSet::<init>
(5 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 11
org.apache.lucene.util.FixedBitSet::bits2words (17 bytes) inline (hot)
@ 350 org.apache.lucene.index.Term::<init> (13
bytes) inline (hot)
@ 6 org.apache.lucene.util.BytesRef::<init> (8
bytes) inline (hot)
@ 4 org.apache.lucene.util.BytesRef::<init>
(9 bytes) inline (hot)
@ 5 org.apache.lucene.util.BytesRef::<init>
(41 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 26
org.apache.lucene.util.BytesRef::isValid (329 bytes) hot method too big
@ 9 org.apache.lucene.index.Term::<init> (15
bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 393
org.apache.lucene.util.ByteBlockPool::setBytesRef (107 bytes) inline (hot)
@ 405
org.apache.lucene.index.TermsHashPerField::initReader (87 bytes) inline (hot)
@ 83
org.apache.lucene.index.ByteSliceReader::init (153 bytes) inline (hot)
@ 427
org.apache.lucene.index.TermsHashPerField::initReader (87 bytes) inline (hot)
@ 83
org.apache.lucene.index.ByteSliceReader::init (153 bytes) inline (hot)
@ 434
org.apache.lucene.codecs.BlockTreeTermsWriter$TermsWriter::startTerm (18 bytes)
inline (hot)
@ 434
org.apache.lucene.codecs.blockterms.BlockTermsWriter$TermsWriter::startTerm (12
bytes) executed < MinInliningThreshold times
@ 500
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 1154 org.apache.lucene.codecs.TermStats::<init>
(15 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes) inline
(hot)
@ 1157
org.apache.lucene.codecs.BlockTreeTermsWriter$TermsWriter::finishTerm (87
bytes) inline (hot)
@ 1157
org.apache.lucene.codecs.blockterms.BlockTermsWriter$TermsWriter::finishTerm
(203 bytes) executed < MinInliningThreshold times
@ 30 org.apache.lucene.util.fst.Util::toIntsRef
(55 bytes) already compiled into a medium method
@ 37
org.apache.lucene.util.fst.NoOutputs::getNoOutput (4 bytes) inline (hot)
@ 40 org.apache.lucene.util.fst.Builder::add
(767 bytes) already compiled into a medium method
@ 52
org.apache.lucene.util.BytesRef::deepCopyOf (15 bytes) inline (hot)
@ 4 org.apache.lucene.util.BytesRef::<init>
(8 bytes) inline (hot)
@ 4 org.apache.lucene.util.BytesRef::<init>
(9 bytes) inline (hot)
@ 5
org.apache.lucene.util.BytesRef::<init> (41 bytes) inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 26
org.apache.lucene.util.BytesRef::isValid (329 bytes) hot method too big
@ 10
org.apache.lucene.util.BytesRef::copyBytes (64 bytes) inline (hot)
@ 52 java.lang.System::arraycopy (0 bytes)
(intrinsic)
@ 56
org.apache.lucene.codecs.BlockTreeTermsWriter$PendingTerm::<init> (16 bytes)
inline (hot)
@ 2
org.apache.lucene.codecs.BlockTreeTermsWriter$PendingEntry::<init> (10 bytes)
inline (hot)
@ 1 java.lang.Object::<init> (1 bytes)
inline (hot)
@ 563 org.apache.lucene.store.DataInput::readVInt
(114 bytes) inline (hot)
@ 1
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 17
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 38
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 59
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 80
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 610 org.apache.lucene.store.DataInput::readVInt
(114 bytes) inline (hot)
@ 1
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 17
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 38
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 59
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 80
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 657
org.apache.lucene.index.SegmentInfo::getDocCount (23 bytes) inline (hot)
@ 710 org.apache.lucene.util.FixedBitSet::set (84
bytes) inline (hot)
@ 728
org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter::startDoc (242 bytes)
inline (hot)
@ 43
org.apache.lucene.codecs.lucene41.Lucene41SkipWriter::bufferSkip (45 bytes)
too big
@ 197
org.apache.lucene.codecs.lucene41.ForUtil::writeBlock (168 bytes) too big
@ 223
org.apache.lucene.codecs.lucene41.ForUtil::writeBlock (168 bytes) too big
@ 763
org.apache.lucene.index.SegmentInfo::getDocCount (23 bytes) call site not
reached
@ 848 org.apache.lucene.store.DataInput::readVInt
(114 bytes) inline (hot)
@ 1
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 17
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 38
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 59
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 80
org.apache.lucene.index.ByteSliceReader::readByte (78 bytes) inline (hot)
@ 7
org.apache.lucene.index.ByteSliceReader::eof (52 bytes) inline (hot)
@ 58
org.apache.lucene.index.ByteSliceReader::nextSlice (198 bytes) inline (hot)
@ 871 org.apache.lucene.store.DataInput::readVInt
(114 bytes) size > DesiredMethodLimit
@ 888 org.apache.lucene.util.BytesRef::<init> (8
bytes) size > DesiredMethodLimit
@ 927 org.apache.lucene.util.BytesRef::grow (34
bytes) size > DesiredMethodLimit
@ 942
org.apache.lucene.index.ByteSliceReader::readBytes (84 bytes) size >
DesiredMethodLimit
@ 975 org.apache.lucene.store.DataInput::readVInt
(114 bytes) size > DesiredMethodLimit
@ 985 org.apache.lucene.store.DataInput::readVInt
(114 bytes) size > DesiredMethodLimit
@ 1077
org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter::addPosition (367
bytes) size > DesiredMethodLimit
@ 1125
org.apache.lucene.codecs.lucene41.Lucene41PostingsWriter::finishDoc (76 bytes)
size > DesiredMethodLimit
@ 1200
org.apache.lucene.util.FixedBitSet::cardinality (15 bytes) size >
DesiredMethodLimit
@ 1203
org.apache.lucene.codecs.BlockTreeTermsWriter$TermsWriter::finish (354 bytes)
size > DesiredMethodLimit
@ 1203
org.apache.lucene.codecs.blockterms.BlockTermsWriter$TermsWriter::finish (101
bytes) size > DesiredMethodLimit
8223 1154 size: 40468 time: 71 inlined: 3341 bytes
{code}
> ByteSliceReader assert trips with 32-bit oracle 1.7.0_25 + G1GC
> ---------------------------------------------------------------
>
> Key: LUCENE-5168
> URL: https://issues.apache.org/jira/browse/LUCENE-5168
> Project: Lucene - Core
> Issue Type: Bug
> Reporter: Robert Muir
> Attachments: java8-windows-4x-3075-console.txt
>
>
> This assertion trips (sometimes from different tests), if you run the
> highlighting tests on branch_4x with r1512807.
> It reproduces about half the time, always only with 32bit + G1GC (other
> combinations do not seem to trip it, i didnt try looping or anything really
> though).
> {noformat}
> rmuir@beast:~/workspace/branch_4x$ svn up -r 1512807
> rmuir@beast:~/workspace/branch_4x$ ant clean
> rmuir@beast:~/workspace/branch_4x$ rm -rf .caches #this is important,
> otherwise master seed does not work!
> rmuir@beast:~/workspace/branch_4x/lucene/highlighter$ ant test
> -Dtests.jvms=2 -Dtests.seed=EBBFA6F4E80A7365 -Dargs="-server
> -XX:+UseG1GC"
> {noformat}
> Originally showed up like this:
> {noformat}
> Build: http://jenkins.thetaphi.de/job/Lucene-Solr-4.x-Linux/6874/
> Java: 32bit/jdk1.7.0_25 -server -XX:+UseG1GC
> 1 tests failed.
> REGRESSION:
> org.apache.lucene.search.postingshighlight.TestPostingsHighlighter.testUserFailedToIndexOffsets
> Error Message:
> Stack Trace:
> java.lang.AssertionError
> at
> __randomizedtesting.SeedInfo.seed([EBBFA6F4E80A7365:1FBF811885F2D611]:0)
> at
> org.apache.lucene.index.ByteSliceReader.readByte(ByteSliceReader.java:73)
> at org.apache.lucene.store.DataInput.readVInt(DataInput.java:108)
> at
> org.apache.lucene.index.FreqProxTermsWriterPerField.flush(FreqProxTermsWriterPerField.java:453)
> at
> org.apache.lucene.index.FreqProxTermsWriter.flush(FreqProxTermsWriter.java:85)
> at org.apache.lucene.index.TermsHash.flush(TermsHash.java:116)
> at org.apache.lucene.index.DocInverter.flush(DocInverter.java:53)
> at
> org.apache.lucene.index.DocFieldProcessor.flush(DocFieldProcessor.java:81)
> at
> org.apache.lucene.index.DocumentsWriterPerThread.flush(DocumentsWriterPerThread.java:501)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]