mikemccand commented on code in PR #12900:
URL: https://github.com/apache/lucene/pull/12900#discussion_r1423827461

##########
lucene/core/src/java/org/apache/lucene/codecs/lucene90/blocktree/SegmentTermsEnum.java:
##########
@@ -495,7 +495,7 @@ public boolean seekExact(BytesRef target) throws 
IOException {
       targetUpto = 0;
       outputAccumulator.push(arc.nextFinalOutput());
       currentFrame = pushFrame(arc, 0);
-      outputAccumulator.pop();
+      outputAccumulator.pop(arc.nextFinalOutput());

Review Comment:
   It looks like the other places where we "blindly" pop are fine -- we 
conditionalize by `arc.isFinal()` check, and we know FST for BlockTree terms 
index will always have a `nextFinalOutput` on final nodes since it holds the 
floor data for that terms block.  And there there is one other place in 
`seekCeil` where we also rely on empty string having a final output, which is 
fine.  So net/net I don't think this was a bug, but it smelled close to one!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to