jainankitk commented on a change in pull request #563: Support for moving FST 
offheap except PK
URL: https://github.com/apache/lucene-solr/pull/563#discussion_r255330316
 
 

 ##########
 File path: 
lucene/core/src/java/org/apache/lucene/codecs/blocktree/FieldReader.java
 ##########
 @@ -86,9 +88,14 @@
 
     if (indexIn != null) {
       final IndexInput clone = indexIn.clone();
-      //System.out.println("start=" + indexStartFP + " field=" + 
fieldInfo.name);
       clone.seek(indexStartFP);
-      index = new FST<>(clone, ByteSequenceOutputs.getSingleton());
+      // Initialize FST offheap if index is MMapDirectory and
+      // docCount != sumDocFreq implying field is not primary key
+      if (clone instanceof ByteBufferIndexInput && this.docCount != 
this.sumDocFreq) {
+        index = new FST<>(clone, ByteSequenceOutputs.getSingleton(), new 
OffHeapFSTStore());
+      } else {
+        index = new FST<>(clone, ByteSequenceOutputs.getSingleton());
 
 Review comment:
   I added print statements while running the benchmarks, and the 
classification looks correct:
   ```
   Initializing field offheap start=55 field=Date.taxonomy
   Initializing field offheap start=76 field=DayOfYear.sortedset
   Initializing field offheap start=97 field=Month.sortedset
   Initializing field offheap start=118 field=body
   Initializing field onheap start=267 field=date
   Initializing field onheap start=289 field=groupend
   Initializing field onheap start=311 field=id
   Initializing field onheap start=333 field=title
   ```
   Though, when I restricted tests to PKLookups only using 
comp.addTaskPattern('PKLookup') in localrun.py, results look as expected:
   ```
   wikimedium10k                                             
   TaskQPS       baseline      StdDevQPS     candidate       StdDev       Pct 
diff                             
   PKLookup      163.29            (1.6%)      164.80      (2.1%)       0.9% 
(-2% - 4%)  
   ```
   ```
   wikimedium10m
   TaskQPS      baseline      StdDevQPS      candidate    StdDev     Pct diff
   PKLookup      114.29            (1.7%)     114.73       (1.2%)     0.4% ( 
-2% - 3%)   
   ```
   I guess we are good then.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to