You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by le...@apache.org on 2020/02/13 22:41:25 UTC

[incubator-datasketches-characterization] branch master updated: Update configs affected by BaseSerDeProfile.

This is an automated email from the ASF dual-hosted git repository.

leerho pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-datasketches-characterization.git


The following commit(s) were added to refs/heads/master by this push:
     new 8b5f6e4  Update configs affected by BaseSerDeProfile.
8b5f6e4 is described below

commit 8b5f6e4895a123b33789e50ca001c69745c2b268
Author: Lee Rhodes <le...@users.noreply.github.com>
AuthorDate: Thu Feb 13 14:41:09 2020 -0800

    Update configs affected by BaseSerDeProfile.
    
    Also updage SketchesCheckstyle for new version.
---
 .../characterization/cpc/CpcSerDeProfile.java      | 26 +++++-----
 .../frequencies/LongsSketchSpeedProfile.java       |  2 +-
 .../characterization/hll/HllSerDeProfile.java      | 14 ++++--
 .../characterization/hll/ZetaHllSerDeProfile.java  | 27 +++++-----
 .../quantiles/DoublesSketchSpeedProfile.java       |  4 +-
 .../quantiles/ItemsSketchSpeedProfile.java         |  2 +-
 .../quantiles/KllFloatsSketchSpeedProfile.java     |  2 +-
 .../quantiles/tdigest/TDigestSpeedProfile.java     |  2 +-
 .../characterization/theta/ThetaSerDeProfile.java  | 47 +++++++++++++-----
 .../uniquecount/BaseSerDeProfile.java              | 58 ++++++++++++----------
 .../{ThetaSerDeJob.conf => ThetaSerDeEstJob.conf}  |  6 ++-
 tools/SketchesCheckstyle.xml                       |  7 +--
 12 files changed, 114 insertions(+), 83 deletions(-)

diff --git a/src/main/java/org/apache/datasketches/characterization/cpc/CpcSerDeProfile.java b/src/main/java/org/apache/datasketches/characterization/cpc/CpcSerDeProfile.java
index 92b09ae..a6b8c14 100644
--- a/src/main/java/org/apache/datasketches/characterization/cpc/CpcSerDeProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/cpc/CpcSerDeProfile.java
@@ -35,33 +35,31 @@ public class CpcSerDeProfile extends BaseSerDeProfile {
 
 
   @Override
-  public void doTrial(final Stats stats, final int uPerTrial) {
+  public void doTrial(final long[] stats, final int uPerTrial) {
     sketch.reset(); // reuse the same sketch
 
     for (int u = uPerTrial; u-- > 0;) {
       sketch.update(++vIn);
     }
-    final double est1 = sketch.getEstimate();
-
-    final byte[] byteArr;
-    final long startSerTime_nS, stopSerTime_nS;
 
-    startSerTime_nS = System.nanoTime();
-    byteArr = sketch.toByteArray();
-    stopSerTime_nS = System.nanoTime();
+    final long startEstTime_nS = System.nanoTime();
+    final double est1 = sketch.getEstimate();
 
-    final long startDeserTime_nS, stopDeserTime_nS;
+    final long startSerTime_nS = System.nanoTime();
+    final byte[] byteArr = sketch.toByteArray();
 
-    startDeserTime_nS = System.nanoTime();
+    final long startDeSerTime_nS = System.nanoTime();
     final CpcSketch sketch2 = CpcSketch.heapify(byteArr);
-    stopDeserTime_nS = System.nanoTime();
+
+    final long emdTime_nS = System.nanoTime();
 
     final double est2 = sketch2.getEstimate();
     assert est1 == est2;
 
-    stats.serializeTime_nS = stopSerTime_nS - startSerTime_nS;
-    stats.deserializeTime_nS = stopDeserTime_nS - startDeserTime_nS;
-    stats.size_bytes = byteArr.length;
+    stats[est_ns] = startSerTime_nS - startEstTime_nS;
+    stats[ser_ns] = startDeSerTime_nS - startSerTime_nS;
+    stats[deser_ns] = emdTime_nS - startDeSerTime_nS;
+    stats[size_bytes] = byteArr.length;
   }
 
 }
diff --git a/src/main/java/org/apache/datasketches/characterization/frequencies/LongsSketchSpeedProfile.java b/src/main/java/org/apache/datasketches/characterization/frequencies/LongsSketchSpeedProfile.java
index b2c095e..92e4234 100644
--- a/src/main/java/org/apache/datasketches/characterization/frequencies/LongsSketchSpeedProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/frequencies/LongsSketchSpeedProfile.java
@@ -85,7 +85,7 @@ public class LongsSketchSpeedProfile extends BaseFrequenciesSpeedProfile {
 
   @Override
   String getHeader() {
-    return "Stream\tTrials\tBuild\tUpdate\tSer\tDeser\tItems\tSize";
+    return "Stream\tTrials\tBuild\tUpdate\tSer\tDeser\tItems\tstatsSize";
   }
 
   @Override
diff --git a/src/main/java/org/apache/datasketches/characterization/hll/HllSerDeProfile.java b/src/main/java/org/apache/datasketches/characterization/hll/HllSerDeProfile.java
index 995191f..f5bcfdb 100644
--- a/src/main/java/org/apache/datasketches/characterization/hll/HllSerDeProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/hll/HllSerDeProfile.java
@@ -56,15 +56,18 @@ public class HllSerDeProfile extends BaseSerDeProfile {
   }
 
   @Override
-  public void doTrial(final Stats stats, final int uPerTrial) {
+  public void doTrial(final long[] stats, final int uPerTrial) {
     sketch.reset(); // reuse the same sketch
+    final byte[] byteArr;
 
     for (int u = uPerTrial; u-- > 0;) {
       sketch.update(++vIn);
     }
+
+    final long startEstTime_nS = System.nanoTime();
     final double est1 = sketch.getEstimate();
+    final long stopEstTime_nS = System.nanoTime();
 
-    final byte[] byteArr;
     final long startSerTime_nS, stopSerTime_nS;
     if (compact) {
       startSerTime_nS = System.nanoTime();
@@ -92,9 +95,10 @@ public class HllSerDeProfile extends BaseSerDeProfile {
     final double est2 = sketch2.getEstimate();
     assert est1 == est2;
 
-    stats.serializeTime_nS = stopSerTime_nS - startSerTime_nS;
-    stats.deserializeTime_nS = stopDeserTime_nS - startDeserTime_nS;
-    stats.size_bytes = byteArr.length;
+    stats[est_ns] = stopEstTime_nS - startEstTime_nS;
+    stats[ser_ns] = stopSerTime_nS - startSerTime_nS;
+    stats[deser_ns] = stopDeserTime_nS - startDeserTime_nS;
+    stats[size_bytes] = byteArr.length;
   }
 
 }
diff --git a/src/main/java/org/apache/datasketches/characterization/hll/ZetaHllSerDeProfile.java b/src/main/java/org/apache/datasketches/characterization/hll/ZetaHllSerDeProfile.java
index 27f9b63..50dac8a 100644
--- a/src/main/java/org/apache/datasketches/characterization/hll/ZetaHllSerDeProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/hll/ZetaHllSerDeProfile.java
@@ -78,33 +78,30 @@ public class ZetaHllSerDeProfile extends BaseSerDeProfile {
   }
 
   @Override
-  public void doTrial(final Stats stats, final int uPerTrial) {
+  public void doTrial(final long[] stats, final int uPerTrial) {
     reset();
-    //Serialize
+
     for (int u = uPerTrial; u-- > 0;) {
       sketch1.add(++vIn);
     }
-    final double est1 = sketch1.result();
 
-    final byte[] byteArr;
-    final long startSerTime_nS, stopSerTime_nS;
+    final long startEstTime_nS = System.nanoTime();
+    final double est1 = sketch1.result();
 
-    startSerTime_nS = System.nanoTime();
-    byteArr = sketch1.serializeToByteArray();
-    stopSerTime_nS = System.nanoTime();
+    final long startSerTime_nS = System.nanoTime();
+    final byte[] byteArr = sketch1.serializeToByteArray();
 
-    //Deserialize
-    final long startDeserTime_nS, stopDeserTime_nS;
-    startDeserTime_nS = System.nanoTime();
+    final long startDeSerTime_nS = System.nanoTime();
     sketch2 = HyperLogLogPlusPlus.forProto(byteArr);
-    stopDeserTime_nS = System.nanoTime();
+    final long endTime_nS = System.nanoTime();
 
     final double est2 = sketch2.result();
     assert est1 == est2;
 
-    stats.serializeTime_nS = stopSerTime_nS - startSerTime_nS;
-    stats.deserializeTime_nS = stopDeserTime_nS - startDeserTime_nS;
-    stats.size_bytes = byteArr.length;
+    stats[est_ns] = startSerTime_nS - startEstTime_nS;
+    stats[ser_ns] = startDeSerTime_nS - startSerTime_nS;
+    stats[deser_ns] = endTime_nS - startDeSerTime_nS;
+    stats[size_bytes] = byteArr.length;
   }
 
 }
diff --git a/src/main/java/org/apache/datasketches/characterization/quantiles/DoublesSketchSpeedProfile.java b/src/main/java/org/apache/datasketches/characterization/quantiles/DoublesSketchSpeedProfile.java
index 8058e20..709ead8 100644
--- a/src/main/java/org/apache/datasketches/characterization/quantiles/DoublesSketchSpeedProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/quantiles/DoublesSketchSpeedProfile.java
@@ -196,8 +196,8 @@ public class DoublesSketchSpeedProfile extends BaseQuantilesSpeedProfile {
 
   @Override
   String getHeader() {
-    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tRank\tSer\tDeser\tSize"
-        + "\tCompact\tQuant\tCDF\tRank\tSer\tDeser\tSize\tItems";
+    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tRank\tSer\tDeser\tstatsSize"
+        + "\tCompact\tQuant\tCDF\tRank\tSer\tDeser\tstatsSize\tItems";
   }
 
   @Override
diff --git a/src/main/java/org/apache/datasketches/characterization/quantiles/ItemsSketchSpeedProfile.java b/src/main/java/org/apache/datasketches/characterization/quantiles/ItemsSketchSpeedProfile.java
index b220e75..fd367f2 100644
--- a/src/main/java/org/apache/datasketches/characterization/quantiles/ItemsSketchSpeedProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/quantiles/ItemsSketchSpeedProfile.java
@@ -125,7 +125,7 @@ public class ItemsSketchSpeedProfile extends BaseQuantilesSpeedProfile {
 
   @Override
   String getHeader() {
-    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tRank\tSer\tDeser\tItems\tSize";
+    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tRank\tSer\tDeser\tItems\tstatsSize";
   }
 
   @Override
diff --git a/src/main/java/org/apache/datasketches/characterization/quantiles/KllFloatsSketchSpeedProfile.java b/src/main/java/org/apache/datasketches/characterization/quantiles/KllFloatsSketchSpeedProfile.java
index 0dda396..579b7cb 100644
--- a/src/main/java/org/apache/datasketches/characterization/quantiles/KllFloatsSketchSpeedProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/quantiles/KllFloatsSketchSpeedProfile.java
@@ -129,7 +129,7 @@ public class KllFloatsSketchSpeedProfile extends BaseQuantilesSpeedProfile {
 
   @Override
   String getHeader() {
-    return "Stream\tTrials\tBuild\tUpdate\tQuant\tQuants\tRank\tCDF\tSer\tDeser\tItems\tSize";
+    return "Stream\tTrials\tBuild\tUpdate\tQuant\tQuants\tRank\tCDF\tSer\tDeser\tItems\tstatsSize";
   }
 
   @Override
diff --git a/src/main/java/org/apache/datasketches/characterization/quantiles/tdigest/TDigestSpeedProfile.java b/src/main/java/org/apache/datasketches/characterization/quantiles/tdigest/TDigestSpeedProfile.java
index f12f49a..cd84b8d 100644
--- a/src/main/java/org/apache/datasketches/characterization/quantiles/tdigest/TDigestSpeedProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/quantiles/tdigest/TDigestSpeedProfile.java
@@ -123,7 +123,7 @@ public class TDigestSpeedProfile extends QuantilesSpeedProfile {
 
   @Override
   String getHeader() {
-    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tSer\tDe\tSer\tDe\tItems\tSize\tSmall";
+    return "Stream\tTrials\tBuild\tUpdate\tQuant\tCDF\tSer\tDe\tSer\tDe\tItems\tstatsSize\tSmall";
   }
 
   @Override
diff --git a/src/main/java/org/apache/datasketches/characterization/theta/ThetaSerDeProfile.java b/src/main/java/org/apache/datasketches/characterization/theta/ThetaSerDeProfile.java
index 1f9f056..1842bcb 100644
--- a/src/main/java/org/apache/datasketches/characterization/theta/ThetaSerDeProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/theta/ThetaSerDeProfile.java
@@ -19,6 +19,8 @@
 
 package org.apache.datasketches.characterization.theta;
 
+import static org.testng.Assert.assertEquals;
+
 import org.apache.datasketches.Family;
 import org.apache.datasketches.ResizeFactor;
 import org.apache.datasketches.characterization.uniquecount.BaseSerDeProfile;
@@ -33,6 +35,9 @@ import org.apache.datasketches.theta.UpdateSketchBuilder;
  */
 public class ThetaSerDeProfile extends BaseSerDeProfile {
   private UpdateSketch sketch;
+  private boolean serde = false;
+  private boolean est = false;
+  private double err;
 
   @Override
   public void configure() {
@@ -41,8 +46,11 @@ public class ThetaSerDeProfile extends BaseSerDeProfile {
     final float p = Float.parseFloat(prop.mustGet("THETA_p"));
     final ResizeFactor rf = ResizeFactor.getRF(Integer.parseInt(prop.mustGet("THETA_lgRF")));
     final boolean direct = Boolean.parseBoolean(prop.mustGet("THETA_direct"));
+    serde = Boolean.parseBoolean(prop.mustGet("THETA_SerDe"));
+    est = Boolean.parseBoolean(prop.mustGet("THETA_Est"));
 
     final int k = 1 << lgK;
+    err = 5.0 / Math.sqrt(k);
     final UpdateSketchBuilder udBldr = UpdateSketch.builder()
         .setNominalEntries(k)
         .setFamily(family)
@@ -59,28 +67,41 @@ public class ThetaSerDeProfile extends BaseSerDeProfile {
   }
 
   @Override
-  public void doTrial(final Stats stats, final int uPerTrial) {
+  public void doTrial(final long[] stats, final int uPerTrial) {
     sketch.reset(); // reuse the same sketch
+    double est1 = 0;
+    double est2 = 0;
+    UpdateSketch sketch2 = null;
 
     for (int u = uPerTrial; u-- > 0;) { //populate the sketch
       sketch.update(++vIn);
     }
-    final double est1 = sketch.getEstimate();
-
-    final long startSerTime_nS = System.nanoTime();
-    final byte[] byteArr = sketch.toByteArray();
+    if (est) {
+      final long startEstTime_nS = System.nanoTime();
+      est1 = sketch.getEstimate();
+      final long stopEstTime_nS = System.nanoTime();
 
-    final long startDeSerTime_nS = System.nanoTime();
+      assertEquals(est1, uPerTrial, uPerTrial * err);
+      stats[est_ns] = est ? stopEstTime_nS - startEstTime_nS : 0;
+    }
+    if (serde) {
+      final long startSerTime_nS = System.nanoTime();
+      final byte[] byteArr = sketch.toByteArray();
 
-    final UpdateSketch sketch2 = UpdateSketch.heapify(Memory.wrap(byteArr));
-    final long endDeTime_nS = System.nanoTime();
+      final long startDeserTime_nS = System.nanoTime();
+      sketch2 = UpdateSketch.heapify(Memory.wrap(byteArr));
+      final long stopSerDeTime_nS = System.nanoTime();
 
-    final double est2 = sketch2.getEstimate();
-    assert est1 == est2;
+      est2 = sketch2.getEstimate();
+      assertEquals(est2, uPerTrial, uPerTrial * err);
+      stats[ser_ns] = serde ? startDeserTime_nS - startSerTime_nS : 0;
+      stats[deser_ns] = serde ? stopSerDeTime_nS - startDeserTime_nS : 0;
+      stats[size_bytes] = serde ? byteArr.length : 0;
+    }
+    if (est && serde) {
+      assertEquals(est1, est2, 0.0);
+    }
 
-    stats.serializeTime_nS = startDeSerTime_nS - startSerTime_nS;
-    stats.deserializeTime_nS = endDeTime_nS - startDeSerTime_nS;
-    stats.size_bytes = byteArr.length;
   }
 
 }
diff --git a/src/main/java/org/apache/datasketches/characterization/uniquecount/BaseSerDeProfile.java b/src/main/java/org/apache/datasketches/characterization/uniquecount/BaseSerDeProfile.java
index fa77183..0b24ba0 100644
--- a/src/main/java/org/apache/datasketches/characterization/uniquecount/BaseSerDeProfile.java
+++ b/src/main/java/org/apache/datasketches/characterization/uniquecount/BaseSerDeProfile.java
@@ -23,6 +23,8 @@ import static java.lang.Math.log;
 import static java.lang.Math.pow;
 import static org.apache.datasketches.Util.pwr2LawNext;
 
+import java.util.Arrays;
+
 import org.apache.datasketches.Job;
 import org.apache.datasketches.JobProfile;
 import org.apache.datasketches.Properties;
@@ -43,7 +45,13 @@ public abstract class BaseSerDeProfile implements JobProfile {
   int lgMaxBpU;
   double slope;
   public int lgK;
-  public Stats stats = new Stats();
+
+  //stat measurements
+  public static final int ser_ns = 0;
+  public static final int deser_ns = 1;
+  public static final int est_ns = 2;
+  public static final int size_bytes = 3;
+  public static final int numStats = 4;
 
   //JobProfile
   @Override
@@ -84,36 +92,39 @@ public abstract class BaseSerDeProfile implements JobProfile {
 
   /**
    * Populates the sketch with the given uPerTrial and loads the stats.
-   * @param stats the given stats class
+   * @param stats the given stats array
    * @param uPerTrial the given uniques per trial to be offered
    */
-  public abstract void doTrial(Stats stats, int uPerTrial);
+  public abstract void doTrial(long[] stats, int uPerTrial);
 
   private void doTrials() {
     final int maxU = 1 << lgMaxU;
     final int minU = 1 << lgMinU;
     int lastU = 0;
     final StringBuilder dataStr = new StringBuilder();
+    final long[] rawStats = new long[numStats];
+    final long[] sumStats = new long[numStats];
+    final double[] meanStats = new double[numStats];
     println(getHeader());
+
     while (lastU < maxU) { //for each U point on X-axis, OR one row on output
       final int nextU = (lastU == 0) ? minU : pwr2LawNext(uPPO, lastU);
       lastU = nextU;
       final int trials = getNumTrials(nextU);
 
-      double sumSerialzeTime_nS = 0;
-      double sumDeserializeTime_nS = 0;
-      double sumSizeBytes = 0;
+      Arrays.fill(sumStats, 0);
+
       System.gc(); //much slower but cleaner plots
       for (int t = 0; t < trials; t++) {
-        doTrial(stats, nextU); //at this # of uniques
-        sumSerialzeTime_nS += stats.serializeTime_nS;
-        sumDeserializeTime_nS += stats.deserializeTime_nS;
-        sumSizeBytes += stats.size_bytes;
+        doTrial(rawStats, nextU); //at this # of uniques
+        for (int i = 0; i < numStats; i++) {
+          sumStats[i] += rawStats[i];
+        }
+      }
+      for (int i = 0; i < numStats; i++) {
+        meanStats[i] = (double)sumStats[i] / trials;
       }
-      final double meanSerializeTime_nS = sumSerialzeTime_nS / trials;
-      final double meanDeserializeTime_nS = sumDeserializeTime_nS / trials;
-      final long size = Math.round(sumSizeBytes / trials);
-      process(meanSerializeTime_nS, meanDeserializeTime_nS, size, trials, nextU, dataStr);
+      process(meanStats, trials, nextU, dataStr);
       println(dataStr.toString());
     }
   }
@@ -143,15 +154,16 @@ public abstract class BaseSerDeProfile implements JobProfile {
     return (int) pow(2.0, lgTrials);
   }
 
-  private static void process(final double meanSerTime_nS, final double meanDeserTime_nS,
-      final long size, final int trials, final int uPerTrial, final StringBuilder dataStr) {
+  private static void process(final double[] meanStats, final int trials, final int uPerTrial,
+      final StringBuilder dataStr) {
     //OUTPUT
-    dataStr.setLength(0);
+    dataStr.setLength(0); //reset
     dataStr.append(uPerTrial).append(TAB);
     dataStr.append(trials).append(TAB);
-    dataStr.append(meanSerTime_nS).append(TAB);
-    dataStr.append(meanDeserTime_nS).append(TAB);
-    dataStr.append(size);
+    dataStr.append(String.format("%12.1f", meanStats[ser_ns])).append(TAB);
+    dataStr.append(String.format("%12.1f", meanStats[deser_ns])).append(TAB);
+    dataStr.append(String.format("%12.1f", meanStats[est_ns])).append(TAB);
+    dataStr.append(String.format("%12.1f", meanStats[size_bytes]));
   }
 
   private static String getHeader() {
@@ -160,13 +172,9 @@ public abstract class BaseSerDeProfile implements JobProfile {
     sb.append("Trials").append(TAB);
     sb.append("Ser_nS").append(TAB);
     sb.append("DeSer_nS").append(TAB);
+    sb.append("Est_nS").append(TAB);
     sb.append("Size_B");
     return sb.toString();
   }
 
-  public static final class Stats {
-    public double serializeTime_nS;
-    public double deserializeTime_nS;
-    public long size_bytes;
-  }
 }
diff --git a/src/main/resources/theta/ThetaSerDeJob.conf b/src/main/resources/theta/ThetaSerDeEstJob.conf
similarity index 90%
rename from src/main/resources/theta/ThetaSerDeJob.conf
rename to src/main/resources/theta/ThetaSerDeEstJob.conf
index d5cec06..68ba91b 100644
--- a/src/main/resources/theta/ThetaSerDeJob.conf
+++ b/src/main/resources/theta/ThetaSerDeEstJob.conf
@@ -24,7 +24,7 @@ Trials_UPPO=2    #The horizontal x-resolution of trial points, Points Per Octave
 
 # Trials Profile
 Trials_lgMaxT=16  #Max trials at start (low counts)
-Trials_lgMinT=7  #Min trials at tail (high counts) 
+Trials_lgMinT=12  #Min trials at tail (high counts) 
 
 #Trails Speed related
 Trials_lgMinBpU=0   #start the downward slope of trials at this LgU
@@ -39,8 +39,10 @@ ReadableDateFormat=yyyy/MM/dd HH:mm:ss z
 #Job Profile
 JobProfile=org.apache.datasketches.characterization.theta.ThetaSerDeProfile
 LgK=12
-THETA_lgRF=0     #set the log resize factor to 0 (RF = 1)
+THETA_lgRF=1     #set the log resize factor (0 -> RF1, 1 -> RF2, 2 -> RF4, 3 -> RF8)
 THETA_famName=QUICKSELECT #QUICKSELECT. Cannot use ALPHA until 0.10.4
 THETA_p=1.0
 THETA_direct=false
 THETA_rebuild=false
+THETA_SerDe=false
+THETA_Est=true
diff --git a/tools/SketchesCheckstyle.xml b/tools/SketchesCheckstyle.xml
index 90597a9..03a69c3 100644
--- a/tools/SketchesCheckstyle.xml
+++ b/tools/SketchesCheckstyle.xml
@@ -39,7 +39,7 @@ under the License.
   <property name="fileExtensions" value="java"/>
 
   <module name="BeforeExecutionExclusionFileFilter">
-    <property name="fileNamePattern" value=".*Test\.java$"/>
+    <property name="fileNamePattern" value="src/test/java/.+$"/> 
   </module>
 
   <module name="FileTabCharacter">
@@ -184,6 +184,7 @@ under the License.
     
     <module name="UnusedImports"/>
     
+
     <!-- Filters -->
     <!-- Enable suppression using comments: //CHECKSTYLE.OFF: "RULE" and //CHECKSTYLE.ON: "RULE"
      You must specify the specific rule, as in: //CHECKSTYLE.OFF: LineLength -->
@@ -203,10 +204,10 @@ under the License.
     <module name="JavadocMethod">
       <property name="scope" value="public"/>
       <property name="allowMissingParamTags" value="false"/>
-      <property name="allowMissingThrowsTags" value="true"/>
+      <!-- <property name="allowMissingThrowsTags" value="true"/> now not allowed ?!? -->
       <property name="allowMissingReturnTag" value="false"/>
       <property name="allowedAnnotations" value="Override, Test"/>
-      <property name="allowThrowsTagsForSubclasses" value="true"/>
+      <!-- <property name="allowThrowsTagsForSubclasses" value="true"/> now not allowed ?!? -->
     </module>
     
     <module name="JavadocParagraph"/>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org