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

alsay pushed a commit to branch compressed_iterator
in repository https://gitbox.apache.org/repos/asf/datasketches-java.git

commit a0b86ee3cd4f01bd36a5f4e426f4df0d335cd943
Author: AlexanderSaydakov <[email protected]>
AuthorDate: Wed Jan 29 12:05:30 2025 -0800

    cleanup
---
 src/main/java/org/apache/datasketches/theta/CompactSketch.java     | 7 +++++--
 .../apache/datasketches/theta/DirectCompactCompressedSketch.java   | 3 ++-
 .../java/org/apache/datasketches/theta/DirectCompactSketch.java    | 5 -----
 src/main/java/org/apache/datasketches/theta/HeapCompactSketch.java | 5 -----
 .../datasketches/theta/MemoryCompactCompressedHashIterator.java    | 4 ++--
 5 files changed, 9 insertions(+), 15 deletions(-)

diff --git a/src/main/java/org/apache/datasketches/theta/CompactSketch.java 
b/src/main/java/org/apache/datasketches/theta/CompactSketch.java
index 688ad274..7a366fe0 100644
--- a/src/main/java/org/apache/datasketches/theta/CompactSketch.java
+++ b/src/main/java/org/apache/datasketches/theta/CompactSketch.java
@@ -188,8 +188,6 @@ public abstract class CompactSketch extends Sketch {
     final short seedHash = ThetaUtil.computeSeedHash(seed);
 
     if (serVer == 4) {
-      // not wrapping the compressed format since currently we cannot take 
advantage of
-      // decompression during iteration because set operations reach into 
memory directly
       return DirectCompactCompressedSketch.wrapInstance(srcMem,
           enforceSeed ? seedHash : (short) extractSeedHash(srcMem));
     }
@@ -251,6 +249,11 @@ public abstract class CompactSketch extends Sketch {
     return true;
   }
 
+  @Override
+  public double getEstimate() {
+    return Sketch.estimate(getThetaLong(), getRetainedEntries());
+  }
+
   /**
    * gets the sketch as a compressed byte array
    * @return the sketch as a compressed byte array
diff --git 
a/src/main/java/org/apache/datasketches/theta/DirectCompactCompressedSketch.java
 
b/src/main/java/org/apache/datasketches/theta/DirectCompactCompressedSketch.java
index d7e05ca2..6c83add8 100644
--- 
a/src/main/java/org/apache/datasketches/theta/DirectCompactCompressedSketch.java
+++ 
b/src/main/java/org/apache/datasketches/theta/DirectCompactCompressedSketch.java
@@ -118,7 +118,8 @@ class DirectCompactCompressedSketch extends 
DirectCompactSketch {
   public HashIterator iterator() {
     return new MemoryCompactCompressedHashIterator(
       mem_,
-      (extractPreLongs(mem_) > 1 ? 16 : 8) + extractNumEntriesBytesV4(mem_),
+      (extractPreLongs(mem_) > 1 ? START_PACKED_DATA_ESTIMATION_MODE : 
START_PACKED_DATA_EXACT_MODE)
+        + extractNumEntriesBytesV4(mem_),
       extractEntryBitsV4(mem_),
       getRetainedEntries()
     );
diff --git 
a/src/main/java/org/apache/datasketches/theta/DirectCompactSketch.java 
b/src/main/java/org/apache/datasketches/theta/DirectCompactSketch.java
index 1714d216..baedad17 100644
--- a/src/main/java/org/apache/datasketches/theta/DirectCompactSketch.java
+++ b/src/main/java/org/apache/datasketches/theta/DirectCompactSketch.java
@@ -84,11 +84,6 @@ class DirectCompactSketch extends CompactSketch {
     return (preLongs + curCount) << 3;
   }
 
-  @Override
-  public double getEstimate() {
-    return Sketch.estimate(getThetaLong(), getRetainedEntries());
-  }
-
   @Override
   public int getRetainedEntries(final boolean valid) { //compact is always 
valid
     if (otherCheckForSingleItem(mem_)) { return 1; }
diff --git a/src/main/java/org/apache/datasketches/theta/HeapCompactSketch.java 
b/src/main/java/org/apache/datasketches/theta/HeapCompactSketch.java
index f394e930..2572ce5d 100644
--- a/src/main/java/org/apache/datasketches/theta/HeapCompactSketch.java
+++ b/src/main/java/org/apache/datasketches/theta/HeapCompactSketch.java
@@ -87,11 +87,6 @@ class HeapCompactSketch extends CompactSketch {
     return (preLongs_ + curCount_) << 3;
   }
 
-  @Override
-  public double getEstimate() {
-    return Sketch.estimate(thetaLong_, curCount_);
-  }
-
   @Override
   public int getRetainedEntries(final boolean valid) {
     return curCount_;
diff --git 
a/src/main/java/org/apache/datasketches/theta/MemoryCompactCompressedHashIterator.java
 
b/src/main/java/org/apache/datasketches/theta/MemoryCompactCompressedHashIterator.java
index b743302a..d5f37de9 100644
--- 
a/src/main/java/org/apache/datasketches/theta/MemoryCompactCompressedHashIterator.java
+++ 
b/src/main/java/org/apache/datasketches/theta/MemoryCompactCompressedHashIterator.java
@@ -23,8 +23,8 @@ import static 
org.apache.datasketches.theta.PreambleUtil.wholeBytesToHoldBits;
 
 import org.apache.datasketches.memory.Memory;
 
-/**
- * @author Lee Rhodes
+/*
+ * This is to uncompress serial version 4 sketch incrementally
  */
 class MemoryCompactCompressedHashIterator implements HashIterator {
   private Memory mem;


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

Reply via email to