You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by hu...@apache.org on 2023/12/05 09:54:33 UTC
(iotdb) branch lmh/extendFilter updated (b2141492e9d -> c611d3b2c9f)
This is an automated email from the ASF dual-hosted git repository.
hui pushed a change to branch lmh/extendFilter
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from b2141492e9d add comments
new c84a54bb421 remove isAllNulls method
new c611d3b2c9f delete IStatisticsProvider & fix seder
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../read/reader/chunk/MemAlignedPageReader.java | 5 --
.../read/reader/chunk/MemPageReader.java | 5 --
.../iotdb/tsfile/file/header/PageHeader.java | 5 --
.../tsfile/file/metadata/AlignedChunkMetadata.java | 7 ---
.../file/metadata/AlignedTimeSeriesMetadata.java | 7 ---
.../iotdb/tsfile/file/metadata/ChunkMetadata.java | 5 --
.../iotdb/tsfile/file/metadata/IMetadata.java | 2 -
.../tsfile/file/metadata/IStatisticsProvider.java | 54 ----------------------
.../tsfile/file/metadata/TimeseriesMetadata.java | 5 --
.../read/filter/basic/BinaryLogicalFilter.java | 5 +-
.../iotdb/tsfile/read/filter/operator/Not.java | 3 +-
.../read/filter/operator/ValueFilterOperators.java | 6 ++-
.../tsfile/read/reader/page/AlignedPageReader.java | 7 ---
.../iotdb/tsfile/read/reader/page/PageReader.java | 5 --
.../iotdb/tsfile/read/filter/FilterTestUtil.java | 12 -----
15 files changed, 8 insertions(+), 125 deletions(-)
delete mode 100644 iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IStatisticsProvider.java
(iotdb) 01/02: remove isAllNulls method
Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch lmh/extendFilter
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c84a54bb4214c7f42e710343a6329ea632e82a69
Author: Minghui Liu <li...@foxmail.com>
AuthorDate: Tue Dec 5 17:51:14 2023 +0800
remove isAllNulls method
---
.../dataregion/read/reader/chunk/MemAlignedPageReader.java | 5 -----
.../dataregion/read/reader/chunk/MemPageReader.java | 5 -----
.../java/org/apache/iotdb/tsfile/file/header/PageHeader.java | 5 -----
.../iotdb/tsfile/file/metadata/AlignedChunkMetadata.java | 7 -------
.../tsfile/file/metadata/AlignedTimeSeriesMetadata.java | 7 -------
.../org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java | 5 -----
.../org/apache/iotdb/tsfile/file/metadata/IMetadata.java | 2 --
.../iotdb/tsfile/file/metadata/TimeseriesMetadata.java | 5 -----
.../tsfile/read/filter/operator/ValueFilterOperators.java | 6 +++++-
.../iotdb/tsfile/read/reader/page/AlignedPageReader.java | 7 -------
.../org/apache/iotdb/tsfile/read/reader/page/PageReader.java | 5 -----
.../org/apache/iotdb/tsfile/read/filter/FilterTestUtil.java | 12 ------------
12 files changed, 5 insertions(+), 66 deletions(-)
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemAlignedPageReader.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemAlignedPageReader.java
index 0eb93c10d37..079fdfa4cdb 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemAlignedPageReader.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemAlignedPageReader.java
@@ -246,11 +246,6 @@ public class MemAlignedPageReader implements IPageReader {
return chunkMetadata.hasNullValue(measurementIndex);
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return chunkMetadata.isAllNulls(measurementIndex);
- }
-
@Override
public void setFilter(Filter filter) {
if (valueFilter == null) {
diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReader.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReader.java
index d29fc4d7e9e..3ac6b530c00 100644
--- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReader.java
+++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReader.java
@@ -344,11 +344,6 @@ public class MemPageReader implements IPageReader {
return chunkMetadata.hasNullValue(measurementIndex);
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return chunkMetadata.isAllNulls(measurementIndex);
- }
-
@Override
public void setFilter(Filter filter) {
if (valueFilter == null) {
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/PageHeader.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/PageHeader.java
index 86dcef8a9f6..4e07f6de559 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/PageHeader.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/PageHeader.java
@@ -128,11 +128,6 @@ public class PageHeader implements IMetadata {
return false;
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return false;
- }
-
public long getEndTime() {
return statistics.getEndTime();
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedChunkMetadata.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedChunkMetadata.java
index ffc8f247610..2f2ff370ebb 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedChunkMetadata.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedChunkMetadata.java
@@ -72,13 +72,6 @@ public class AlignedChunkMetadata implements IChunkMetadata {
return statistics.map(stat -> stat.hasNullValue(rowCount)).orElse(true);
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- Optional<Statistics<? extends Serializable>> statistics =
- getMeasurementStatistics(measurementIndex);
- return statistics.map(stat -> stat.getCount() == 0).orElse(true);
- }
-
public int getMeasurementCount() {
return valueChunkMetadataList.size();
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedTimeSeriesMetadata.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedTimeSeriesMetadata.java
index de778dcd8b6..2339548462b 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedTimeSeriesMetadata.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/AlignedTimeSeriesMetadata.java
@@ -74,13 +74,6 @@ public class AlignedTimeSeriesMetadata implements ITimeSeriesMetadata {
return statistics.map(stat -> stat.hasNullValue(rowCount)).orElse(true);
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- Optional<Statistics<? extends Serializable>> statistics =
- getMeasurementStatistics(measurementIndex);
- return statistics.map(stat -> stat.getCount() == 0).orElse(true);
- }
-
public int getMeasurementCount() {
return valueTimeseriesMetadataList.size();
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
index e4f56e8ed63..08473ddf785 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetadata.java
@@ -366,9 +366,4 @@ public class ChunkMetadata implements IChunkMetadata {
public boolean hasNullValue(int measurementIndex) {
return false;
}
-
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return false;
- }
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IMetadata.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IMetadata.java
index 0bc8c397122..6ff8cd5ffeb 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IMetadata.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IMetadata.java
@@ -33,6 +33,4 @@ public interface IMetadata {
Optional<Statistics<? extends Serializable>> getMeasurementStatistics(int measurementIndex);
boolean hasNullValue(int measurementIndex);
-
- boolean isAllNulls(int measurementIndex);
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
index 608bafeed5e..cb9687c5e56 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
@@ -250,11 +250,6 @@ public class TimeseriesMetadata implements ITimeSeriesMetadata {
return false;
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return false;
- }
-
public void setChunkMetadataLoader(IChunkMetadataLoader chunkMetadataLoader) {
this.chunkMetadataLoader = chunkMetadataLoader;
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/ValueFilterOperators.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/ValueFilterOperators.java
index 561bf92245d..641d2f396fe 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/ValueFilterOperators.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/ValueFilterOperators.java
@@ -663,7 +663,11 @@ public final class ValueFilterOperators {
// we are looking for records where v notEq(null)
// so, if this is a column of all nulls, we can drop it
- return metadata.isAllNulls(measurementIndex);
+ return isAllNulls(statistics.get());
+ }
+
+ private boolean isAllNulls(Statistics<? extends Serializable> statistics) {
+ return statistics.getCount() == 0;
}
@Override
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/AlignedPageReader.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/AlignedPageReader.java
index f25f68dd531..253b7f544db 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/AlignedPageReader.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/AlignedPageReader.java
@@ -404,13 +404,6 @@ public class AlignedPageReader implements IPageReader {
return statistics.map(stat -> stat.hasNullValue(rowCount)).orElse(true);
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- Optional<Statistics<? extends Serializable>> statistics =
- getMeasurementStatistics(measurementIndex);
- return statistics.map(stat -> stat.getCount() == 0).orElse(true);
- }
-
private List<Statistics<? extends Serializable>> getValueStatisticsList() {
List<Statistics<? extends Serializable>> valueStatisticsList = new ArrayList<>();
for (ValuePageReader v : valuePageReaderList) {
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/PageReader.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/PageReader.java
index 83c71faa2af..116a581ee63 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/PageReader.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/page/PageReader.java
@@ -356,11 +356,6 @@ public class PageReader implements IPageReader {
return false;
}
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return false;
- }
-
@Override
public void setFilter(Filter filter) {
if (this.filter == null) {
diff --git a/iotdb-core/tsfile/src/test/java/org/apache/iotdb/tsfile/read/filter/FilterTestUtil.java b/iotdb-core/tsfile/src/test/java/org/apache/iotdb/tsfile/read/filter/FilterTestUtil.java
index 3285b948417..07f7e9fb064 100644
--- a/iotdb-core/tsfile/src/test/java/org/apache/iotdb/tsfile/read/filter/FilterTestUtil.java
+++ b/iotdb-core/tsfile/src/test/java/org/apache/iotdb/tsfile/read/filter/FilterTestUtil.java
@@ -56,11 +56,6 @@ public class FilterTestUtil {
public boolean hasNullValue(int measurementIndex) {
return false;
}
-
- @Override
- public boolean isAllNulls(int measurementIndex) {
- return false;
- }
};
}
@@ -106,12 +101,5 @@ public class FilterTestUtil {
getMeasurementStatistics(measurementIndex);
return statistics.map(stat -> stat.hasNullValue(rowCount)).orElse(true);
}
-
- @Override
- public boolean isAllNulls(int measurementIndex) {
- Optional<Statistics<? extends Serializable>> statistics =
- getMeasurementStatistics(measurementIndex);
- return statistics.map(stat -> stat.getCount() == 0).orElse(true);
- }
}
}
(iotdb) 02/02: delete IStatisticsProvider & fix seder
Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch lmh/extendFilter
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c611d3b2c9fb2b10b47485f9fa13ceb48c2aa88c
Author: Minghui Liu <li...@foxmail.com>
AuthorDate: Tue Dec 5 17:54:24 2023 +0800
delete IStatisticsProvider & fix seder
---
.../tsfile/file/metadata/IStatisticsProvider.java | 54 ----------------------
.../read/filter/basic/BinaryLogicalFilter.java | 5 +-
.../iotdb/tsfile/read/filter/operator/Not.java | 3 +-
3 files changed, 3 insertions(+), 59 deletions(-)
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IStatisticsProvider.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IStatisticsProvider.java
deleted file mode 100644
index 5dc304a733f..00000000000
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/IStatisticsProvider.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.iotdb.tsfile.file.metadata;
-
-import org.apache.iotdb.tsfile.file.metadata.statistics.Statistics;
-
-import java.io.Serializable;
-import java.util.Optional;
-
-public interface IStatisticsProvider {
-
- Statistics<? extends Serializable> getTimeStatistics();
-
- Optional<Statistics<? extends Serializable>> getMeasurementStatistics(int measurementIndex);
-
- int getMeasurementCount();
-
- default boolean hasNullValue(int measurementIndex) {
- long rowCount = getTimeStatistics().getCount();
- Optional<Statistics<? extends Serializable>> statistics =
- getMeasurementStatistics(measurementIndex);
- return statistics.map(stat -> stat.hasNullValue(rowCount)).orElse(true);
- }
-
- default boolean isAllNulls(int measurementIndex) {
- return false;
- }
-
- default boolean timeAllSelected() {
- for (int index = 0; index < getMeasurementCount(); index++) {
- if (!hasNullValue(index)) {
- return true;
- }
- }
- return false;
- }
-}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/basic/BinaryLogicalFilter.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/basic/BinaryLogicalFilter.java
index 18c7d70d74c..8a947404318 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/basic/BinaryLogicalFilter.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/basic/BinaryLogicalFilter.java
@@ -19,8 +19,6 @@
package org.apache.iotdb.tsfile.read.filter.basic;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
-
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Objects;
@@ -44,8 +42,9 @@ public abstract class BinaryLogicalFilter extends Filter {
return right;
}
+ @Override
public void serialize(DataOutputStream outputStream) throws IOException {
- ReadWriteIOUtils.write(getOperatorType().ordinal(), outputStream);
+ super.serialize(outputStream);
left.serialize(outputStream);
right.serialize(outputStream);
}
diff --git a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Not.java b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Not.java
index 1f8e71f03b5..add3f3bf3b4 100644
--- a/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Not.java
+++ b/iotdb-core/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Not.java
@@ -23,7 +23,6 @@ import org.apache.iotdb.tsfile.file.metadata.IMetadata;
import org.apache.iotdb.tsfile.read.common.TimeRange;
import org.apache.iotdb.tsfile.read.filter.basic.Filter;
import org.apache.iotdb.tsfile.read.filter.basic.OperatorType;
-import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.io.DataOutputStream;
import java.io.IOException;
@@ -122,7 +121,7 @@ public class Not extends Filter {
@Override
public void serialize(DataOutputStream outputStream) throws IOException {
- ReadWriteIOUtils.write(getOperatorType().ordinal(), outputStream);
+ super.serialize(outputStream);
filter.serialize(outputStream);
}