in iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/PlanNodeType.java [387:691]
public static PlanNode deserialize(ByteBuffer buffer, short nodeType) {
switch (nodeType) {
case 0:
return AggregationNode.deserialize(buffer);
case 1:
return DeviceViewNode.deserialize(buffer);
case 2:
return FillNode.deserialize(buffer);
case 3:
return FilterNode.deserialize(buffer);
case 5:
return GroupByLevelNode.deserialize(buffer);
case 6:
return LimitNode.deserialize(buffer);
case 7:
return OffsetNode.deserialize(buffer);
case 8:
return SortNode.deserialize(buffer);
case 9:
return FullOuterTimeJoinNode.deserialize(buffer);
case 11:
return SeriesScanNode.deserialize(buffer);
case 12:
return SeriesAggregationScanNode.deserialize(buffer);
case 13:
return InsertTabletNode.deserialize(buffer);
case 14:
return InsertRowNode.deserialize(buffer);
case 15:
return InsertRowsNode.deserialize(buffer);
case 16:
return InsertRowsOfOneDeviceNode.deserialize(buffer);
case 17:
return InsertMultiTabletsNode.deserialize(buffer);
case 18:
return DevicesSchemaScanNode.deserialize(buffer);
case 19:
return CreateTimeSeriesNode.deserialize(buffer);
case 20:
return ExchangeNode.deserialize(buffer);
case 21:
return AlterTimeSeriesNode.deserialize(buffer);
case 22:
return CreateAlignedTimeSeriesNode.deserialize(buffer);
case 23:
return TimeSeriesSchemaScanNode.deserialize(buffer);
case 24:
return SeriesSchemaFetchScanNode.deserialize(buffer);
case 25:
return SchemaQueryMergeNode.deserialize(buffer);
case 26:
return SchemaQueryOrderByHeatNode.deserialize(buffer);
case 27:
return DevicesCountNode.deserialize(buffer);
case 28:
return TimeSeriesCountNode.deserialize(buffer);
case 29:
return LevelTimeSeriesCountNode.deserialize(buffer);
case 30:
return CountSchemaMergeNode.deserialize(buffer);
case 31:
return SlidingWindowAggregationNode.deserialize(buffer);
case 32:
return ProjectNode.deserialize(buffer);
case 33:
return AlignedSeriesScanNode.deserialize(buffer);
case 34:
return AlignedSeriesAggregationScanNode.deserialize(buffer);
case 35:
return DeviceMergeNode.deserialize(buffer);
case 36:
return SchemaFetchMergeNode.deserialize(buffer);
case 37:
return TransformNode.deserialize(buffer);
case 39:
return CreateMultiTimeSeriesNode.deserialize(buffer);
case 40:
return NodePathsSchemaScanNode.deserialize(buffer);
case 41:
return NodePathsConvertNode.deserialize(buffer);
case 42:
return NodeManagementMemoryMergeNode.deserialize(buffer);
case 44:
return DeleteDataNode.deserialize(buffer);
case 45:
return DeleteTimeSeriesNode.deserialize(buffer);
case 46:
return LastQueryScanNode.deserialize(buffer);
case 47:
return AlignedLastQueryScanNode.deserialize(buffer);
case 48:
return LastQueryNode.deserialize(buffer);
case 49:
return LastQueryMergeNode.deserialize(buffer);
case 50:
return LastQueryCollectNode.deserialize(buffer);
case 51:
return NodePathsCountNode.deserialize(buffer);
case 52:
return InternalCreateTimeSeriesNode.deserialize(buffer);
case 53:
return ActivateTemplateNode.deserialize(buffer);
case 54:
return PathsUsingTemplateScanNode.deserialize(buffer);
case 55:
return LoadTsFilePieceNode.deserialize(buffer);
case 56:
return ConstructSchemaBlackListNode.deserialize(buffer);
case 57:
return RollbackSchemaBlackListNode.deserialize(buffer);
case 58:
return GroupByTagNode.deserialize(buffer);
case 59:
return PreDeactivateTemplateNode.deserialize(buffer);
case 60:
return RollbackPreDeactivateTemplateNode.deserialize(buffer);
case 61:
return DeactivateTemplateNode.deserialize(buffer);
case 62:
return IntoNode.deserialize(buffer);
case 63:
return DeviceViewIntoNode.deserialize(buffer);
case 64:
return HorizontallyConcatNode.deserialize(buffer);
case 65:
return SingleDeviceViewNode.deserialize(buffer);
case 66:
return org.apache.iotdb.db.queryengine.plan.planner.plan.node.process.MergeSortNode
.deserialize(buffer);
case 67:
return ShowQueriesNode.deserialize(buffer);
case 68:
return InternalBatchActivateTemplateNode.deserialize(buffer);
case 69:
return InternalCreateMultiTimeSeriesNode.deserialize(buffer);
case 70:
return IdentitySinkNode.deserialize(buffer);
case 71:
return ShuffleSinkNode.deserialize(buffer);
case 72:
return BatchActivateTemplateNode.deserialize(buffer);
case 73:
return CreateLogicalViewNode.deserialize(buffer);
case 74:
return ConstructLogicalViewBlackListNode.deserialize(buffer);
case 75:
return RollbackLogicalViewBlackListNode.deserialize(buffer);
case 76:
return DeleteLogicalViewNode.deserialize(buffer);
case 77:
return LogicalViewSchemaScanNode.deserialize(buffer);
case 78:
return AlterLogicalViewNode.deserialize(buffer);
case 79:
return PipeEnrichedInsertNode.deserialize(buffer);
case 80:
return InferenceNode.deserialize(buffer);
case 81:
return LastQueryTransformNode.deserialize(buffer);
case 82:
return TopKNode.deserialize(buffer);
case 83:
return ColumnInjectNode.deserialize(buffer);
case 84:
return PipeEnrichedDeleteDataNode.deserialize(buffer);
case 85:
return PipeEnrichedWritePlanNode.deserialize(buffer);
case 86:
return PipeEnrichedNonWritePlanNode.deserialize(buffer);
case 87:
return InnerTimeJoinNode.deserialize(buffer);
case 88:
return LeftOuterTimeJoinNode.deserialize(buffer);
case 89:
return AggregationMergeSortNode.deserialize(buffer);
case 90:
throw new UnsupportedOperationException("ExplainAnalyzeNode should not be serialized");
case 91:
return PipeOperateSchemaQueueNode.deserialize(buffer);
case 92:
return RawDataAggregationNode.deserialize(buffer);
case 93:
return DeviceRegionScanNode.deserialize(buffer);
case 94:
return TimeseriesRegionScanNode.deserialize(buffer);
case 95:
return ActiveRegionScanMergeNode.deserialize(buffer);
case 96:
return DeviceSchemaFetchScanNode.deserialize(buffer);
case 97:
throw new UnsupportedOperationException(
"You should never see ContinuousSameSearchIndexSeparatorNode in this function, because ContinuousSameSearchIndexSeparatorNode should never be used in network transmission.");
case 902:
return CreateOrUpdateTableDeviceNode.deserialize(buffer);
case 903:
return TableDeviceQueryScanNode.deserialize(buffer);
case 904:
return TableDeviceFetchNode.deserialize(buffer);
case 905:
return DeleteTableDeviceNode.deserialize(buffer);
case 906:
return TableDeviceQueryCountNode.deserialize(buffer);
case 907:
return TableDeviceAttributeUpdateNode.deserialize(buffer);
case 908:
return TableDeviceAttributeCommitUpdateNode.deserialize(buffer);
case 909:
return TableNodeLocationAddNode.deserialize(buffer);
case 910:
return ConstructTableDevicesBlackListNode.deserialize(buffer);
case 911:
return RollbackTableDevicesBlackListNode.deserialize(buffer);
case 912:
return DeleteTableDevicesInBlackListNode.deserialize(buffer);
case 913:
return TableAttributeColumnDropNode.deserialize(buffer);
case 1000:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.DeviceTableScanNode
.deserialize(buffer);
case 1001:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.FilterNode.deserialize(
buffer);
case 1002:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.ProjectNode.deserialize(
buffer);
case 1003:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.OutputNode.deserialize(
buffer);
case 1004:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.LimitNode.deserialize(
buffer);
case 1005:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.OffsetNode.deserialize(
buffer);
case 1006:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.SortNode.deserialize(
buffer);
case 1007:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.MergeSortNode
.deserialize(buffer);
case 1008:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.TopKNode.deserialize(
buffer);
case 1009:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.CollectNode.deserialize(
buffer);
case 1010:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.StreamSortNode
.deserialize(buffer);
case 1011:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.JoinNode.deserialize(
buffer);
case 1012:
return PreviousFillNode.deserialize(buffer);
case 1013:
return LinearFillNode.deserialize(buffer);
case 1014:
return ValueFillNode.deserialize(buffer);
case 1015:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.AggregationNode
.deserialize(buffer);
case 1016:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.AggregationTableScanNode
.deserialize(buffer);
case 1017:
return GapFillNode.deserialize(buffer);
case 1018:
return org.apache.iotdb.db.queryengine.plan.relational.planner.node.ExchangeNode
.deserialize(buffer);
case 1019:
throw new UnsupportedOperationException("ExplainAnalyzeNode should not be deserialized");
case 1020:
return EnforceSingleRowNode.deserialize(buffer);
case 1021:
return InformationSchemaTableScanNode.deserialize(buffer);
case 1022:
return AggregationTreeDeviceViewScanNode.deserialize(buffer);
case 1023:
return TreeAlignedDeviceViewScanNode.deserialize(buffer);
case 1024:
return TreeNonAlignedDeviceViewScanNode.deserialize(buffer);
case 1025:
return SemiJoinNode.deserialize(buffer);
case 1026:
return MarkDistinctNode.deserialize(buffer);
case 1027:
return AssignUniqueId.deserialize(buffer);
case 1028:
return TableFunctionNode.deserialize(buffer);
case 1029:
return TableFunctionProcessorNode.deserialize(buffer);
case 1030:
return GroupNode.deserialize(buffer);
case 2000:
return RelationalInsertTabletNode.deserialize(buffer);
case 2001:
return RelationalInsertRowNode.deserialize(buffer);
case 2002:
return RelationalInsertRowsNode.deserialize(buffer);
case 2003:
return RelationalDeleteDataNode.deserialize(buffer);
default:
throw new IllegalArgumentException("Invalid node type: " + nodeType);
}
}