You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2022/12/13 07:27:48 UTC
[iotdb] 01/02: [IOTDB-5190] Move Library-udf IT to integration-test
This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch move_udf_it
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 8b69c2a6c22e9c112ff82ff1f9ac7f3152621a20
Author: HTHou <hh...@outlook.com>
AuthorDate: Tue Dec 13 15:27:24 2022 +0800
[IOTDB-5190] Move Library-udf IT to integration-test
---
.github/workflows/main-unix.yml | 2 +-
.github/workflows/main-win.yml | 2 +-
Jenkinsfile | 2 +-
integration-test/pom.xml | 5 +
library-udf/pom.xml | 50 +-
.../apache/iotdb/library/anomaly/AnomalyTests.java | 1558 --------------------
.../apache/iotdb/library/dmatch/DMatchTests.java | 854 -----------
.../iotdb/library/dprofile/DProfileTests.java | 646 --------
.../iotdb/library/dquality/DQualityTests.java | 389 -----
.../apache/iotdb/library/drepair/DRepairTests.java | 320 ----
.../iotdb/library/frequency/FrequencyTests.java | 309 ----
.../apache/iotdb/library/series/SeriesTest.java | 471 ------
.../apache/iotdb/library/string/StringTests.java | 260 ----
13 files changed, 19 insertions(+), 4849 deletions(-)
diff --git a/.github/workflows/main-unix.yml b/.github/workflows/main-unix.yml
index 937353f0e4..1d471e745b 100644
--- a/.github/workflows/main-unix.yml
+++ b/.github/workflows/main-unix.yml
@@ -61,4 +61,4 @@ jobs:
- name: IT/UT Test
shell: bash
# we do not compile client-cpp for saving time, it is tested in client.yml
- run: mvn -B clean test -Dtest.port.closed=true -P '!testcontainer' -P compile-library-udf
+ run: mvn -B clean test -Dtest.port.closed=true -P '!testcontainer' -P get-jar-with-dependencies
diff --git a/.github/workflows/main-win.yml b/.github/workflows/main-win.yml
index 4e496d10db..0778ad1b55 100644
--- a/.github/workflows/main-win.yml
+++ b/.github/workflows/main-win.yml
@@ -109,5 +109,5 @@ jobs:
- name: Test Other Modules with Maven
shell: bash
if: ${{ matrix.it_task == 'others'}}
- run: source ~/.bash_profile && mvn -B clean test -Dtest.port.closed=true -Diotdb.test.skip=true -P compile-library-udf
+ run: source ~/.bash_profile && mvn -B clean test -Dtest.port.closed=true -Diotdb.test.skip=true -P get-jar-with-dependencies
diff --git a/Jenkinsfile b/Jenkinsfile
index 782c21b448..6212f96b57 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -106,7 +106,7 @@ pipeline {
sh 'mvn clean'
// We'll deploy to a relative directory so we can
// deploy new versions only if the entire build succeeds
- sh 'mvn ${MVN_TEST_FAIL_IGNORE} -DaltDeploymentRepository=snapshot-repo::default::file:./local-snapshots-dir clean deploy -P get-jar-with-dependencies
+ sh 'mvn ${MVN_TEST_FAIL_IGNORE} -DaltDeploymentRepository=snapshot-repo::default::file:./local-snapshots-dir clean deploy -P get-jar-with-dependencies'
}
post {
always {
diff --git a/integration-test/pom.xml b/integration-test/pom.xml
index e5e1387374..3829a3131a 100644
--- a/integration-test/pom.xml
+++ b/integration-test/pom.xml
@@ -68,6 +68,11 @@
<artifactId>iotdb-confignode</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.iotdb</groupId>
+ <artifactId>library-udf</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
diff --git a/library-udf/pom.xml b/library-udf/pom.xml
index 71073062a6..6ddc52ca02 100644
--- a/library-udf/pom.xml
+++ b/library-udf/pom.xml
@@ -78,6 +78,16 @@
<groupId>com.github.chen0040</groupId>
<artifactId>java-local-outlier-factor</artifactId>
<version>1.0.4</version>
+ <exclusions>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- FFT, IFFT, LowPass, HighPass -->
<dependency>
@@ -100,24 +110,6 @@
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-api</artifactId>
- <version>5.8.2</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.iotdb</groupId>
- <artifactId>integration</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.iotdb</groupId>
- <artifactId>iotdb-jdbc</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.apache.iotdb</groupId>
<artifactId>iotdb-server</artifactId>
@@ -137,7 +129,7 @@
</dependencies>
<profiles>
<profile>
- <id>compile-library-udf</id>
+ <id>get-jar-with-dependencies</id>
<build>
<plugins>
<plugin>
@@ -171,26 +163,6 @@
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.3</version>
</plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>3.0.0-M5</version>
- <dependencies>
- <dependency>
- <groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-engine</artifactId>
- <version>5.8.2</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>exec-maven-plugin</artifactId>
- <version>1.6.0</version>
- <configuration>
- <classpathScope>test</classpathScope>
- </configuration>
- </plugin>
</plugins>
</build>
</profile>
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/anomaly/AnomalyTests.java b/library-udf/src/test/java/org/apache/iotdb/library/anomaly/AnomalyTests.java
deleted file mode 100644
index 09fd440533..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/anomaly/AnomalyTests.java
+++ /dev/null
@@ -1,1558 +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.library.anomaly;
-
-import org.apache.iotdb.commons.exception.IllegalPathException;
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class AnomalyTests {
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException, IllegalPathException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s5"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s6"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s7"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s8"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d6.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d6.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d6.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d6.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 100, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 200, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 300, -2, -2, -2, -2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 400, -1, -1, -1, -1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 500, 10, 10, 10, 10));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 600, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 700, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 800, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 900, -1, -1, -1, -1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1000, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 100, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 200, 50, 50, 50, 50));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 300, 100, 100, 100, 100));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 400, 150, 150, 150, 150));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 500, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 600, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 700, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 800, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 900, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1000, 200, 200, 200, 200));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1100, 150, 150, 150, 150));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1200, 100, 100, 100, 100));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1300, 50, 50, 50, 50));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1400, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 100, 0, 0, 0, 0, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 200, 0, 0, 0, 0, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 300, 1, 1, 1, 1, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 400, 1, 1, 1, 1, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 500, 0, 0, 0, 0, -1, -1, -1, -1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 600, -1, -1, -1, -1, -1, -1, -1, -1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 700, -1, -1, -1, -1, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 800, 2, 2, 2, 2, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 100, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 200, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 300, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 400, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 500, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 600, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 700, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 800, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 900, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1000, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1100, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1200, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1300, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1400, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1500, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1600, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1700, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1800, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1900, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2000, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 100, 2002, 2002, 2002, 2002));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 200, 1946, 1946, 1946, 1946));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 300, 1958, 1958, 1958, 1958));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 400, 2012, 2012, 2012, 2012));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 500, 2051, 2051, 2051, 2051));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 600, 1898, 1898, 1898, 1898));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 700, 2014, 2014, 2014, 2014));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 800, 2052, 2052, 2052, 2052));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 900, 1935, 1935, 1935, 1935));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1000, 1901, 1901, 1901, 1901));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1100, 1972, 1972, 1972, 1972));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1200, 1969, 1969, 1969, 1969));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1300, 1984, 1984, 1984, 1984));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1400, 2018, 2018, 2018, 2018));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1500, 1484, 1484, 1484, 1484));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1600, 1055, 1055, 1055, 1055));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1700, 1050, 1050, 1050, 1050));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1800, 1023, 1023, 1023, 1023));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1900, 1056, 1056, 1056, 1056));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2000, 978, 978, 978, 978));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2100, 1050, 1050, 1050, 1050));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2200, 1123, 1123, 1123, 1123));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2300, 1150, 1150, 1150, 1150));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2400, 1034, 1034, 1034, 1034));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2500, 950, 950, 950, 950));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d6(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 2600, 1059, 1059, 1059, 1059));
- statement.executeBatch();
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute("create function iqr as 'org.apache.iotdb.library.anomaly.UDTFIQR'");
- statement.execute("create function ksigma as 'org.apache.iotdb.library.anomaly.UDTFKSigma'");
- statement.execute(
- "create function missdetect as 'org.apache.iotdb.library.anomaly.UDTFMissDetect'");
- statement.execute("create function lof as 'org.apache.iotdb.library.anomaly.UDTFLOF'");
- statement.execute("create function range as 'org.apache.iotdb.library.anomaly.UDTFRange'");
- statement.execute(
- "create function TwoSidedFilter as 'org.apache.iotdb.library.anomaly.UDTFTwoSidedFilter'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testIRQR1() {
- String sqlStr = "select iqr(d1.s1) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIQR2() {
- String sqlStr = "select iqr(d1.s2) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIQR3() {
- String sqlStr = "select iqr(d1.s3) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIQR4() {
- String sqlStr = "select iqr(d1.s4) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testKSigma1() {
- String sqlStr = "select ksigma(d2.s1,\"k\"=\"1.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(50.0, result2, 0.01);
- Assert.assertEquals(50.0, result3, 0.01);
- Assert.assertEquals(0.0, result4, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testKSigma2() {
- String sqlStr = "select ksigma(d2.s2,\"k\"=\"1.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(50.0, result2, 0.01);
- Assert.assertEquals(50.0, result3, 0.01);
- Assert.assertEquals(0.0, result4, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testKSigma3() {
- String sqlStr = "select ksigma(d2.s3,\"k\"=\"1.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(50.0, result2, 0.01);
- Assert.assertEquals(50.0, result3, 0.01);
- Assert.assertEquals(0.0, result4, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testKSigma4() {
- String sqlStr = "select ksigma(d2.s4,\"k\"=\"1.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(50.0, result2, 0.01);
- Assert.assertEquals(50.0, result3, 0.01);
- Assert.assertEquals(0.0, result4, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMissDetect1() {
- String sqlStr = "select missdetect(d4.s1,'minlen'='10') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- boolean result1 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result2 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result3 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result4 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result5 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result6 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result7 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result8 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result9 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result10 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result11 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result12 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result13 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result14 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result15 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result16 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result17 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result18 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result19 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result20 = resultSet.getBoolean(1);
- Assert.assertFalse(result1);
- Assert.assertFalse(result2);
- Assert.assertFalse(result3);
- Assert.assertFalse(result4);
- Assert.assertTrue(result5);
- Assert.assertTrue(result6);
- Assert.assertTrue(result7);
- Assert.assertTrue(result8);
- Assert.assertTrue(result9);
- Assert.assertTrue(result10);
- Assert.assertTrue(result11);
- Assert.assertTrue(result12);
- Assert.assertTrue(result13);
- Assert.assertTrue(result14);
- Assert.assertTrue(result15);
- Assert.assertFalse(result16);
- Assert.assertFalse(result17);
- Assert.assertFalse(result18);
- Assert.assertFalse(result19);
- Assert.assertFalse(result20);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMissDetect2() {
- String sqlStr = "select missdetect(d4.s2,'minlen'='10') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- boolean result1 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result2 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result3 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result4 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result5 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result6 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result7 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result8 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result9 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result10 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result11 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result12 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result13 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result14 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result15 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result16 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result17 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result18 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result19 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result20 = resultSet.getBoolean(1);
- Assert.assertFalse(result1);
- Assert.assertFalse(result2);
- Assert.assertFalse(result3);
- Assert.assertFalse(result4);
- Assert.assertTrue(result5);
- Assert.assertTrue(result6);
- Assert.assertTrue(result7);
- Assert.assertTrue(result8);
- Assert.assertTrue(result9);
- Assert.assertTrue(result10);
- Assert.assertTrue(result11);
- Assert.assertTrue(result12);
- Assert.assertTrue(result13);
- Assert.assertTrue(result14);
- Assert.assertTrue(result15);
- Assert.assertFalse(result16);
- Assert.assertFalse(result17);
- Assert.assertFalse(result18);
- Assert.assertFalse(result19);
- Assert.assertFalse(result20);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMissDetect3() {
- String sqlStr = "select missdetect(d4.s3,'minlen'='10') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- boolean result1 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result2 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result3 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result4 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result5 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result6 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result7 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result8 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result9 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result10 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result11 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result12 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result13 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result14 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result15 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result16 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result17 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result18 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result19 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result20 = resultSet.getBoolean(1);
- Assert.assertFalse(result1);
- Assert.assertFalse(result2);
- Assert.assertFalse(result3);
- Assert.assertFalse(result4);
- Assert.assertTrue(result5);
- Assert.assertTrue(result6);
- Assert.assertTrue(result7);
- Assert.assertTrue(result8);
- Assert.assertTrue(result9);
- Assert.assertTrue(result10);
- Assert.assertTrue(result11);
- Assert.assertTrue(result12);
- Assert.assertTrue(result13);
- Assert.assertTrue(result14);
- Assert.assertTrue(result15);
- Assert.assertFalse(result16);
- Assert.assertFalse(result17);
- Assert.assertFalse(result18);
- Assert.assertFalse(result19);
- Assert.assertFalse(result20);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMissDetect4() {
- String sqlStr = "select missdetect(d4.s4,'minlen'='10') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- boolean result1 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result2 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result3 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result4 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result5 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result6 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result7 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result8 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result9 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result10 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result11 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result12 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result13 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result14 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result15 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result16 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result17 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result18 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result19 = resultSet.getBoolean(1);
- resultSet.next();
- boolean result20 = resultSet.getBoolean(1);
- Assert.assertFalse(result1);
- Assert.assertFalse(result2);
- Assert.assertFalse(result3);
- Assert.assertFalse(result4);
- Assert.assertTrue(result5);
- Assert.assertTrue(result6);
- Assert.assertTrue(result7);
- Assert.assertTrue(result8);
- Assert.assertTrue(result9);
- Assert.assertTrue(result10);
- Assert.assertTrue(result11);
- Assert.assertTrue(result12);
- Assert.assertTrue(result13);
- Assert.assertTrue(result14);
- Assert.assertTrue(result15);
- Assert.assertFalse(result16);
- Assert.assertFalse(result17);
- Assert.assertFalse(result18);
- Assert.assertFalse(result19);
- Assert.assertFalse(result20);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testLOF1() {
- String sqlStr = "select lof(d3.s1,d3.s5) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- Assert.assertEquals(3.8274824267668244, result1, 0.01);
- Assert.assertEquals(3.0117631741126156, result2, 0.01);
- Assert.assertEquals(2.838155437762879, result3, 0.01);
- Assert.assertEquals(3.0117631741126156, result4, 0.01);
- Assert.assertEquals(2.73518261244453, result5, 0.01);
- Assert.assertEquals(2.371440975708148, result6, 0.01);
- Assert.assertEquals(2.73518261244453, result7, 0.01);
- Assert.assertEquals(1.7561416374270742, result8, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testLOF2() {
- String sqlStr = "select lof(d3.s2,d3.s6) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- Assert.assertEquals(3.8274824267668244, result1, 0.01);
- Assert.assertEquals(3.0117631741126156, result2, 0.01);
- Assert.assertEquals(2.838155437762879, result3, 0.01);
- Assert.assertEquals(3.0117631741126156, result4, 0.01);
- Assert.assertEquals(2.73518261244453, result5, 0.01);
- Assert.assertEquals(2.371440975708148, result6, 0.01);
- Assert.assertEquals(2.73518261244453, result7, 0.01);
- Assert.assertEquals(1.7561416374270742, result8, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testLOF3() {
- String sqlStr = "select lof(d3.s3,d3.s7) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- Assert.assertEquals(3.8274824267668244, result1, 0.01);
- Assert.assertEquals(3.0117631741126156, result2, 0.01);
- Assert.assertEquals(2.838155437762879, result3, 0.01);
- Assert.assertEquals(3.0117631741126156, result4, 0.01);
- Assert.assertEquals(2.73518261244453, result5, 0.01);
- Assert.assertEquals(2.371440975708148, result6, 0.01);
- Assert.assertEquals(2.73518261244453, result7, 0.01);
- Assert.assertEquals(1.7561416374270742, result8, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testLOF4() {
- String sqlStr = "select lof(d3.s4,d3.s8) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- Assert.assertEquals(3.8274824267668244, result1, 0.01);
- Assert.assertEquals(3.0117631741126156, result2, 0.01);
- Assert.assertEquals(2.838155437762879, result3, 0.01);
- Assert.assertEquals(3.0117631741126156, result4, 0.01);
- Assert.assertEquals(2.73518261244453, result5, 0.01);
- Assert.assertEquals(2.371440975708148, result6, 0.01);
- Assert.assertEquals(2.73518261244453, result7, 0.01);
- Assert.assertEquals(1.7561416374270742, result8, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRange1() {
- String sqlStr =
- "select range(d1.s1,\"lower_bound\"=\"-5.0\",\"upper_bound\"=\"5.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRange2() {
- String sqlStr =
- "select range(d1.s2,\"lower_bound\"=\"-5.0\",\"upper_bound\"=\"5.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRange3() {
- String sqlStr =
- "select range(d1.s3,\"lower_bound\"=\"-5.0\",\"upper_bound\"=\"5.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRange4() {
- String sqlStr =
- "select range(d1.s4,\"lower_bound\"=\"-5.0\",\"upper_bound\"=\"5.0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(10.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTwoSidedFileter1() {
- String sqlStr = "select TwoSidedFilter(d6.s1, 'len'='3', 'threshold'='0.3') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- resultSet.next();
- double result10 = resultSet.getDouble(1);
- resultSet.next();
- double result11 = resultSet.getDouble(1);
- resultSet.next();
- double result12 = resultSet.getDouble(1);
- resultSet.next();
- double result13 = resultSet.getDouble(1);
- resultSet.next();
- double result14 = resultSet.getDouble(1);
- resultSet.next();
- double result15 = resultSet.getDouble(1);
- resultSet.next();
- double result16 = resultSet.getDouble(1);
- resultSet.next();
- double result17 = resultSet.getDouble(1);
- resultSet.next();
- double result18 = resultSet.getDouble(1);
- resultSet.next();
- double result19 = resultSet.getDouble(1);
- resultSet.next();
- double result20 = resultSet.getDouble(1);
- resultSet.next();
- double result21 = resultSet.getDouble(1);
- resultSet.next();
- double result22 = resultSet.getDouble(1);
- resultSet.next();
- double result23 = resultSet.getDouble(1);
- Assert.assertEquals(2002.0, result1, 0.01);
- Assert.assertEquals(1946.0, result2, 0.01);
- Assert.assertEquals(1958.0, result3, 0.01);
- Assert.assertEquals(2012.0, result4, 0.01);
- Assert.assertEquals(2051.0, result5, 0.01);
- Assert.assertEquals(1898.0, result6, 0.01);
- Assert.assertEquals(2014.0, result7, 0.01);
- Assert.assertEquals(2052.0, result8, 0.01);
- Assert.assertEquals(1935.0, result9, 0.01);
- Assert.assertEquals(1901.0, result10, 0.01);
- Assert.assertEquals(1972.0, result11, 0.01);
- Assert.assertEquals(1969.0, result12, 0.01);
- Assert.assertEquals(1984.0, result13, 0.01);
- Assert.assertEquals(2018.0, result14, 0.01);
- Assert.assertEquals(1023.0, result15, 0.01);
- Assert.assertEquals(1056.0, result16, 0.01);
- Assert.assertEquals(978.0, result17, 0.01);
- Assert.assertEquals(1050.0, result18, 0.01);
- Assert.assertEquals(1123.0, result19, 0.01);
- Assert.assertEquals(1150.0, result20, 0.01);
- Assert.assertEquals(1134.0, result21, 0.01);
- Assert.assertEquals(950.0, result22, 0.01);
- Assert.assertEquals(1059.0, result23, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTwoSidedFileter2() {
- String sqlStr = "select TwoSidedFilter(d6.s2, 'len'='3', 'threshold'='0.3') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- resultSet.next();
- double result10 = resultSet.getDouble(1);
- resultSet.next();
- double result11 = resultSet.getDouble(1);
- resultSet.next();
- double result12 = resultSet.getDouble(1);
- resultSet.next();
- double result13 = resultSet.getDouble(1);
- resultSet.next();
- double result14 = resultSet.getDouble(1);
- resultSet.next();
- double result15 = resultSet.getDouble(1);
- resultSet.next();
- double result16 = resultSet.getDouble(1);
- resultSet.next();
- double result17 = resultSet.getDouble(1);
- resultSet.next();
- double result18 = resultSet.getDouble(1);
- resultSet.next();
- double result19 = resultSet.getDouble(1);
- resultSet.next();
- double result20 = resultSet.getDouble(1);
- resultSet.next();
- double result21 = resultSet.getDouble(1);
- resultSet.next();
- double result22 = resultSet.getDouble(1);
- resultSet.next();
- double result23 = resultSet.getDouble(1);
- Assert.assertEquals(2002.0, result1, 0.01);
- Assert.assertEquals(1946.0, result2, 0.01);
- Assert.assertEquals(1958.0, result3, 0.01);
- Assert.assertEquals(2012.0, result4, 0.01);
- Assert.assertEquals(2051.0, result5, 0.01);
- Assert.assertEquals(1898.0, result6, 0.01);
- Assert.assertEquals(2014.0, result7, 0.01);
- Assert.assertEquals(2052.0, result8, 0.01);
- Assert.assertEquals(1935.0, result9, 0.01);
- Assert.assertEquals(1901.0, result10, 0.01);
- Assert.assertEquals(1972.0, result11, 0.01);
- Assert.assertEquals(1969.0, result12, 0.01);
- Assert.assertEquals(1984.0, result13, 0.01);
- Assert.assertEquals(2018.0, result14, 0.01);
- Assert.assertEquals(1023.0, result15, 0.01);
- Assert.assertEquals(1056.0, result16, 0.01);
- Assert.assertEquals(978.0, result17, 0.01);
- Assert.assertEquals(1050.0, result18, 0.01);
- Assert.assertEquals(1123.0, result19, 0.01);
- Assert.assertEquals(1150.0, result20, 0.01);
- Assert.assertEquals(1134.0, result21, 0.01);
- Assert.assertEquals(950.0, result22, 0.01);
- Assert.assertEquals(1059.0, result23, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTwoSidedFileter3() {
- String sqlStr = "select TwoSidedFilter(d6.s3, 'len'='3', 'threshold'='0.3') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- resultSet.next();
- double result10 = resultSet.getDouble(1);
- resultSet.next();
- double result11 = resultSet.getDouble(1);
- resultSet.next();
- double result12 = resultSet.getDouble(1);
- resultSet.next();
- double result13 = resultSet.getDouble(1);
- resultSet.next();
- double result14 = resultSet.getDouble(1);
- resultSet.next();
- double result15 = resultSet.getDouble(1);
- resultSet.next();
- double result16 = resultSet.getDouble(1);
- resultSet.next();
- double result17 = resultSet.getDouble(1);
- resultSet.next();
- double result18 = resultSet.getDouble(1);
- resultSet.next();
- double result19 = resultSet.getDouble(1);
- resultSet.next();
- double result20 = resultSet.getDouble(1);
- resultSet.next();
- double result21 = resultSet.getDouble(1);
- resultSet.next();
- double result22 = resultSet.getDouble(1);
- resultSet.next();
- double result23 = resultSet.getDouble(1);
- Assert.assertEquals(2002.0, result1, 0.01);
- Assert.assertEquals(1946.0, result2, 0.01);
- Assert.assertEquals(1958.0, result3, 0.01);
- Assert.assertEquals(2012.0, result4, 0.01);
- Assert.assertEquals(2051.0, result5, 0.01);
- Assert.assertEquals(1898.0, result6, 0.01);
- Assert.assertEquals(2014.0, result7, 0.01);
- Assert.assertEquals(2052.0, result8, 0.01);
- Assert.assertEquals(1935.0, result9, 0.01);
- Assert.assertEquals(1901.0, result10, 0.01);
- Assert.assertEquals(1972.0, result11, 0.01);
- Assert.assertEquals(1969.0, result12, 0.01);
- Assert.assertEquals(1984.0, result13, 0.01);
- Assert.assertEquals(2018.0, result14, 0.01);
- Assert.assertEquals(1023.0, result15, 0.01);
- Assert.assertEquals(1056.0, result16, 0.01);
- Assert.assertEquals(978.0, result17, 0.01);
- Assert.assertEquals(1050.0, result18, 0.01);
- Assert.assertEquals(1123.0, result19, 0.01);
- Assert.assertEquals(1150.0, result20, 0.01);
- Assert.assertEquals(1134.0, result21, 0.01);
- Assert.assertEquals(950.0, result22, 0.01);
- Assert.assertEquals(1059.0, result23, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTwoSidedFileter4() {
- String sqlStr = "select TwoSidedFilter(d6.s4, 'len'='3', 'threshold'='0.3') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- resultSet.next();
- double result10 = resultSet.getDouble(1);
- resultSet.next();
- double result11 = resultSet.getDouble(1);
- resultSet.next();
- double result12 = resultSet.getDouble(1);
- resultSet.next();
- double result13 = resultSet.getDouble(1);
- resultSet.next();
- double result14 = resultSet.getDouble(1);
- resultSet.next();
- double result15 = resultSet.getDouble(1);
- resultSet.next();
- double result16 = resultSet.getDouble(1);
- resultSet.next();
- double result17 = resultSet.getDouble(1);
- resultSet.next();
- double result18 = resultSet.getDouble(1);
- resultSet.next();
- double result19 = resultSet.getDouble(1);
- resultSet.next();
- double result20 = resultSet.getDouble(1);
- resultSet.next();
- double result21 = resultSet.getDouble(1);
- resultSet.next();
- double result22 = resultSet.getDouble(1);
- resultSet.next();
- double result23 = resultSet.getDouble(1);
- Assert.assertEquals(2002.0, result1, 0.01);
- Assert.assertEquals(1946.0, result2, 0.01);
- Assert.assertEquals(1958.0, result3, 0.01);
- Assert.assertEquals(2012.0, result4, 0.01);
- Assert.assertEquals(2051.0, result5, 0.01);
- Assert.assertEquals(1898.0, result6, 0.01);
- Assert.assertEquals(2014.0, result7, 0.01);
- Assert.assertEquals(2052.0, result8, 0.01);
- Assert.assertEquals(1935.0, result9, 0.01);
- Assert.assertEquals(1901.0, result10, 0.01);
- Assert.assertEquals(1972.0, result11, 0.01);
- Assert.assertEquals(1969.0, result12, 0.01);
- Assert.assertEquals(1984.0, result13, 0.01);
- Assert.assertEquals(2018.0, result14, 0.01);
- Assert.assertEquals(1023.0, result15, 0.01);
- Assert.assertEquals(1056.0, result16, 0.01);
- Assert.assertEquals(978.0, result17, 0.01);
- Assert.assertEquals(1050.0, result18, 0.01);
- Assert.assertEquals(1123.0, result19, 0.01);
- Assert.assertEquals(1150.0, result20, 0.01);
- Assert.assertEquals(1134.0, result21, 0.01);
- Assert.assertEquals(950.0, result22, 0.01);
- Assert.assertEquals(1059.0, result23, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/dmatch/DMatchTests.java b/library-udf/src/test/java/org/apache/iotdb/library/dmatch/DMatchTests.java
deleted file mode 100644
index 2f2c9c3d77..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/dmatch/DMatchTests.java
+++ /dev/null
@@ -1,854 +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.library.dmatch;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class DMatchTests {
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s5"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s6"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s7"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s8"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s5"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s6"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s7"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s8"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s3"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s4"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s5"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s6"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s7"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d4.s8"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 100, 100, 100, 100, 100, 101, 101, 101, 101));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 100, 100, 100, 100, 100, 101, 101, 101, 101));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 200, 102, 102, 102, 102, 101, 101, 101, 101));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 300, 104, 104, 104, 104, 102, 102, 102, 102));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 400, 126, 126, 126, 126, 102, 102, 102, 102));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 500, 108, 108, 108, 108, 103, 103, 103, 103));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 600, 112, 112, 112, 112, 104, 104, 104, 104));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 700, 114, 114, 114, 114, 104, 104, 104, 104));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 800, 116, 116, 116, 116, 105, 105, 105, 105));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 900, 118, 118, 118, 118, 105, 105, 105, 105));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 1000, 100, 100, 100, 100, 106, 106, 106, 106));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 1100, 124, 124, 124, 124, 108, 108, 108, 108));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 1200, 126, 126, 126, 126, 108, 108, 108, 108));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 1300, 116, 116, 116, 116, 105, 105, 105, 105));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 100, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 200, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 300, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 400, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 500, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 600, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 700, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 800, 1, 1, 1, 1, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 100, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 200, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 300, 3, 3, 3, 3));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 400, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 500, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 600, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 700, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 800, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 900, 3, 3, 3, 3));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1000, 2, 2, 2, 2));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1,s2,s3,s4) values(%d,%d,%d,%d,%d)",
- 1100, 1, 1, 1, 1));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 100, 0, 0, 0, 0, 6, 6, 6, 6));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 200, 2, 2, 2, 2, 7, 7, 7, 7));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 300, 3, 3, 3, 3, 0, 0, 0, 0));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 400, 4, 4, 4, 4, 9, 9, 9, 9));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d4(timestamp,s1,s2,s3,s4,s5,s6,s7,s8) values(%d,%d,%d,%d,%d,%d,%d,%d,%d))",
- 500, 5, 5, 5, 5, 10, 10, 10, 10));
- statement.executeBatch();
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute("create function cov as 'org.apache.iotdb.library.dmatch.UDAFCov'");
- statement.execute("create function dtw as 'org.apache.iotdb.library.dmatch.UDAFDtw'");
- statement.execute("create function pearson as 'org.apache.iotdb.library.dmatch.UDAFPearson'");
- statement.execute("create function ptnsym as 'org.apache.iotdb.library.dmatch.UDTFPtnSym'");
- statement.execute("create function xcorr as 'org.apache.iotdb.library.dmatch.UDTFXcorr'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testCov1() {
- String sqlStr = "select cov(d1.s1,d1.s5) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(12.291666666666666, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCov2() {
- String sqlStr = "select cov(d1.s2,d1.s6) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(12.291666666666666, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCov3() {
- String sqlStr = "select cov(d1.s3,d1.s7) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(12.291666666666666, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCov4() {
- String sqlStr = "select cov(d1.s4,d1.s8) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(12.291666666666666, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDtw1() {
- String sqlStr = "select dtw(d2.s1,d2.s5) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(8.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDtw2() {
- String sqlStr = "select dtw(d2.s2,d2.s6) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(8.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDtw3() {
- String sqlStr = "select dtw(d2.s3,d2.s7) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(8.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDtw4() {
- String sqlStr = "select dtw(d2.s4,d2.s8) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(8.0, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPearson1() {
- String sqlStr = "select pearson(d1.s1,d1.s5) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(0.5630881927754872, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPearson2() {
- String sqlStr = "select pearson(d1.s2,d1.s6) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(0.5630881927754872, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPearson3() {
- String sqlStr = "select pearson(d1.s3,d1.s7) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(0.5630881927754872, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPearson4() {
- String sqlStr = "select pearson(d1.s4,d1.s8) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- Assert.assertEquals(0.5630881927754872, result1, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPthSym1() {
- String sqlStr = "select ptnsym(d1.s1, 'window'='3', 'threshold'='0') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(0.0, result2, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPtnSym2() {
- String sqlStr = "select ptnsym(d1.s2, 'window'='3', 'threshold'='0') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(0.0, result2, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPtnSym3() {
- String sqlStr = "select ptnsym(d2.s1, 'window'='3', 'threshold'='0') from";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(0.0, result2, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPtnSym4() {
- String sqlStr = "select ptnsym(d2.s2, 'window'='3', 'threshold'='0') from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(0.0, result2, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testXCorr1() {
- String sqlStr = "select xcorr(d4.s1,d4.s5) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(4.0, result2, 0.01);
- Assert.assertEquals(9.6, result3, 0.01);
- Assert.assertEquals(13.4, result4, 0.01);
- Assert.assertEquals(20.0, result5, 0.01);
- Assert.assertEquals(15.6, result6, 0.01);
- Assert.assertEquals(9.2, result7, 0.01);
- Assert.assertEquals(11.8, result8, 0.01);
- Assert.assertEquals(6.0, result9, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testXCorr2() {
- String sqlStr = "select xcorr(d4.s2, d4.s6) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(4.0, result2, 0.01);
- Assert.assertEquals(9.6, result3, 0.01);
- Assert.assertEquals(13.4, result4, 0.01);
- Assert.assertEquals(20.0, result5, 0.01);
- Assert.assertEquals(15.6, result6, 0.01);
- Assert.assertEquals(9.2, result7, 0.01);
- Assert.assertEquals(11.8, result8, 0.01);
- Assert.assertEquals(6.0, result9, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testXCorr3() {
- String sqlStr = "select xcorr(d4.s3, d4.s7) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(4.0, result2, 0.01);
- Assert.assertEquals(9.6, result3, 0.01);
- Assert.assertEquals(13.4, result4, 0.01);
- Assert.assertEquals(20.0, result5, 0.01);
- Assert.assertEquals(15.6, result6, 0.01);
- Assert.assertEquals(9.2, result7, 0.01);
- Assert.assertEquals(11.8, result8, 0.01);
- Assert.assertEquals(6.0, result9, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testXCorr4() {
- String sqlStr = "select xcorr(d4.s4,d4.s8) from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- double result1 = resultSet.getDouble(1);
- resultSet.next();
- double result2 = resultSet.getDouble(1);
- resultSet.next();
- double result3 = resultSet.getDouble(1);
- resultSet.next();
- double result4 = resultSet.getDouble(1);
- resultSet.next();
- double result5 = resultSet.getDouble(1);
- resultSet.next();
- double result6 = resultSet.getDouble(1);
- resultSet.next();
- double result7 = resultSet.getDouble(1);
- resultSet.next();
- double result8 = resultSet.getDouble(1);
- resultSet.next();
- double result9 = resultSet.getDouble(1);
- Assert.assertEquals(0.0, result1, 0.01);
- Assert.assertEquals(4.0, result2, 0.01);
- Assert.assertEquals(9.6, result3, 0.01);
- Assert.assertEquals(13.4, result4, 0.01);
- Assert.assertEquals(20.0, result5, 0.01);
- Assert.assertEquals(15.6, result6, 0.01);
- Assert.assertEquals(9.2, result7, 0.01);
- Assert.assertEquals(11.8, result8, 0.01);
- Assert.assertEquals(6.0, result9, 0.01);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/dprofile/DProfileTests.java b/library-udf/src/test/java/org/apache/iotdb/library/dprofile/DProfileTests.java
deleted file mode 100644
index e3d8db1904..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/dprofile/DProfileTests.java
+++ /dev/null
@@ -1,646 +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.library.dprofile;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class DProfileTests {
- protected static final int ITERATION_TIMES = 10_000;
-
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- double x = -100d, y = 100d; // borders of random value
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- for (int i = 1; i <= ITERATION_TIMES; ++i) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)",
- i * 1000,
- (int) Math.floor(x + Math.random() * y % (y - x + 1)),
- (int) Math.floor(x + Math.random() * y % (y - x + 1))));
- statement.execute(
- (String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%f,%f)",
- i * 1000,
- x + Math.random() * y % (y - x + 1),
- x + Math.random() * y % (y - x + 1))));
- }
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute(
- "create function distinct as 'org.apache.iotdb.library.dprofile.UDTFDistinct'");
- statement.execute(
- "create function histogram as 'org.apache.iotdb.library.dprofile.UDTFHistogram'");
- statement.execute(
- "create function integral as 'org.apache.iotdb.library.dprofile.UDAFIntegral'");
- statement.execute(
- "create function integralavg as 'org.apache.iotdb.library.dprofile.UDAFIntegralAvg'");
- statement.execute("create function mad as 'org.apache.iotdb.library.dprofile.UDAFMad'");
- statement.execute("create function median as 'org.apache.iotdb.library.dprofile.UDAFMedian'");
- statement.execute("create function mode as 'org.apache.iotdb.library.dprofile.UDAFMode'");
- statement.execute(
- "create function percentile as 'org.apache.iotdb.library.dprofile.UDAFPercentile'");
- statement.execute("create function period as 'org.apache.iotdb.library.dprofile.UDAFPeriod'");
- statement.execute("create function qlb as 'org.apache.iotdb.library.dprofile.UDTFQLB'");
- statement.execute(
- "create function resample as 'org.apache.iotdb.library.dprofile.UDTFResample'");
- statement.execute("create function sample as 'org.apache.iotdb.library.dprofile.UDTFSample'");
- statement.execute(
- "create function segment as 'org.apache.iotdb.library.dprofile.UDTFSegment'");
- statement.execute("create function skew as 'org.apache.iotdb.library.dprofile.UDAFSkew'");
- statement.execute("create function spread as 'org.apache.iotdb.library.dprofile.UDAFSpread'");
- statement.execute("create function stddev as 'org.apache.iotdb.library.dprofile.UDAFStddev'");
- statement.execute("create function minmax as 'org.apache.iotdb.library.dprofile.UDTFMinMax'");
- statement.execute("create function zscore as 'org.apache.iotdb.library.dprofile.UDTFZScore'");
- statement.execute("create function spline as 'org.apache.iotdb.library.dprofile.UDTFSpline'");
- statement.execute("create function mvavg as 'org.apache.iotdb.library.dprofile.UDTFMvAvg'");
- statement.execute("create function acf as 'org.apache.iotdb.library.dprofile.UDTFACF'");
- statement.execute("create function pacf as 'org.apache.iotdb.library.dprofile.UDTFPACF'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testIntegral1() {
- String sqlStr = "select integral(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIntegral2() {
- String sqlStr = "select completeness(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIntegralAvg1() {
- String sqlStr = "select integralavg(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testIntegralAvg2() {
- String sqlStr = "select integralavg(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMad1() {
- String sqlStr = "select mad(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMad2() {
- String sqlStr = "select timeliness(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMedian1() {
- String sqlStr = "select median(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMedian2() {
- String sqlStr = "select median(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMode1() {
- String sqlStr = "select consistency(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPercentile1() {
- String sqlStr = "select percentile(d1.s2,'rank'='0.7') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPercentile2() {
- String sqlStr = "select percentile(d2.s2,'rank'='0.3') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPeriod1() {
- String sqlStr = "select period(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSkew1() {
- String sqlStr = "select skew(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSkew2() {
- String sqlStr = "select skew(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSpread1() {
- String sqlStr = "select spread(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSpread2() {
- String sqlStr = "select spread(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSddev1() {
- String sqlStr = "select stddev(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testStddev2() {
- String sqlStr = "select stddev(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testACF1() {
- String sqlStr = "select acf(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDistinct1() {
- String sqlStr = "select distinct(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testHistogram1() {
- String sqlStr =
- String.format(
- "select histogram(d1.s1,'min'='%f','max'='%f','count'='20') from root.vehicle",
- -100d, 100d);
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMinMax1() {
- String sqlStr =
- String.format("select minmax(d2.s2,'min'='%f','max'='%f') from root.vehicle", -100d, 100d);
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMvAvg1() {
- String sqlStr = "select mvavg(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testMvAvg2() {
- String sqlStr = "select mvavg(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testPACF1() {
- String sqlStr = "select pacf(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testQLB1() {
- String sqlStr = "select qlb(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testResample1() {
- String sqlStr = "select resample(d2.s1, 'every'='5s') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testResample2() {
- String sqlStr = "select resample(d2.s2, 'every'='10s', 'aggr'='median') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSample1() {
- String sqlStr = "select resample(d2.s1, 'method'='reservoir','k'='5') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testsample2() {
- String sqlStr = "select resample(d1.s2, 'method'='isometric','k'='5') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testsample3() {
- String sqlStr = "select sample(d1.s2, 'method'='triangle','k'='5') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSegment1() {
- String sqlStr = "select segment(d2.s2,'error'='10') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testSpline1() {
- String sqlStr = "select spline(d2.s1, 'points'='100') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testZScore1() {
- String sqlStr = "select zscore(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testZScore2() {
- String sqlStr = "select zscore(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/dquality/DQualityTests.java b/library-udf/src/test/java/org/apache/iotdb/library/dquality/DQualityTests.java
deleted file mode 100644
index 72dcc7f0b5..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/dquality/DQualityTests.java
+++ /dev/null
@@ -1,389 +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.library.dquality;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class DQualityTests {
- protected static final int ITERATION_TIMES = 10_000;
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- double x = -100d, y = 100d; // borders of random value
- long a = 0, b = 1000000000;
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- for (int i = 1; i <= ITERATION_TIMES; ++i) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)",
- (int) Math.floor(a + Math.random() * b % (b - a + 1)),
- (int) Math.floor(x + Math.random() * y % (y - x + 1)),
- (int) Math.floor(x + Math.random() * y % (y - x + 1))));
- statement.execute(
- (String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%f,%f)",
- (int) Math.floor(a + Math.random() * b % (b - a + 1)),
- x + Math.random() * y % (y - x + 1),
- x + Math.random() * y % (y - x + 1))));
- }
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute(
- "create function completeness as 'org.apache.iotdb.library.dquality.UDTFCompleteness'");
- statement.execute(
- "create function timeliness as 'org.apache.iotdb.library.dquality.UDTFTimeliness'");
- statement.execute(
- "create function consistency as 'org.apache.iotdb.library.dquality.UDTFConsistency'");
- statement.execute(
- "create function validity as 'org.apache.iotdb.library.dquality.UDTFValidity'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testCompleteness1() {
- String sqlStr = "select completeness(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCompleteness2() {
- String sqlStr = "select completeness(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCompleteness3() {
- String sqlStr = "select completeness(d2.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testCompleteness4() {
- String sqlStr = "select completeness(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimeliness1() {
- String sqlStr = "select timeliness(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimeliness2() {
- String sqlStr = "select timeliness(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimeliness3() {
- String sqlStr = "select timeliness(d2.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimeliness4() {
- String sqlStr = "select timeliness(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsistency1() {
- String sqlStr = "select consistency(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsistency2() {
- String sqlStr = "select consistency(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsistency3() {
- String sqlStr = "select consistency(d2.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsistency4() {
- String sqlStr = "select consistency(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValidity1() {
- String sqlStr = "select validity(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValidity2() {
- String sqlStr = "select validity(d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValidity3() {
- String sqlStr = "select validity(d2.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValidity4() {
- String sqlStr = "select validity(d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(result >= -0.0D && result <= 1.0D);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/drepair/DRepairTests.java b/library-udf/src/test/java/org/apache/iotdb/library/drepair/DRepairTests.java
deleted file mode 100644
index d0c09ab92d..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/drepair/DRepairTests.java
+++ /dev/null
@@ -1,320 +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.library.drepair;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class DRepairTests {
- protected static final int ITERATION_TIMES = 100_000;
- protected static final int DELTA_T = 100;
-
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- // test series for TimeStampRepair
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- // test series for ValueFill
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- // test series for ValueRepair
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d3.s1"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- double x = -100d, y = 100d; // borders of random value
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- for (int i = 1; i <= ITERATION_TIMES; ++i) {
- if (Math.random() < 0.99) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%f)",
- (long) i * DELTA_T, Math.floor(x + Math.random() * y % (y - x + 1))));
- } else {
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%f)",
- (long) i * DELTA_T + (long) Math.floor((Math.random() - 0.5) * DELTA_T),
- Math.floor(x + Math.random() * y % (y - x + 1))));
- }
- }
- for (int i = 1; i <= ITERATION_TIMES; ++i) {
- if (Math.random() < 0.97) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%f)",
- (long) i * DELTA_T, Math.floor(x + Math.random() * y % (y - x + 1))));
- } else {
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%f)",
- (long) i * DELTA_T, Double.NaN));
- }
- }
- for (int i = 1; i <= ITERATION_TIMES; ++i) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d3(timestamp,s1) values(%d,%f)",
- (long) i * DELTA_T,
- i / (double) ITERATION_TIMES * (y - x) + (Math.random() - 0.5) * (y - x)));
- }
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute(
- "create function timestamprepair as 'org.apache.iotdb.library.dquality.UDTFTimestampRepair'");
- statement.execute(
- "create function valuefill as 'org.apache.iotdb.library.dquality.UDTFValueFill'");
- statement.execute(
- "create function valuerepair as 'org.apache.iotdb.library.dquality.UDTFValueRepair'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testTimestampRepair1() {
- String sqlStr =
- String.format("select timestamprepair(d1.s1,'interval'='%d') from root.vehicle", DELTA_T);
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimestampRepair2() {
- String sqlStr = "select timestamprepair(d1.s1,'method'='median') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimestampRepair3() {
- String sqlStr = "select timestamprepair(d1.s1,'method'='mode') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testTimestampRepair4() {
- String sqlStr = "select timestamprepair(d1.s1,'method'='cluster') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill1() {
- String sqlStr = "select valuefill(d2.s1,'method'='previous') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill2() {
- String sqlStr = "select valuefill(d2.s1,'method'='linear') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill3() {
- String sqlStr = "select valuefill(d2.s1,'method'='likelihood') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill4() {
- String sqlStr = "select valuefill(d2.s1,'method'='ar') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill5() {
- String sqlStr = "select valuefill(d2.s1,'method'='ma') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueFill6() {
- String sqlStr = "select valuefill(d2.s1,'method'='screen') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueRepair1() {
- String sqlStr = "select valuerepair(d3.s1,'method'='screen') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testValueRepair2() {
- String sqlStr = "select valuerepair(d3.s1,'method'='lsgreedy') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/frequency/FrequencyTests.java b/library-udf/src/test/java/org/apache/iotdb/library/frequency/FrequencyTests.java
deleted file mode 100644
index 32f40cbeae..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/frequency/FrequencyTests.java
+++ /dev/null
@@ -1,309 +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.library.frequency;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class FrequencyTests {
- protected static final int ITERATION_TIMES = 16384;
- protected static final int DELTA_T = 100;
- protected static final int PERIOD_1 = 10;
- protected static final int PEROID_2 = 200;
- protected static final double pi = Math.PI;
-
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s3"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- double x = -100d, y = 100d; // borders of random value
- long a = 0, b = 1000000000;
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- for (int i = 0; i < ITERATION_TIMES; ++i) {
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2,s3) values(%d,%f,%f,%f)",
- (long) (i + 1) * DELTA_T,
- Math.sin(i % PERIOD_1 * 2 * pi / (double) PERIOD_1),
- Math.sin(i % PEROID_2 * 2 * pi / (double) PEROID_2),
- 0.5 * Math.sin(i % PERIOD_1 * pi) + Math.sin(i % PEROID_2 * pi)));
- }
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s1) values(%d, 2)", DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s1) values(%d, 7)", 2 * DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s1) values(%d, 4)", 3 * DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s1) values(%d, 9)", 4 * DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s2) values(%d, 1)", DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s2) values(%d, 0)", 2 * DELTA_T));
- statement.execute(
- String.format("insert into root.vehicle.d2(timestamp,s2) values(%d, 1)", 3 * DELTA_T));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute("create function conv as 'org.apache.iotdb.library.dquality.UDTFConv'");
- statement.execute("create function deconv as 'org.apache.iotdb.library.dquality.UDTFDeconv'");
- statement.execute("create function dwt as 'org.apache.iotdb.library.dquality.UDTFDWT'");
- statement.execute("create function fft as 'org.apache.iotdb.library.dquality.UDTFFFT'");
- statement.execute(
- "create function highpass as 'org.apache.iotdb.library.dquality.UDTFHighPass'");
- statement.execute("create function idwt as 'org.apache.iotdb.library.dquality.UDTFIDWT'");
- statement.execute(
- "create function lowpass as 'org.apache.iotdb.library.dquality.UDTFLowPass'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- // No possible tests for IDWT, IFFT
- @Test
- public void testConv1() {
- String sqlStr = "select conv(d1.s1, d1.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result = Double.parseDouble(resultSet.getString(1));
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDeconv1() {
- String sqlStr = "select deconv(d2.s1,d2.s2) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result1 = Double.parseDouble(resultSet.getString(1));
- resultSet.next();
- Double result2 = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(Math.abs(result1 - 2d) < 1e-5 && Math.abs(result2 - 7d) < 1e-5);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDeconv2() {
- String sqlStr = "select deconv(d2.s1,d2.s2,'result'='remainder') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- Double result1 = Double.parseDouble(resultSet.getString(1));
- resultSet.next();
- Double result2 = Double.parseDouble(resultSet.getString(1));
- resultSet.next();
- Double result3 = Double.parseDouble(resultSet.getString(1));
- resultSet.next();
- Double result4 = Double.parseDouble(resultSet.getString(1));
- Assert.assertTrue(
- Math.abs(result1) < 1e-5
- && Math.abs(result2) < 1e-5
- && Math.abs(result3 - 2d) < 1e-5
- && Math.abs(result4 - 2d) < 1e-5);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDWT1() {
- String sqlStr = "select dwt(d2.s3,'method'='haar') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testDWT2() {
- String sqlStr = "select dwt(d2.s3,'method'='DB4') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testFFT1() {
- String sqlStr = "select fft(d1.s1) from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testHighPass1() {
- String sqlStr = "select highpass(d1.s3,'wpass'='0.5') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet1 = statement.executeQuery(sqlStr);
- ResultSet resultSet2 = statement.executeQuery("select d1.s1 from root.vehicle");
- for (int i = 1; i < ITERATION_TIMES; ++i) {
- Double result1 = Double.parseDouble(resultSet1.getString(1));
- Double result2 = Double.parseDouble(resultSet2.getString(1));
- resultSet1.next();
- resultSet2.next();
- Assert.assertTrue(Math.abs(result1 - 0.5 * result2) < 1e-2);
- }
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testLowPass1() {
- String sqlStr = "select lowpass(d1.s3,'wpass'='0.5') from root.vehicle";
- try (Connection connection =
- DriverManager.getConnection(
- Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
- Statement statement = connection.createStatement()) {
- ResultSet resultSet1 = statement.executeQuery(sqlStr);
- ResultSet resultSet2 = statement.executeQuery("select d1.s2 from root.vehicle");
- for (int i = 1; i < ITERATION_TIMES; ++i) {
- Double result1 = Double.parseDouble(resultSet1.getString(1));
- Double result2 = Double.parseDouble(resultSet2.getString(1));
- resultSet1.next();
- resultSet2.next();
- Assert.assertTrue(Math.abs(result1 - result2) < 1e-2);
- }
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/series/SeriesTest.java b/library-udf/src/test/java/org/apache/iotdb/library/series/SeriesTest.java
deleted file mode 100644
index 8647f2eb3b..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/series/SeriesTest.java
+++ /dev/null
@@ -1,471 +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.library.series;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class SeriesTest {
- protected static final int ITERATION_TIMES = 10_000;
-
- protected static final long TIMESTAMP_INTERVAL = 60; // gap = 60ms
-
- protected static final long START_TIMESTAMP = 0;
-
- protected static final long END_TIMESTAMP = START_TIMESTAMP + ITERATION_TIMES * ITERATION_TIMES;
-
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.INT32,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s2"),
- TSDataType.INT64,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.FLOAT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s2"),
- TSDataType.DOUBLE,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- // d1
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577808000, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577808300, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577808600, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577809200, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577809500, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577809800, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577810100, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%d)",
- 1577810400, 1)); // s2 == null
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577810700, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1,s2) values(%d,%d,%d)", 1577811000, 1, 1));
- // d2
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577808000, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577808300, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577808600, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577809200, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577809500, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577809800, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577810100, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%d)",
- 1577810400, 1)); // s2 == null
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577810700, 1, 1));
- statement.execute(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1,s2) values(%d,%d,%d)", 1577811000, 1, 1));
-
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute(
- "create function ConsecutiveSequences as 'org.apache.iotdb.library.series.UDTFConsecutiveSequences'");
- statement.execute(
- "create function ConsecutiveWindows as 'org.apache.iotdb.library.series.UDTFConsecutiveWindows'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testConsecutiveSequences1() {
- String sqlStr = "select ConsecutiveSequences(d1.s1,d1.s2) from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 4);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577810700);
- Assert.assertEquals(value, 2);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveSequences2() {
- String sqlStr = "select ConsecutiveSequences(d2.s1,d2.s2) from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 4);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577810700);
- Assert.assertEquals(value, 2);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveSequences3() {
- String sqlStr = "select ConsecutiveSequences(d1.s1,d1.s2,'gap'='5m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 4);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577810700);
- Assert.assertEquals(value, 2);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveSequences4() {
- String sqlStr = "select ConsecutiveSequences(d2.s1,d2.s2,'gap'='5m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 4);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577810700);
- Assert.assertEquals(value, 2);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveWindows1() {
- String sqlStr = "select ConsecutiveWindows(d1.s1,d1.s2,'length'='10m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809500);
- Assert.assertEquals(value, 3);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveWindows2() {
- String sqlStr = "select ConsecutiveWindows(d2.s1,d2.s2,'length'='10m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809500);
- Assert.assertEquals(value, 3);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveWindows3() {
- String sqlStr =
- "select ConsecutiveWindows(d1.s1,d1.s2,'length'='10m','gap'='5m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809500);
- Assert.assertEquals(value, 3);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testConsecutiveWindows4() {
- String sqlStr =
- "select ConsecutiveWindows(d2.s1,d2.s2,'length'='10m','gap'='5m') from root.vehicle";
- long timeStamp = 0;
- int value = 0;
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- int resultSetLength = resultSet.getRow();
- Assert.assertEquals(resultSetLength, 3);
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577808000);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809200);
- Assert.assertEquals(value, 3);
-
- resultSet.next();
-
- timeStamp = Long.parseLong(resultSet.getString(0));
- value = Integer.parseInt(resultSet.getString(1));
- Assert.assertEquals(timeStamp, 1577809500);
- Assert.assertEquals(value, 3);
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}
diff --git a/library-udf/src/test/java/org/apache/iotdb/library/string/StringTests.java b/library-udf/src/test/java/org/apache/iotdb/library/string/StringTests.java
deleted file mode 100644
index ad4b838297..0000000000
--- a/library-udf/src/test/java/org/apache/iotdb/library/string/StringTests.java
+++ /dev/null
@@ -1,260 +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.library.string;
-
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.conf.IoTDBDescriptor;
-import org.apache.iotdb.db.metadata.LocalSchemaProcessor;
-import org.apache.iotdb.integration.env.ConfigFactory;
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import static org.junit.Assert.fail;
-
-public class StringTests {
- private static final float oldUdfCollectorMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfCollectorMemoryBudgetInMB();
- private static final float oldUdfTransformerMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfTransformerMemoryBudgetInMB();
- private static final float oldUdfReaderMemoryBudgetInMB =
- IoTDBDescriptor.getInstance().getConfig().getUdfReaderMemoryBudgetInMB();
-
- @BeforeClass
- public static void setUp() throws Exception {
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(5)
- .setUdfTransformerMemoryBudgetInMB(5)
- .setUdfReaderMemoryBudgetInMB(5);
- EnvFactory.getEnv().initBeforeClass();
- createTimeSeries();
- generateData();
- registerUDF();
- }
-
- private static void createTimeSeries() throws MetadataException {
- LocalSchemaProcessor.getInstance().setStorageGroup(new PartialPath("root.vehicle"));
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d1.s1"),
- TSDataType.TEXT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- LocalSchemaProcessor.getInstance()
- .createTimeseries(
- new PartialPath("root.vehicle.d2.s1"),
- TSDataType.TEXT,
- TSEncoding.PLAIN,
- CompressionType.UNCOMPRESSED,
- null);
- }
-
- private static void generateData() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%s)",
- 100, "[192.168.0.1] [SUCCESS]"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%s)",
- 200, "[192.168.0.24] [SUCCESS]"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%s)",
- 300, "[192.168.0.2] [FAIL]"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%s)",
- 400, "[192.168.0.5] [SUCCESS]"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d1(timestamp,s1) values(%d,%s)",
- 500, "[192.168.0.124] [SUCCESS]"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%s)", 100, "A,B,A+,B-"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%s)", 200, "A,A+,A,B+"));
- statement.addBatch(
- String.format("insert into root.vehicle.d2(timestamp,s1) values(%d,%s)", 300, "B+,B,B"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%s)", 400, "A+,A,A+,A"));
- statement.addBatch(
- String.format(
- "insert into root.vehicle.d2(timestamp,s1) values(%d,%s)", 500, "A,B-,B,B"));
- statement.executeBatch();
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- private static void registerUDF() {
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- statement.execute(
- "create function regexmatch as 'org.apache.iotdb.library.string.UDTFRegexMatch'");
- statement.execute(
- "create function regexreplace as 'org.apache.iotdb.library.string.UDTFRegexReplace'");
- statement.execute(
- "create function regexsplit as 'org.apache.iotdb.library.string.UDTFRegexSplit'");
- statement.execute(
- "create function strreplace as 'org.apache.iotdb.library.string.UDTFStrReplace'");
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @AfterClass
- public static void tearDown() throws Exception {
- EnvFactory.getEnv().cleanAfterClass();
- ConfigFactory.getConfig()
- .setUdfCollectorMemoryBudgetInMB(oldUdfCollectorMemoryBudgetInMB)
- .setUdfTransformerMemoryBudgetInMB(oldUdfTransformerMemoryBudgetInMB)
- .setUdfReaderMemoryBudgetInMB(oldUdfReaderMemoryBudgetInMB);
- }
-
- @Test
- public void testRegexMatch1() {
- String sqlStr =
- "select regexmatch(d1.s1,\"regex\"=\"\\d+\\.\\d+\\.\\d+\\.\\d+\", \"group\"=\"0\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- String result1 = resultSet.getString(1);
- resultSet.next();
- String result2 = resultSet.getString(1);
- resultSet.next();
- String result3 = resultSet.getString(1);
- resultSet.next();
- String result4 = resultSet.getString(1);
- resultSet.next();
- String result5 = resultSet.getString(1);
- Assert.assertEquals("192.168.0.1", result1);
- Assert.assertEquals("192.168.0.24", result2);
- Assert.assertEquals("192.168.0.2", result3);
- Assert.assertEquals("192.168.0.5", result4);
- Assert.assertEquals("192.168.0.124", result5);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRegexReplace1() {
- String sqlStr =
- "select regexreplace(d1.s1,\"regex\"=\"192\\.168\\.0\\.(\\d+)\", \"replace\"=\"cluster-$1\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- String result1 = resultSet.getString(1);
- resultSet.next();
- String result2 = resultSet.getString(1);
- resultSet.next();
- String result3 = resultSet.getString(1);
- resultSet.next();
- String result4 = resultSet.getString(1);
- resultSet.next();
- String result5 = resultSet.getString(1);
- Assert.assertEquals("[cluster-1] [SUCCESS]", result1);
- Assert.assertEquals("[cluster-24] [SUCCESS]", result2);
- Assert.assertEquals("[cluster-2] [FAIL]", result3);
- Assert.assertEquals("[cluster-5] [SUCCESS]", result4);
- Assert.assertEquals("[cluster-124] [SUCCESS]", result5);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testRegexSplit1() {
- String sqlStr = "select regexsplit(d2.s1, \"regex\"=\",\", \"index\"=\"-1\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- int result1 = resultSet.getInt(1);
- resultSet.next();
- int result2 = resultSet.getInt(1);
- resultSet.next();
- int result3 = resultSet.getInt(1);
- resultSet.next();
- int result4 = resultSet.getInt(1);
- resultSet.next();
- int result5 = resultSet.getInt(1);
- Assert.assertEquals(4, result1);
- Assert.assertEquals(4, result2);
- Assert.assertEquals(3, result3);
- Assert.assertEquals(4, result4);
- Assert.assertEquals(4, result5);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-
- @Test
- public void testStrReplace1() {
- String sqlStr =
- "select strreplace(d2.s1,\"target\"=\",\", \"replace\"=\"/\", \"limit\"=\"2\") from root.vehicle";
- try (Connection connection = EnvFactory.getEnv().getConnection();
- Statement statement = connection.createStatement()) {
- ResultSet resultSet = statement.executeQuery(sqlStr);
- resultSet.next();
- String result1 = resultSet.getString(1);
- resultSet.next();
- String result2 = resultSet.getString(1);
- resultSet.next();
- String result3 = resultSet.getString(1);
- resultSet.next();
- String result4 = resultSet.getString(1);
- resultSet.next();
- String result5 = resultSet.getString(1);
- Assert.assertEquals("A/B/A+,B-", result1);
- Assert.assertEquals("A/A+/A,B+", result2);
- Assert.assertEquals("B+/B/B", result3);
- Assert.assertEquals("A+/A/A+,A", result4);
- Assert.assertEquals("A/B-/B,B", result5);
- Assert.assertFalse(resultSet.next());
- } catch (SQLException throwable) {
- fail(throwable.getMessage());
- }
- }
-}