uschindler commented on code in PR #13668:
URL: https://github.com/apache/lucene/pull/13668#discussion_r1721755168


##########
lucene/core/src/java/org/apache/lucene/util/bkd/BKDConfig.java:
##########
@@ -31,48 +48,23 @@ public final class BKDConfig {
   /** Maximum number of index dimensions */
   public static final int MAX_INDEX_DIMS = 8;
 
-  /** How many dimensions we are storing at the leaf (data) nodes */
-  public final int numDims;
-
-  /** How many dimensions we are indexing in the internal nodes */
-  public final int numIndexDims;
-
-  /** How many bytes each value in each dimension takes. */
-  public final int bytesPerDim;
-
-  /** max points allowed on a Leaf block */
-  public final int maxPointsInLeafNode;
-
-  /** numDataDims * bytesPerDim */
-  public final int packedBytesLength;
-
-  /** numIndexDims * bytesPerDim */
-  public final int packedIndexBytesLength;
-
-  /** packedBytesLength plus docID size */
-  public final int bytesPerDoc;
-
+  /** Constructor that populates the derived input parameters. */
   public BKDConfig(
       final int numDims,
       final int numIndexDims,
       final int bytesPerDim,
       final int maxPointsInLeafNode) {
-    verifyParams(numDims, numIndexDims, bytesPerDim, maxPointsInLeafNode);
-    this.numDims = numDims;
-    this.numIndexDims = numIndexDims;
-    this.bytesPerDim = bytesPerDim;
-    this.maxPointsInLeafNode = maxPointsInLeafNode;
-    this.packedIndexBytesLength = numIndexDims * bytesPerDim;
-    this.packedBytesLength = numDims * bytesPerDim;
-    // dimensional values (numDims * bytesPerDim) + docID (int)
-    this.bytesPerDoc = this.packedBytesLength + Integer.BYTES;
+    this(
+        numDims,
+        numIndexDims,
+        bytesPerDim,
+        maxPointsInLeafNode,
+        numDims * bytesPerDim,
+        numIndexDims * bytesPerDim,
+        numDims * bytesPerDim + Integer.BYTES);
   }
 
-  private static void verifyParams(
-      final int numDims,
-      final int numIndexDims,
-      final int bytesPerDim,
-      final int maxPointsInLeafNode) {
+  public BKDConfig {

Review Comment:
   moving all the checks here is fine. Can we avoid that `bytesPerDoc` (and 
others) gets initialized with wrong values by this generic ctor?



-- 
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