You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2023/11/20 19:08:53 UTC
(lucene) 04/11: Clean up UnCompiledNode.inputCount (#12735)
This is an automated email from the ASF dual-hosted git repository.
mikemccand pushed a commit to branch branch_9x
in repository https://gitbox.apache.org/repos/asf/lucene.git
commit c8117865441a6409e9fb0c8314b757797c918dc2
Author: Dzung Bui <du...@gmail.com>
AuthorDate: Thu Nov 2 17:34:36 2023 +0900
Clean up UnCompiledNode.inputCount (#12735)
* Clean up inputCount
* Update CHANGES.txt
---
lucene/CHANGES.txt | 2 ++
.../src/java/org/apache/lucene/util/fst/FSTCompiler.java | 16 ----------------
.../src/test/org/apache/lucene/util/fst/TestFSTs.java | 1 -
3 files changed, 2 insertions(+), 17 deletions(-)
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index 359c23280a5..05fb4617705 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -35,6 +35,8 @@ API Changes
* GITHUB#12709 Consolidate FSTStore and BytesStore in FST. Created FSTReader which contains the common methods
of the two (Anh Dung Bui)
+* GITHUB#12735: Remove FSTCompiler#getTermCount() and FSTCompiler.UnCompiledNode#inputCount (Anh Dung Bui)
+
New Features
---------------------
diff --git a/lucene/core/src/java/org/apache/lucene/util/fst/FSTCompiler.java b/lucene/core/src/java/org/apache/lucene/util/fst/FSTCompiler.java
index f17c220f83d..3af62410070 100644
--- a/lucene/core/src/java/org/apache/lucene/util/fst/FSTCompiler.java
+++ b/lucene/core/src/java/org/apache/lucene/util/fst/FSTCompiler.java
@@ -270,10 +270,6 @@ public class FSTCompiler<T> {
return directAddressingMaxOversizingFactor;
}
- public long getTermCount() {
- return frontier[0].inputCount;
- }
-
public long getNodeCount() {
// 1+ in order to count the -1 implicit final node
return 1 + nodeCount;
@@ -749,7 +745,6 @@ public class FSTCompiler<T> {
// format cannot represent the empty input since
// 'finalness' is stored on the incoming arc, not on
// the node
- frontier[0].inputCount++;
frontier[0].isFinal = true;
fst.setEmptyOutput(output);
return;
@@ -760,9 +755,6 @@ public class FSTCompiler<T> {
int pos2 = input.offset;
final int pos1Stop = Math.min(lastInput.length(), input.length);
while (true) {
- frontier[pos1].inputCount++;
- // System.out.println(" incr " + pos1 + " ct=" + frontier[pos1].inputCount + " n=" +
- // frontier[pos1]);
if (pos1 >= pos1Stop || lastInput.intAt(pos1) != input.ints[pos2]) {
break;
}
@@ -786,7 +778,6 @@ public class FSTCompiler<T> {
// init tail states for current input
for (int idx = prefixLenPlus1; idx <= input.length; idx++) {
frontier[idx - 1].addArc(input.ints[input.offset + idx - 1], frontier[idx]);
- frontier[idx].inputCount++;
}
final UnCompiledNode<T> lastNode = frontier[input.length];
@@ -835,8 +826,6 @@ public class FSTCompiler<T> {
// save last input
lastInput.copyInts(input);
-
- // System.out.println(" count[0]=" + frontier[0].inputCount);
}
private boolean validOutput(T output) {
@@ -906,10 +895,6 @@ public class FSTCompiler<T> {
T output;
boolean isFinal;
- // TODO: remove this tracking? we used to use it for confusingly pruning NodeHash, but
- // we switched to LRU by RAM usage instead:
- long inputCount;
-
/** This node's depth, starting from the automaton root. */
final int depth;
@@ -935,7 +920,6 @@ public class FSTCompiler<T> {
numArcs = 0;
isFinal = false;
output = owner.NO_OUTPUT;
- inputCount = 0;
// We don't clear the depth here because it never changes
// for nodes on the frontier (even when reused).
diff --git a/lucene/core/src/test/org/apache/lucene/util/fst/TestFSTs.java b/lucene/core/src/test/org/apache/lucene/util/fst/TestFSTs.java
index 60162a1a2ee..088e2ee2a8a 100644
--- a/lucene/core/src/test/org/apache/lucene/util/fst/TestFSTs.java
+++ b/lucene/core/src/test/org/apache/lucene/util/fst/TestFSTs.java
@@ -568,7 +568,6 @@ public class TestFSTs extends LuceneTestCase {
System.out.println(
((tMid - tStart) / (double) TimeUnit.SECONDS.toNanos(1)) + " sec to add all terms");
- assert fstCompiler.getTermCount() == ord;
FST<T> fst = fstCompiler.compile();
long tEnd = System.nanoTime();
System.out.println(