You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/12/28 14:42:13 UTC
[iotdb] 01/01: modify retainedSize calculate
This is an automated email from the ASF dual-hosted git repository.
xiangweiwei pushed a commit to branch iotdb5309
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit d5b79e6a0270ccc778939151fc6927fa018f763a
Author: Alima777 <wx...@gmail.com>
AuthorDate: Wed Dec 28 22:13:56 2022 +0800
modify retainedSize calculate
---
.../java/org/apache/iotdb/tsfile/read/common/block/TsBlock.java | 3 +--
.../apache/iotdb/tsfile/read/common/block/column/BinaryColumn.java | 6 ++++--
.../apache/iotdb/tsfile/read/common/block/column/BooleanColumn.java | 5 +++--
.../apache/iotdb/tsfile/read/common/block/column/DoubleColumn.java | 6 ++++--
.../apache/iotdb/tsfile/read/common/block/column/FloatColumn.java | 6 ++++--
.../org/apache/iotdb/tsfile/read/common/block/column/IntColumn.java | 6 ++++--
.../apache/iotdb/tsfile/read/common/block/column/LongColumn.java | 6 ++++--
.../apache/iotdb/tsfile/read/common/block/column/TimeColumn.java | 4 ++--
8 files changed, 26 insertions(+), 16 deletions(-)
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlock.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlock.java
index 70dad931fb..3c2f6a58d6 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlock.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/TsBlock.java
@@ -30,7 +30,6 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Iterator;
-import static io.airlift.slice.SizeOf.sizeOf;
import static java.lang.String.format;
import static java.util.Objects.requireNonNull;
@@ -471,7 +470,7 @@ public class TsBlock {
}
private long updateRetainedSize() {
- long retainedSizeInBytes = INSTANCE_SIZE + sizeOf(valueColumns);
+ long retainedSizeInBytes = INSTANCE_SIZE;
retainedSizeInBytes += timeColumn.getRetainedSizeInBytes();
for (Column column : valueColumns) {
retainedSizeInBytes += column.getRetainedSizeInBytes();
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BinaryColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BinaryColumn.java
index 85d910fd88..aeca614dfe 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BinaryColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BinaryColumn.java
@@ -27,7 +27,8 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
+import static io.airlift.slice.SizeOf.sizeOfObjectArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class BinaryColumn implements Column {
@@ -67,7 +68,8 @@ public class BinaryColumn implements Column {
this.valueIsNull = valueIsNull;
// TODO we need to sum up all the Binary's retainedSize here
- retainedSizeInBytes = INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values);
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfBooleanArray(positionCount) + sizeOfObjectArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BooleanColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BooleanColumn.java
index 5dc1d427b6..9da7b58b04 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BooleanColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/BooleanColumn.java
@@ -26,7 +26,7 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class BooleanColumn implements Column {
@@ -66,7 +66,8 @@ public class BooleanColumn implements Column {
}
this.valueIsNull = valueIsNull;
- retainedSizeInBytes = (INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values));
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfBooleanArray(positionCount) + sizeOfBooleanArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/DoubleColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/DoubleColumn.java
index 9b13800838..56f0cc7de2 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/DoubleColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/DoubleColumn.java
@@ -26,7 +26,8 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
+import static io.airlift.slice.SizeOf.sizeOfDoubleArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class DoubleColumn implements Column {
@@ -66,7 +67,8 @@ public class DoubleColumn implements Column {
}
this.valueIsNull = valueIsNull;
- retainedSizeInBytes = (INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values));
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfBooleanArray(positionCount) + sizeOfDoubleArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/FloatColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/FloatColumn.java
index 4d8f3e0440..bb3e180ab1 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/FloatColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/FloatColumn.java
@@ -26,7 +26,8 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
+import static io.airlift.slice.SizeOf.sizeOfFloatArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class FloatColumn implements Column {
@@ -65,7 +66,8 @@ public class FloatColumn implements Column {
}
this.valueIsNull = valueIsNull;
- retainedSizeInBytes = (INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values));
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfFloatArray(positionCount) + sizeOfBooleanArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/IntColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/IntColumn.java
index 120e4f44da..38cf078a9f 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/IntColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/IntColumn.java
@@ -26,7 +26,8 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
+import static io.airlift.slice.SizeOf.sizeOfIntArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class IntColumn implements Column {
@@ -65,7 +66,8 @@ public class IntColumn implements Column {
}
this.valueIsNull = valueIsNull;
- retainedSizeInBytes = INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values);
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfIntArray(positionCount) + sizeOfBooleanArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/LongColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/LongColumn.java
index b87b61d2b3..a67fef0fa1 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/LongColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/LongColumn.java
@@ -26,7 +26,8 @@ import org.openjdk.jol.info.ClassLayout;
import java.util.Arrays;
import java.util.Optional;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfBooleanArray;
+import static io.airlift.slice.SizeOf.sizeOfLongArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class LongColumn implements Column {
@@ -65,7 +66,8 @@ public class LongColumn implements Column {
}
this.valueIsNull = valueIsNull;
- retainedSizeInBytes = INSTANCE_SIZE + sizeOf(valueIsNull) + sizeOf(values);
+ retainedSizeInBytes =
+ INSTANCE_SIZE + sizeOfLongArray(positionCount) + sizeOfBooleanArray(positionCount);
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/TimeColumn.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/TimeColumn.java
index df6232ed9f..4245bff643 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/TimeColumn.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/block/column/TimeColumn.java
@@ -22,7 +22,7 @@ import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import org.openjdk.jol.info.ClassLayout;
-import static io.airlift.slice.SizeOf.sizeOf;
+import static io.airlift.slice.SizeOf.sizeOfLongArray;
import static org.apache.iotdb.tsfile.read.common.block.column.ColumnUtil.checkValidRegion;
public class TimeColumn implements Column {
@@ -56,7 +56,7 @@ public class TimeColumn implements Column {
}
this.values = values;
- retainedSizeInBytes = INSTANCE_SIZE + sizeOf(values);
+ retainedSizeInBytes = INSTANCE_SIZE + sizeOfLongArray(positionCount);
}
@Override