You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ji...@apache.org on 2020/12/28 11:13:49 UTC
[iotdb] branch cluster_node_management updated (d99432a -> 44a6155)
This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a change to branch cluster_node_management
in repository https://gitbox.apache.org/repos/asf/iotdb.git.
from d99432a remove a done todo
add 5d91586 add SDT docs (#2307)
add becbd87 upgrade guava version (#2303)
add bb40b81 fix a bug of cal MaxDeduplicatedPathNum (#2310)
add 5fb992f Fix sync schema bug (#2309)
add 1ee1dd5 Update PartialPathTest.java (#2274)
add 1981766 remove useless coeds
add 852fbb9 Merge pull request #2302 from neuyilan/apache_master_1222_remove_useless_code
add 537aebf [IOTDB-944] Support UDTF (User-defined Timeseries Generating Function) (#1828)
add ac8c887 Update TsFileIOWriter.java (#2320)
add 21d356c Fix documents that are not linked to official websites (#2324)
add 92e26fb fix incorrect MetadataException printf info. (#2323)
add b4f41ba Remove a useless comma in the usage info of cluster (#2328)
add d76076d refactor the code
add 095803c Merge pull request #2339 from neuyilan/apache_master_1225_refactor_the_code
add 63c2aad fix wal buffer annotation (#2311)
add ec88e69 Bump maven wrapper from 3.6.1 to 3.6.3
add 231b334 Remove extra bracket to make the param annotation take effect
add 69de3d6 1. add pr template; 2. disable enforcer check in travis; 3. test sonar token
add 0b25cba supply the cluster version status code (#2342)
add 258d4ce Fix a potential overflow in udf (#2345)
add a3ea467 Fix the default value of operation timeout (#2330)
add a898e72 Delete update operation (#2288)
new 31c4d43 Merge branch 'master' into cluster_node_management
new 44a6155 fix tests
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/pull_request_template.md | 93 ++++
.github/workflows/sonar_and_coverall.yml | 2 +-
.mvn/wrapper/maven-wrapper.properties | 2 +-
.travis.yml | 10 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlBase.g4 | 52 +-
.../java/org/apache/iotdb/cluster/ClusterMain.java | 2 +-
.../cluster/client/async/AsyncClientPool.java | 2 +-
.../iotdb/cluster/client/sync/SyncClientPool.java | 2 +-
.../apache/iotdb/cluster/config/ClusterConfig.java | 4 +-
.../cluster/query/ClusterConcatPathOptimizer.java | 4 +-
.../iotdb/cluster/query/ClusterPlanExecutor.java | 10 +-
.../iotdb/cluster/query/ClusterPlanRouter.java | 9 -
.../cluster/server/monitor/NodeStatusManager.java | 2 +-
.../cluster/server/service/BaseSyncService.java | 7 +-
.../apache/iotdb/cluster/utils/ClusterUtils.java | 4 +-
.../org/apache/iotdb/cluster/common/IoTDBTest.java | 2 +-
.../cluster/log/applier/DataLogApplierTest.java | 4 +-
.../cluster/partition/SlotPartitionTableTest.java | 14 -
.../query/ClusterPhysicalGeneratorTest.java | 10 +-
.../cluster/query/ClusterPlanExecutorTest.java | 4 +-
.../cluster/server/member/MetaGroupMemberTest.java | 8 +
docs/UserGuide/Client/Status Codes.md | 8 +
docs/UserGuide/Concept/SDT.md | 63 +++
.../Operation Manual/UDF User Defined Function.md | 410 +++++++++++++++
docs/zh/UserGuide/Client/Status Codes.md | 9 +-
docs/zh/UserGuide/Concept/SDT.md | 61 +++
.../Operation Manual/UDF User Defined Function.md | 410 +++++++++++++++
example/pom.xml | 1 +
example/udf/pom.xml | 82 +++
.../java/org/apache/iotdb/udf/UDTFExample.java | 56 ++
hadoop/pom.xml | 2 +-
hive-connector/pom.xml | 2 +-
.../resources/conf/iotdb-engine.properties | 24 +-
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 15 +-
.../apache/iotdb/db/auth/entity/PrivilegeType.java | 2 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 76 ++-
.../org/apache/iotdb/db/conf/IoTDBConstant.java | 3 +
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 43 ++
.../UDFRegistrationException.java} | 72 ++-
.../main/java/org/apache/iotdb/db/qp/Planner.java | 9 +-
.../apache/iotdb/db/qp/constant/DatetimeUtils.java | 40 ++
.../apache/iotdb/db/qp/constant/SQLConstant.java | 14 +-
.../apache/iotdb/db/qp/executor/IPlanExecutor.java | 11 +-
.../apache/iotdb/db/qp/executor/PlanExecutor.java | 70 ++-
.../org/apache/iotdb/db/qp/logical/Operator.java | 3 +-
.../iotdb/db/qp/logical/crud/SFWOperator.java | 16 +-
.../iotdb/db/qp/logical/crud/SelectOperator.java | 47 +-
.../CreateFunctionOperator.java} | 99 ++--
.../DropFunctionOperator.java} | 81 ++-
.../ShowFunctionsOperator.java} | 78 ++-
.../iotdb/db/qp/physical/crud/QueryPlan.java | 2 +-
.../apache/iotdb/db/qp/physical/crud/UDFPlan.java | 79 +--
.../apache/iotdb/db/qp/physical/crud/UDTFPlan.java | 118 +++++
.../iotdb/db/qp/physical/crud/UpdatePlan.java | 135 -----
.../sys/{ShowPlan.java => CreateFunctionPlan.java} | 114 ++--
.../iotdb/db/qp/physical/sys/DropFunctionPlan.java | 81 +--
.../sys/ShowFunctionsPlan.java} | 75 ++-
.../apache/iotdb/db/qp/physical/sys/ShowPlan.java | 6 +-
.../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 152 ++++--
.../iotdb/db/qp/strategy/LogicalGenerator.java | 7 +-
.../iotdb/db/qp/strategy/PhysicalGenerator.java | 130 +++--
.../qp/strategy/optimizer/ConcatPathOptimizer.java | 192 +++++--
.../db/query/aggregation/AggregateResult.java | 2 +-
.../db/query/aggregation/AggregationType.java | 1 -
.../db/query/control/QueryResourceManager.java | 8 +-
.../db/query/dataset/AlignByDeviceDataSet.java | 4 +-
.../db/query/dataset/DirectAlignByTimeDataSet.java | 72 ++-
.../db/query/dataset/DirectNonAlignDataSet.java | 70 ++-
.../apache/iotdb/db/query/dataset/ListDataSet.java | 4 +-
.../db/query/dataset/NonAlignEngineDataSet.java | 28 +-
.../dataset/RawQueryDataSetWithValueFilter.java | 4 +-
.../dataset/RawQueryDataSetWithoutValueFilter.java | 24 +-
.../db/query/dataset/ShowTimeseriesDataSet.java | 4 +-
.../db/query/dataset/UDTFAlignByTimeDataSet.java | 277 ++++++++++
.../apache/iotdb/db/query/dataset/UDTFDataSet.java | 152 ++++++
.../db/query/dataset/UDTFNonAlignDataSet.java | 191 +++++++
.../dataset/groupby/GroupByEngineDataSet.java | 4 +-
.../query/dataset/groupby/GroupByFillDataSet.java | 4 +-
.../query/dataset/groupby/GroupByTimeDataSet.java | 4 +-
.../groupby/GroupByWithValueFilterDataSet.java | 2 +-
.../groupby/GroupByWithoutValueFilterDataSet.java | 2 +-
.../iotdb/db/query/executor/IQueryRouter.java | 8 +-
.../iotdb/db/query/executor/QueryRouter.java | 51 +-
.../db/query/executor/RawDataQueryExecutor.java | 22 +-
.../iotdb/db/query/executor/UDTFQueryExecutor.java | 84 +++
.../UpdateOperator.java => query/udf/api/UDF.java} | 70 ++-
.../org/apache/iotdb/db/query/udf/api/UDTF.java | 101 ++++
.../apache/iotdb/db/query/udf/api/access/Row.java | 119 +++++
.../iotdb/db/query/udf/api/access/RowIterator.java | 85 +--
.../iotdb/db/query/udf/api/access/RowWindow.java | 61 +++
.../db/query/udf/api/collector/PointCollector.java | 137 +++++
.../api/customizer/config/UDFConfigurations.java} | 79 ++-
.../api/customizer/config/UDTFConfigurations.java | 104 ++++
.../api/customizer/parameter/UDFParameters.java | 119 +++++
.../api/customizer/strategy/AccessStrategy.java | 64 +++
.../strategy/RowByRowAccessStrategy.java | 61 +++
.../strategy/SlidingSizeWindowAccessStrategy.java | 123 +++++
.../strategy/SlidingTimeWindowAccessStrategy.java | 249 +++++++++
.../iotdb/db/query/udf/core/access/RowImpl.java | 93 ++++
.../db/query/udf/core/access/RowIteratorImpl.java | 58 +++
.../db/query/udf/core/access/RowWindowImpl.java | 75 +++
.../db/query/udf/core/context/UDFContext.java | 134 +++++
.../db/query/udf/core/executor/UDTFExecutor.java | 92 ++++
.../iotdb/db/query/udf/core/input/InputLayer.java | 563 ++++++++++++++++++++
.../iotdb/db/query/udf/core/input/SafetyLine.java | 60 +++
.../db/query/udf/core/reader/LayerPointReader.java | 84 +--
.../udf/core/reader/LayerRowReader.java} | 79 ++-
.../udf/core/reader/LayerRowWindowReader.java} | 77 ++-
.../core/transformer/RawQueryPointTransformer.java | 72 +++
.../db/query/udf/core/transformer/Transformer.java | 93 ++++
.../core/transformer/UDFQueryRowTransformer.java | 84 +--
.../transformer/UDFQueryRowWindowTransformer.java | 46 ++
.../udf/core/transformer/UDFQueryTransformer.java | 89 ++++
.../query/udf/datastructure/SerializableList.java | 165 ++++++
.../primitive/ElasticSerializableIntList.java | 109 ++++
.../udf/datastructure/primitive/IntList.java} | 74 ++-
.../primitive/SerializableIntList.java | 131 +++++
.../datastructure/primitive/WrappedIntArray.java | 90 ++--
.../row/ElasticSerializableRowRecordList.java | 234 +++++++++
.../row/SerializableRowRecordList.java | 245 +++++++++
.../tv/ElasticSerializableBinaryTVList.java | 121 +++++
.../tv/ElasticSerializableTVList.java | 312 +++++++++++
.../datastructure/tv/SerializableBinaryTVList.java | 79 +++
.../tv/SerializableBooleanTVList.java | 69 +++
.../datastructure/tv/SerializableDoubleTVList.java | 69 +++
.../datastructure/tv/SerializableFloatTVList.java | 69 +++
.../datastructure/tv/SerializableIntTVList.java | 69 +++
.../datastructure/tv/SerializableLongTVList.java | 69 +++
.../udf/datastructure/tv/SerializableTVList.java | 99 ++++
.../udf/service/TemporaryQueryDataFileService.java | 136 +++++
.../iotdb/db/query/udf/service/UDFClassLoader.java | 64 +++
.../iotdb/db/query/udf/service/UDFLogWriter.java | 69 +++
.../udf/service/UDFRegistrationInformation.java} | 93 ++--
.../query/udf/service/UDFRegistrationService.java | 329 ++++++++++++
.../java/org/apache/iotdb/db/service/IoTDB.java | 4 +
.../org/apache/iotdb/db/service/ServiceType.java | 4 +-
.../org/apache/iotdb/db/service/TSServiceImpl.java | 102 ++--
.../db/sync/receiver/transfer/SyncServiceImpl.java | 25 +-
.../iotdb/db/sync/sender/transfer/SyncClient.java | 48 +-
.../org/apache/iotdb/db/utils/SchemaUtils.java | 25 +-
.../iotdb/db/writelog/recover/LogReplayer.java | 9 -
.../apache/iotdb/db/auth/AuthorityCheckerTest.java | 3 -
.../iotdb/db/engine/storagegroup/TTLTest.java | 2 +-
.../iotdb/db/integration/IoTDBSimpleQueryIT.java | 6 +-
.../iotdb/db/integration/IoTDBUDFManagementIT.java | 308 +++++++++++
.../db/integration/IoTDBUDFWindowQueryIT.java | 513 ++++++++++++++++++
.../integration/IoTDBUDTFAlignByTimeQueryIT.java | 525 +++++++++++++++++++
.../db/integration/IoTDBUDTFHybridQueryIT.java | 166 ++++++
.../db/integration/IoTDBUDTFNonAlignQueryIT.java | 337 ++++++++++++
.../apache/iotdb/db/metadata/PartialPathTest.java | 34 +-
.../iotdb/db/qp/plan/ConcatOptimizerTest.java | 7 +-
.../apache/iotdb/db/qp/plan/PhysicalPlanTest.java | 213 +++++++-
.../query/dataset/UDTFAlignByTimeDataSetTest.java | 578 +++++++++++++++++++++
.../ElasticSerializableRowRecordListTest.java | 224 ++++++++
.../ElasticSerializableTVListTest.java | 251 +++++++++
.../SerializableBinaryTVListTest.java | 80 +++
.../SerializableBooleanTVListTest.java | 80 +++
.../SerializableDoubleTVListTest.java | 79 +++
.../datastructure/SerializableFloatTVListTest.java | 78 +++
.../datastructure/SerializableIntTVListTest.java | 78 +++
.../udf/datastructure/SerializableListTest.java} | 81 ++-
.../datastructure/SerializableLongTVListTest.java | 78 +++
.../SerializableRowRecordListTest.java | 143 +++++
.../udf/datastructure/SerializableTVListTest.java} | 79 ++-
.../iotdb/db/query/udf/example/Accumulator.java | 82 +++
.../apache/iotdb/db/query/udf/example/Adder.java | 78 +++
.../apache/iotdb/db/query/udf/example/Counter.java | 76 +++
.../iotdb/db/query/udf/example/Multiplier.java | 54 ++
.../SlidingSizeWindowConstructorTester0.java | 53 ++
.../SlidingSizeWindowConstructorTester1.java | 54 ++
.../SlidingTimeWindowConstructionTester.java | 61 +++
.../apache/iotdb/db/utils/EnvironmentUtils.java | 5 +
.../apache/iotdb/db/writelog/PerformanceTest.java | 15 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 -
.../java/org/apache/iotdb/session/SessionUT.java | 2 +-
site/src/main/.vuepress/config.js | 26 +-
spark-iotdb-connector/pom.xml | 2 +-
.../org/apache/iotdb/tsfile/read/common/Field.java | 4 -
.../apache/iotdb/tsfile/read/common/RowRecord.java | 2 +-
.../query/dataset/DataSetWithTimeGenerator.java | 4 +-
.../query/dataset/DataSetWithoutTimeGenerator.java | 4 +-
.../tsfile/read/query/dataset/EmptyDataSet.java | 4 +-
.../tsfile/read/query/dataset/QueryDataSet.java | 4 +-
.../iotdb/tsfile/utils/ReadWriteIOUtils.java | 11 +-
.../iotdb/tsfile/write/writer/TsFileIOWriter.java | 2 +-
185 files changed, 13070 insertions(+), 1567 deletions(-)
create mode 100644 .github/pull_request_template.md
create mode 100644 docs/UserGuide/Operation Manual/UDF User Defined Function.md
create mode 100644 docs/zh/UserGuide/Operation Manual/UDF User Defined Function.md
create mode 100644 example/udf/pom.xml
create mode 100644 example/udf/src/main/java/org/apache/iotdb/udf/UDTFExample.java
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => exception/UDFRegistrationException.java} (65%)
copy server/src/main/java/org/apache/iotdb/db/qp/logical/{crud/UpdateOperator.java => sys/CreateFunctionOperator.java} (51%)
copy server/src/main/java/org/apache/iotdb/db/qp/logical/{crud/UpdateOperator.java => sys/DropFunctionOperator.java} (66%)
copy server/src/main/java/org/apache/iotdb/db/qp/logical/{crud/UpdateOperator.java => sys/ShowFunctionsOperator.java} (68%)
copy cluster/src/main/java/org/apache/iotdb/cluster/query/ClusterConcatPathOptimizer.java => server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDFPlan.java (57%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UDTFPlan.java
delete mode 100644 server/src/main/java/org/apache/iotdb/db/qp/physical/crud/UpdatePlan.java
copy server/src/main/java/org/apache/iotdb/db/qp/physical/sys/{ShowPlan.java => CreateFunctionPlan.java} (60%)
copy cluster/src/main/java/org/apache/iotdb/cluster/query/ClusterConcatPathOptimizer.java => server/src/main/java/org/apache/iotdb/db/qp/physical/sys/DropFunctionPlan.java (61%)
copy server/src/main/java/org/apache/iotdb/db/qp/{logical/crud/UpdateOperator.java => physical/sys/ShowFunctionsPlan.java} (65%)
copy tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/EmptyDataSet.java => server/src/main/java/org/apache/iotdb/db/query/dataset/DirectAlignByTimeDataSet.java (62%)
copy tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/EmptyDataSet.java => server/src/main/java/org/apache/iotdb/db/query/dataset/DirectNonAlignDataSet.java (62%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSet.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFDataSet.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/dataset/UDTFNonAlignDataSet.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/executor/UDTFQueryExecutor.java
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/api/UDF.java} (65%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/UDTF.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/access/Row.java
copy cluster/src/main/java/org/apache/iotdb/cluster/query/ClusterConcatPathOptimizer.java => server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowIterator.java (50%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/access/RowWindow.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/collector/PointCollector.java
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/api/customizer/config/UDFConfigurations.java} (60%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/config/UDTFConfigurations.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/parameter/UDFParameters.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/AccessStrategy.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/RowByRowAccessStrategy.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingSizeWindowAccessStrategy.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/api/customizer/strategy/SlidingTimeWindowAccessStrategy.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/access/RowImpl.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/access/RowIteratorImpl.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/access/RowWindowImpl.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/context/UDFContext.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/executor/UDTFExecutor.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/input/InputLayer.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/input/SafetyLine.java
copy cluster/src/main/java/org/apache/iotdb/cluster/query/ClusterConcatPathOptimizer.java => server/src/main/java/org/apache/iotdb/db/query/udf/core/reader/LayerPointReader.java (51%)
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/core/reader/LayerRowReader.java} (62%)
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/core/reader/LayerRowWindowReader.java} (60%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/RawQueryPointTransformer.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/Transformer.java
copy tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/EmptyDataSet.java => server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/UDFQueryRowTransformer.java (50%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/UDFQueryRowWindowTransformer.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/core/transformer/UDFQueryTransformer.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/SerializableList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/primitive/ElasticSerializableIntList.java
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/datastructure/primitive/IntList.java} (65%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/primitive/SerializableIntList.java
copy tsfile/src/main/java/org/apache/iotdb/tsfile/read/query/dataset/EmptyDataSet.java => server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/primitive/WrappedIntArray.java (62%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/ElasticSerializableRowRecordList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/row/SerializableRowRecordList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableBinaryTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/ElasticSerializableTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBinaryTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableBooleanTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableDoubleTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableFloatTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableIntTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableLongTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/datastructure/tv/SerializableTVList.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/service/TemporaryQueryDataFileService.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFClassLoader.java
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFLogWriter.java
copy server/src/main/java/org/apache/iotdb/db/{qp/logical/crud/UpdateOperator.java => query/udf/service/UDFRegistrationInformation.java} (50%)
create mode 100644 server/src/main/java/org/apache/iotdb/db/query/udf/service/UDFRegistrationService.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFManagementIT.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDFWindowQueryIT.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFAlignByTimeQueryIT.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFHybridQueryIT.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFNonAlignQueryIT.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/dataset/UDTFAlignByTimeDataSetTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableRowRecordListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/ElasticSerializableTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBinaryTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableBooleanTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableDoubleTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableFloatTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableIntTVListTest.java
copy server/src/{main/java/org/apache/iotdb/db/qp/logical/crud/UpdateOperator.java => test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableListTest.java} (55%)
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableLongTVListTest.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableRowRecordListTest.java
rename server/src/{main/java/org/apache/iotdb/db/qp/logical/crud/UpdateOperator.java => test/java/org/apache/iotdb/db/query/udf/datastructure/SerializableTVListTest.java} (62%)
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/Accumulator.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/Adder.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/Counter.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/Multiplier.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester0.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/SlidingSizeWindowConstructorTester1.java
create mode 100644 server/src/test/java/org/apache/iotdb/db/query/udf/example/SlidingTimeWindowConstructionTester.java
[iotdb] 02/02: fix tests
Posted by ji...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch cluster_node_management
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 44a61550ef3c311ce043690a0417412b98632d9e
Author: jt <jt...@163.com>
AuthorDate: Mon Dec 28 19:11:20 2020 +0800
fix tests
---
.../org/apache/iotdb/cluster/client/async/AsyncClientPool.java | 2 +-
.../java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java | 2 +-
.../apache/iotdb/cluster/server/monitor/NodeStatusManager.java | 2 +-
.../apache/iotdb/cluster/server/member/MetaGroupMemberTest.java | 8 ++++++++
4 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java b/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
index be96b53..b9b752f 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/client/async/AsyncClientPool.java
@@ -73,7 +73,7 @@ public class AsyncClientPool {
*/
public AsyncClient getClient(Node node, boolean activatedOnly) throws IOException {
ClusterNode clusterNode = new ClusterNode(node);
- if (activatedOnly && NodeStatusManager.getINSTANCE().isActivated(node)) {
+ if (activatedOnly && !NodeStatusManager.getINSTANCE().isActivated(node)) {
return null;
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java b/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
index d91adb0..73c8d7a 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/client/sync/SyncClientPool.java
@@ -71,7 +71,7 @@ public class SyncClientPool {
*/
public Client getClient(Node node, boolean activatedOnly) {
ClusterNode clusterNode = new ClusterNode(node);
- if (activatedOnly && NodeStatusManager.getINSTANCE().isActivated(node)) {
+ if (activatedOnly && !NodeStatusManager.getINSTANCE().isActivated(node)) {
return null;
}
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/monitor/NodeStatusManager.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/monitor/NodeStatusManager.java
index dceac90..b2a27d7 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/monitor/NodeStatusManager.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/monitor/NodeStatusManager.java
@@ -112,7 +112,7 @@ public class NodeStatusManager {
public NodeStatus getNodeStatus(Node node, boolean tryUpdate) {
// avoid duplicated computing of concurrent queries
NodeStatus nodeStatus = nodeStatusMap.computeIfAbsent(node, n -> new NodeStatus());
- if (node.equals(metaGroupMember.getThisNode())) {
+ if (metaGroupMember == null || node.equals(metaGroupMember.getThisNode())) {
return nodeStatus;
}
diff --git a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
index c54488b..86998fb 100644
--- a/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
+++ b/cluster/src/test/java/org/apache/iotdb/cluster/server/member/MetaGroupMemberTest.java
@@ -126,6 +126,7 @@ import org.apache.iotdb.tsfile.read.filter.TimeFilter;
import org.apache.iotdb.tsfile.read.filter.ValueFilter;
import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
import org.apache.iotdb.tsfile.write.schema.TimeseriesSchema;
+import org.apache.thrift.TException;
import org.apache.thrift.async.AsyncMethodCallback;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.thrift.protocol.TCompactProtocol.Factory;
@@ -366,6 +367,13 @@ public class MetaGroupMemberTest extends MemberTest {
}
@Override
+ public void handshake(Node sender, AsyncMethodCallback<Void> resultHandler) {
+ new Thread(() -> {
+ resultHandler.onComplete(null);
+ }).start();
+ }
+
+ @Override
public void sendHeartbeat(HeartBeatRequest request,
AsyncMethodCallback<HeartBeatResponse> resultHandler) {
new Thread(() -> {
[iotdb] 01/02: Merge branch 'master' into cluster_node_management
Posted by ji...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch cluster_node_management
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 31c4d437fb3f6f06964e44258e3e5fbc85936320
Merge: d99432a a898e72
Author: jt <jt...@163.com>
AuthorDate: Mon Dec 28 16:28:08 2020 +0800
Merge branch 'master' into cluster_node_management
.github/pull_request_template.md | 93 ++++
.github/workflows/sonar_and_coverall.yml | 2 +-
.mvn/wrapper/maven-wrapper.properties | 2 +-
.travis.yml | 10 +-
.../antlr4/org/apache/iotdb/db/qp/sql/SqlBase.g4 | 52 +-
.../java/org/apache/iotdb/cluster/ClusterMain.java | 2 +-
.../apache/iotdb/cluster/config/ClusterConfig.java | 4 +-
.../cluster/query/ClusterConcatPathOptimizer.java | 4 +-
.../iotdb/cluster/query/ClusterPlanExecutor.java | 10 +-
.../iotdb/cluster/query/ClusterPlanRouter.java | 9 -
.../cluster/server/service/BaseSyncService.java | 7 +-
.../apache/iotdb/cluster/utils/ClusterUtils.java | 4 +-
.../org/apache/iotdb/cluster/common/IoTDBTest.java | 2 +-
.../cluster/log/applier/DataLogApplierTest.java | 4 +-
.../cluster/partition/SlotPartitionTableTest.java | 14 -
.../query/ClusterPhysicalGeneratorTest.java | 10 +-
.../cluster/query/ClusterPlanExecutorTest.java | 4 +-
docs/UserGuide/Client/Status Codes.md | 8 +
docs/UserGuide/Concept/SDT.md | 63 +++
.../Operation Manual/UDF User Defined Function.md | 410 +++++++++++++++
docs/zh/UserGuide/Client/Status Codes.md | 9 +-
docs/zh/UserGuide/Concept/SDT.md | 61 +++
.../Operation Manual/UDF User Defined Function.md | 410 +++++++++++++++
example/pom.xml | 1 +
example/udf/pom.xml | 82 +++
.../java/org/apache/iotdb/udf/UDTFExample.java | 56 ++
hadoop/pom.xml | 2 +-
hive-connector/pom.xml | 2 +-
.../resources/conf/iotdb-engine.properties | 24 +-
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 15 +-
.../apache/iotdb/db/auth/entity/PrivilegeType.java | 2 +-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 76 ++-
.../org/apache/iotdb/db/conf/IoTDBConstant.java | 3 +
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 43 ++
.../UDFRegistrationException.java} | 72 ++-
.../main/java/org/apache/iotdb/db/qp/Planner.java | 9 +-
.../apache/iotdb/db/qp/constant/DatetimeUtils.java | 40 ++
.../apache/iotdb/db/qp/constant/SQLConstant.java | 14 +-
.../apache/iotdb/db/qp/executor/IPlanExecutor.java | 11 +-
.../apache/iotdb/db/qp/executor/PlanExecutor.java | 70 ++-
.../org/apache/iotdb/db/qp/logical/Operator.java | 3 +-
.../iotdb/db/qp/logical/crud/SFWOperator.java | 16 +-
.../iotdb/db/qp/logical/crud/SelectOperator.java | 47 +-
.../CreateFunctionOperator.java} | 99 ++--
.../DropFunctionOperator.java} | 81 ++-
.../ShowFunctionsOperator.java} | 78 ++-
.../iotdb/db/qp/physical/crud/QueryPlan.java | 2 +-
.../apache/iotdb/db/qp/physical/crud/UDFPlan.java | 79 +--
.../apache/iotdb/db/qp/physical/crud/UDTFPlan.java | 118 +++++
.../iotdb/db/qp/physical/crud/UpdatePlan.java | 135 -----
.../sys/{ShowPlan.java => CreateFunctionPlan.java} | 114 ++--
.../iotdb/db/qp/physical/sys/DropFunctionPlan.java | 81 +--
.../sys/ShowFunctionsPlan.java} | 75 ++-
.../apache/iotdb/db/qp/physical/sys/ShowPlan.java | 6 +-
.../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java | 152 ++++--
.../iotdb/db/qp/strategy/LogicalGenerator.java | 7 +-
.../iotdb/db/qp/strategy/PhysicalGenerator.java | 130 +++--
.../qp/strategy/optimizer/ConcatPathOptimizer.java | 192 +++++--
.../db/query/aggregation/AggregateResult.java | 2 +-
.../db/query/aggregation/AggregationType.java | 1 -
.../db/query/control/QueryResourceManager.java | 8 +-
.../db/query/dataset/AlignByDeviceDataSet.java | 4 +-
.../db/query/dataset/DirectAlignByTimeDataSet.java | 72 ++-
.../db/query/dataset/DirectNonAlignDataSet.java | 70 ++-
.../apache/iotdb/db/query/dataset/ListDataSet.java | 4 +-
.../db/query/dataset/NonAlignEngineDataSet.java | 28 +-
.../dataset/RawQueryDataSetWithValueFilter.java | 4 +-
.../dataset/RawQueryDataSetWithoutValueFilter.java | 24 +-
.../db/query/dataset/ShowTimeseriesDataSet.java | 4 +-
.../db/query/dataset/UDTFAlignByTimeDataSet.java | 277 ++++++++++
.../apache/iotdb/db/query/dataset/UDTFDataSet.java | 152 ++++++
.../db/query/dataset/UDTFNonAlignDataSet.java | 191 +++++++
.../dataset/groupby/GroupByEngineDataSet.java | 4 +-
.../query/dataset/groupby/GroupByFillDataSet.java | 4 +-
.../query/dataset/groupby/GroupByTimeDataSet.java | 4 +-
.../groupby/GroupByWithValueFilterDataSet.java | 2 +-
.../groupby/GroupByWithoutValueFilterDataSet.java | 2 +-
.../iotdb/db/query/executor/IQueryRouter.java | 8 +-
.../iotdb/db/query/executor/QueryRouter.java | 51 +-
.../db/query/executor/RawDataQueryExecutor.java | 22 +-
.../iotdb/db/query/executor/UDTFQueryExecutor.java | 84 +++
.../UpdateOperator.java => query/udf/api/UDF.java} | 70 ++-
.../org/apache/iotdb/db/query/udf/api/UDTF.java | 101 ++++
.../apache/iotdb/db/query/udf/api/access/Row.java | 119 +++++
.../iotdb/db/query/udf/api/access/RowIterator.java | 85 +--
.../iotdb/db/query/udf/api/access/RowWindow.java | 61 +++
.../db/query/udf/api/collector/PointCollector.java | 137 +++++
.../api/customizer/config/UDFConfigurations.java} | 79 ++-
.../api/customizer/config/UDTFConfigurations.java | 104 ++++
.../api/customizer/parameter/UDFParameters.java | 119 +++++
.../api/customizer/strategy/AccessStrategy.java | 64 +++
.../strategy/RowByRowAccessStrategy.java | 61 +++
.../strategy/SlidingSizeWindowAccessStrategy.java | 123 +++++
.../strategy/SlidingTimeWindowAccessStrategy.java | 249 +++++++++
.../iotdb/db/query/udf/core/access/RowImpl.java | 93 ++++
.../db/query/udf/core/access/RowIteratorImpl.java | 58 +++
.../db/query/udf/core/access/RowWindowImpl.java | 75 +++
.../db/query/udf/core/context/UDFContext.java | 134 +++++
.../db/query/udf/core/executor/UDTFExecutor.java | 92 ++++
.../iotdb/db/query/udf/core/input/InputLayer.java | 563 ++++++++++++++++++++
.../iotdb/db/query/udf/core/input/SafetyLine.java | 60 +++
.../db/query/udf/core/reader/LayerPointReader.java | 84 +--
.../udf/core/reader/LayerRowReader.java} | 79 ++-
.../udf/core/reader/LayerRowWindowReader.java} | 77 ++-
.../core/transformer/RawQueryPointTransformer.java | 72 +++
.../db/query/udf/core/transformer/Transformer.java | 93 ++++
.../core/transformer/UDFQueryRowTransformer.java | 84 +--
.../transformer/UDFQueryRowWindowTransformer.java | 46 ++
.../udf/core/transformer/UDFQueryTransformer.java | 89 ++++
.../query/udf/datastructure/SerializableList.java | 165 ++++++
.../primitive/ElasticSerializableIntList.java | 109 ++++
.../udf/datastructure/primitive/IntList.java} | 74 ++-
.../primitive/SerializableIntList.java | 131 +++++
.../datastructure/primitive/WrappedIntArray.java | 90 ++--
.../row/ElasticSerializableRowRecordList.java | 234 +++++++++
.../row/SerializableRowRecordList.java | 245 +++++++++
.../tv/ElasticSerializableBinaryTVList.java | 121 +++++
.../tv/ElasticSerializableTVList.java | 312 +++++++++++
.../datastructure/tv/SerializableBinaryTVList.java | 79 +++
.../tv/SerializableBooleanTVList.java | 69 +++
.../datastructure/tv/SerializableDoubleTVList.java | 69 +++
.../datastructure/tv/SerializableFloatTVList.java | 69 +++
.../datastructure/tv/SerializableIntTVList.java | 69 +++
.../datastructure/tv/SerializableLongTVList.java | 69 +++
.../udf/datastructure/tv/SerializableTVList.java | 99 ++++
.../udf/service/TemporaryQueryDataFileService.java | 136 +++++
.../iotdb/db/query/udf/service/UDFClassLoader.java | 64 +++
.../iotdb/db/query/udf/service/UDFLogWriter.java | 69 +++
.../udf/service/UDFRegistrationInformation.java} | 93 ++--
.../query/udf/service/UDFRegistrationService.java | 329 ++++++++++++
.../java/org/apache/iotdb/db/service/IoTDB.java | 4 +
.../org/apache/iotdb/db/service/ServiceType.java | 4 +-
.../org/apache/iotdb/db/service/TSServiceImpl.java | 102 ++--
.../db/sync/receiver/transfer/SyncServiceImpl.java | 25 +-
.../iotdb/db/sync/sender/transfer/SyncClient.java | 48 +-
.../org/apache/iotdb/db/utils/SchemaUtils.java | 25 +-
.../iotdb/db/writelog/recover/LogReplayer.java | 9 -
.../apache/iotdb/db/auth/AuthorityCheckerTest.java | 3 -
.../iotdb/db/engine/storagegroup/TTLTest.java | 2 +-
.../iotdb/db/integration/IoTDBSimpleQueryIT.java | 6 +-
.../iotdb/db/integration/IoTDBUDFManagementIT.java | 308 +++++++++++
.../db/integration/IoTDBUDFWindowQueryIT.java | 513 ++++++++++++++++++
.../integration/IoTDBUDTFAlignByTimeQueryIT.java | 525 +++++++++++++++++++
.../db/integration/IoTDBUDTFHybridQueryIT.java | 166 ++++++
.../db/integration/IoTDBUDTFNonAlignQueryIT.java | 337 ++++++++++++
.../apache/iotdb/db/metadata/PartialPathTest.java | 34 +-
.../iotdb/db/qp/plan/ConcatOptimizerTest.java | 7 +-
.../apache/iotdb/db/qp/plan/PhysicalPlanTest.java | 213 +++++++-
.../query/dataset/UDTFAlignByTimeDataSetTest.java | 578 +++++++++++++++++++++
.../ElasticSerializableRowRecordListTest.java | 224 ++++++++
.../ElasticSerializableTVListTest.java | 251 +++++++++
.../SerializableBinaryTVListTest.java | 80 +++
.../SerializableBooleanTVListTest.java | 80 +++
.../SerializableDoubleTVListTest.java | 79 +++
.../datastructure/SerializableFloatTVListTest.java | 78 +++
.../datastructure/SerializableIntTVListTest.java | 78 +++
.../udf/datastructure/SerializableListTest.java} | 81 ++-
.../datastructure/SerializableLongTVListTest.java | 78 +++
.../SerializableRowRecordListTest.java | 143 +++++
.../udf/datastructure/SerializableTVListTest.java} | 79 ++-
.../iotdb/db/query/udf/example/Accumulator.java | 82 +++
.../apache/iotdb/db/query/udf/example/Adder.java | 78 +++
.../apache/iotdb/db/query/udf/example/Counter.java | 76 +++
.../iotdb/db/query/udf/example/Multiplier.java | 54 ++
.../SlidingSizeWindowConstructorTester0.java | 53 ++
.../SlidingSizeWindowConstructorTester1.java | 54 ++
.../SlidingTimeWindowConstructionTester.java | 61 +++
.../apache/iotdb/db/utils/EnvironmentUtils.java | 5 +
.../apache/iotdb/db/writelog/PerformanceTest.java | 15 +-
.../java/org/apache/iotdb/rpc/TSStatusCode.java | 1 -
.../java/org/apache/iotdb/session/SessionUT.java | 2 +-
site/src/main/.vuepress/config.js | 26 +-
spark-iotdb-connector/pom.xml | 2 +-
.../org/apache/iotdb/tsfile/read/common/Field.java | 4 -
.../apache/iotdb/tsfile/read/common/RowRecord.java | 2 +-
.../query/dataset/DataSetWithTimeGenerator.java | 4 +-
.../query/dataset/DataSetWithoutTimeGenerator.java | 4 +-
.../tsfile/read/query/dataset/EmptyDataSet.java | 4 +-
.../tsfile/read/query/dataset/QueryDataSet.java | 4 +-
.../iotdb/tsfile/utils/ReadWriteIOUtils.java | 11 +-
.../iotdb/tsfile/write/writer/TsFileIOWriter.java | 2 +-
181 files changed, 13059 insertions(+), 1564 deletions(-)