This is an automated email from the ASF dual-hosted git repository. vogievetsky pushed a commit to branch fix_concurrent_tasks in repository https://gitbox.apache.org/repos/asf/druid.git
commit fec94e10d9a7ffcd4b771e1d4691c2a8bc862636 Author: Vadim Ogievetsky <[email protected]> AuthorDate: Tue Jan 9 13:04:58 2024 -0800 Update snapshots --- .../compaction-config-dialog.spec.tsx.snap | 2640 ++++++++++---------- 1 file changed, 1312 insertions(+), 1328 deletions(-) diff --git a/web-console/src/dialogs/compaction-config-dialog/__snapshots__/compaction-config-dialog.spec.tsx.snap b/web-console/src/dialogs/compaction-config-dialog/__snapshots__/compaction-config-dialog.spec.tsx.snap index 11949933699..7bb67d84f97 100644 --- a/web-console/src/dialogs/compaction-config-dialog/__snapshots__/compaction-config-dialog.spec.tsx.snap +++ b/web-console/src/dialogs/compaction-config-dialog/__snapshots__/compaction-config-dialog.spec.tsx.snap @@ -15,351 +15,347 @@ exports[`CompactionConfigDialog matches snapshot with compactionConfig (dynamic <div className="content" > - <AutoForm - fields={ - Array [ - Object { - "defaultValue": "P1D", - "info": <p> - The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. - </p>, - "name": "skipOffsetFromLatest", - "suggestions": Array [ - "PT0H", - "PT1H", - "P1D", - "P3D", - ], - "type": "string", - }, - Object { - "info": <p> - For perfect rollup, you should use either - <Unknown> - hashed - </Unknown> - (partitioning based on the hash of dimensions in each row) or - <Unknown> - range - </Unknown> - (based on several dimensions). For best-effort rollup, you should use - <Unknown> - dynamic - </Unknown> - . - </p>, - "label": "Partitioning type", - "name": "tuningConfig.partitionsSpec.type", - "suggestions": Array [ - "dynamic", - "hashed", - "range", - ], - "type": "string", - }, - Object { - "defaultValue": 5000000, - "defined": [Function], - "info": <React.Fragment> - Determines how many rows are in each segment. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - }, - Object { - "defaultValue": 20000000, - "defined": [Function], - "info": <React.Fragment> - Total number of rows in segments waiting for being pushed. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxTotalRows", - "type": "number", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. - </p> - <p> - A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. - </p> - <p> - If - <Unknown> - numShards - </Unknown> - is left unspecified, the Parallel task will determine - - <Unknown> - numShards - </Unknown> - automatically by - <Unknown> - targetRowsPerSegment - </Unknown> - . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "placeholder": "(defaults to 500000)", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - <Unknown> - maxRowsPerSegment - </Unknown> - renamed to - <Unknown> - targetRowsPerSegment - </Unknown> - </p> - <p> - If + <React.Fragment> + <AutoForm + fields={ + Array [ + Object { + "defaultValue": "P1D", + "info": <p> + The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. + </p>, + "name": "skipOffsetFromLatest", + "suggestions": Array [ + "PT0H", + "PT1H", + "P1D", + "P3D", + ], + "type": "string", + }, + Object { + "info": <p> + For perfect rollup, you should use either <Unknown> - numShards + hashed </Unknown> - is left unspecified, the Parallel task will determine - + (partitioning based on the hash of dimensions in each row) or <Unknown> - numShards + range </Unknown> - automatically by + (based on several dimensions). For best-effort rollup, you should use <Unknown> - targetRowsPerSegment + dynamic </Unknown> . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. - </p> - <p> - Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.numShards", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. Leave blank to select all dimensions. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "placeholder": "(all dimensions)", - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <p> - The dimension to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimension", - "required": true, - "type": "string", - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "required": true, - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - maxRowsPerSegment - </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Maximum number of rows to include in a partition. - </p> - <p> - Note that either + </p>, + "label": "Partitioning type", + "name": "tuningConfig.partitionsSpec.type", + "suggestions": Array [ + "dynamic", + "hashed", + "range", + ], + "type": "string", + }, + Object { + "defaultValue": 5000000, + "defined": [Function], + "info": <React.Fragment> + Determines how many rows are in each segment. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + }, + Object { + "defaultValue": 20000000, + "defined": [Function], + "info": <React.Fragment> + Total number of rows in segments waiting for being pushed. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxTotalRows", + "type": "number", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. + </p> + <p> + A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "placeholder": "(defaults to 500000)", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + <Unknown> + maxRowsPerSegment + </Unknown> + renamed to + <Unknown> + targetRowsPerSegment + </Unknown> + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. + </p> + <p> + Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.numShards", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. Leave blank to select all dimensions. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "placeholder": "(all dimensions)", + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <p> + The dimension to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimension", + "required": true, + "type": "string", + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "required": true, + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Maximum number of rows to include in a partition. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defaultValue": false, + "defined": [Function], + "info": <p> + Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. + </p>, + "name": "tuningConfig.partitionsSpec.assumeGrouped", + "type": "boolean", + }, + Object { + "defaultValue": 1, + "info": <React.Fragment> + Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.maxNumConcurrentSubTasks", + "type": "number", + }, + Object { + "defaultValue": -1, + "info": <React.Fragment> + <p> + Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. + </p> + <p> + Default: -1 (unlimited) + </p> + </React.Fragment>, + "min": -1, + "name": "tuningConfig.maxColumnsToMerge", + "type": "number", + }, + Object { + "defaultValue": 10, + "defined": [Function], + "info": <React.Fragment> + Maximum number of merge tasks which can be run at the same time. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.totalNumMergeTasks", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1073741824, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). + </React.Fragment>, + "min": 1000000, + "name": "tuningConfig.splitHintSpec.maxSplitSize", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1000, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( <Unknown> - targetRowsPerSegment + jute.maxbuffer </Unknown> - or + ) and the max packet size in MySQL ( <Unknown> - maxRowsPerSegment + max_allowed_packet </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defaultValue": false, - "defined": [Function], - "info": <p> - Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. - </p>, - "name": "tuningConfig.partitionsSpec.assumeGrouped", - "type": "boolean", - }, - Object { - "defaultValue": 1, - "info": <React.Fragment> - Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.maxNumConcurrentSubTasks", - "type": "number", - }, - Object { - "defaultValue": -1, - "info": <React.Fragment> - <p> - Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. - </p> - <p> - Default: -1 (unlimited) - </p> - </React.Fragment>, - "min": -1, - "name": "tuningConfig.maxColumnsToMerge", - "type": "number", - }, - Object { - "defaultValue": 10, - "defined": [Function], - "info": <React.Fragment> - Maximum number of merge tasks which can be run at the same time. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.totalNumMergeTasks", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1073741824, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). - </React.Fragment>, - "min": 1000000, - "name": "tuningConfig.splitHintSpec.maxSplitSize", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1000, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( - <Unknown> - jute.maxbuffer - </Unknown> - ) and the max packet size in MySQL ( - <Unknown> - max_allowed_packet - </Unknown> - ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. - </React.Fragment>, - "label": "Max num files (segments)", - "min": 1, - "name": "tuningConfig.splitHintSpec.maxNumFiles", - "type": "number", - }, + ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. + </React.Fragment>, + "label": "Max num files (segments)", + "min": 1, + "name": "tuningConfig.splitHintSpec.maxNumFiles", + "type": "number", + }, + ] + } + model={ Object { - "adjustValue": [Function], - "defaultValue": undefined, - "info": <p> - Allows or forbids concurrent compactions. - </p>, - "label": "Allow concurrent compactions (experimental)", - "name": "taskContext.taskLockType", - "type": "boolean", - "valueAdjustment": [Function], - }, - ] - } - model={ - Object { - "dataSource": "test1", - "tuningConfig": Object { - "partitionsSpec": Object { - "type": "dynamic", - }, - }, + "dataSource": "test1", + "tuningConfig": Object { + "partitionsSpec": Object { + "type": "dynamic", + }, + }, + } } - } - onChange={[Function]} - /> + onChange={[Function]} + /> + <Blueprint4.Switch + checked={false} + label="Allow concurrent compactions (experimental)" + onChange={[Function]} + /> + </React.Fragment> </div> <div className="bp4-dialog-footer" @@ -408,351 +404,347 @@ exports[`CompactionConfigDialog matches snapshot with compactionConfig (hashed p <div className="content" > - <AutoForm - fields={ - Array [ - Object { - "defaultValue": "P1D", - "info": <p> - The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. - </p>, - "name": "skipOffsetFromLatest", - "suggestions": Array [ - "PT0H", - "PT1H", - "P1D", - "P3D", - ], - "type": "string", - }, - Object { - "info": <p> - For perfect rollup, you should use either - <Unknown> - hashed - </Unknown> - (partitioning based on the hash of dimensions in each row) or - <Unknown> - range - </Unknown> - (based on several dimensions). For best-effort rollup, you should use - <Unknown> - dynamic - </Unknown> - . - </p>, - "label": "Partitioning type", - "name": "tuningConfig.partitionsSpec.type", - "suggestions": Array [ - "dynamic", - "hashed", - "range", - ], - "type": "string", - }, - Object { - "defaultValue": 5000000, - "defined": [Function], - "info": <React.Fragment> - Determines how many rows are in each segment. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - }, - Object { - "defaultValue": 20000000, - "defined": [Function], - "info": <React.Fragment> - Total number of rows in segments waiting for being pushed. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxTotalRows", - "type": "number", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. - </p> - <p> - A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. - </p> - <p> - If - <Unknown> - numShards - </Unknown> - is left unspecified, the Parallel task will determine - - <Unknown> - numShards - </Unknown> - automatically by - <Unknown> - targetRowsPerSegment - </Unknown> - . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "placeholder": "(defaults to 500000)", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - <Unknown> - maxRowsPerSegment - </Unknown> - renamed to - <Unknown> - targetRowsPerSegment - </Unknown> - </p> - <p> - If + <React.Fragment> + <AutoForm + fields={ + Array [ + Object { + "defaultValue": "P1D", + "info": <p> + The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. + </p>, + "name": "skipOffsetFromLatest", + "suggestions": Array [ + "PT0H", + "PT1H", + "P1D", + "P3D", + ], + "type": "string", + }, + Object { + "info": <p> + For perfect rollup, you should use either <Unknown> - numShards + hashed </Unknown> - is left unspecified, the Parallel task will determine - + (partitioning based on the hash of dimensions in each row) or <Unknown> - numShards + range </Unknown> - automatically by + (based on several dimensions). For best-effort rollup, you should use <Unknown> - targetRowsPerSegment + dynamic </Unknown> . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. - </p> - <p> - Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.numShards", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. Leave blank to select all dimensions. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "placeholder": "(all dimensions)", - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <p> - The dimension to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimension", - "required": true, - "type": "string", - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "required": true, - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - maxRowsPerSegment - </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Maximum number of rows to include in a partition. - </p> - <p> - Note that either + </p>, + "label": "Partitioning type", + "name": "tuningConfig.partitionsSpec.type", + "suggestions": Array [ + "dynamic", + "hashed", + "range", + ], + "type": "string", + }, + Object { + "defaultValue": 5000000, + "defined": [Function], + "info": <React.Fragment> + Determines how many rows are in each segment. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + }, + Object { + "defaultValue": 20000000, + "defined": [Function], + "info": <React.Fragment> + Total number of rows in segments waiting for being pushed. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxTotalRows", + "type": "number", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. + </p> + <p> + A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "placeholder": "(defaults to 500000)", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + <Unknown> + maxRowsPerSegment + </Unknown> + renamed to + <Unknown> + targetRowsPerSegment + </Unknown> + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. + </p> + <p> + Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.numShards", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. Leave blank to select all dimensions. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "placeholder": "(all dimensions)", + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <p> + The dimension to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimension", + "required": true, + "type": "string", + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "required": true, + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Maximum number of rows to include in a partition. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defaultValue": false, + "defined": [Function], + "info": <p> + Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. + </p>, + "name": "tuningConfig.partitionsSpec.assumeGrouped", + "type": "boolean", + }, + Object { + "defaultValue": 1, + "info": <React.Fragment> + Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.maxNumConcurrentSubTasks", + "type": "number", + }, + Object { + "defaultValue": -1, + "info": <React.Fragment> + <p> + Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. + </p> + <p> + Default: -1 (unlimited) + </p> + </React.Fragment>, + "min": -1, + "name": "tuningConfig.maxColumnsToMerge", + "type": "number", + }, + Object { + "defaultValue": 10, + "defined": [Function], + "info": <React.Fragment> + Maximum number of merge tasks which can be run at the same time. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.totalNumMergeTasks", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1073741824, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). + </React.Fragment>, + "min": 1000000, + "name": "tuningConfig.splitHintSpec.maxSplitSize", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1000, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( <Unknown> - targetRowsPerSegment + jute.maxbuffer </Unknown> - or + ) and the max packet size in MySQL ( <Unknown> - maxRowsPerSegment + max_allowed_packet </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defaultValue": false, - "defined": [Function], - "info": <p> - Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. - </p>, - "name": "tuningConfig.partitionsSpec.assumeGrouped", - "type": "boolean", - }, - Object { - "defaultValue": 1, - "info": <React.Fragment> - Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.maxNumConcurrentSubTasks", - "type": "number", - }, - Object { - "defaultValue": -1, - "info": <React.Fragment> - <p> - Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. - </p> - <p> - Default: -1 (unlimited) - </p> - </React.Fragment>, - "min": -1, - "name": "tuningConfig.maxColumnsToMerge", - "type": "number", - }, - Object { - "defaultValue": 10, - "defined": [Function], - "info": <React.Fragment> - Maximum number of merge tasks which can be run at the same time. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.totalNumMergeTasks", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1073741824, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). - </React.Fragment>, - "min": 1000000, - "name": "tuningConfig.splitHintSpec.maxSplitSize", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1000, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( - <Unknown> - jute.maxbuffer - </Unknown> - ) and the max packet size in MySQL ( - <Unknown> - max_allowed_packet - </Unknown> - ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. - </React.Fragment>, - "label": "Max num files (segments)", - "min": 1, - "name": "tuningConfig.splitHintSpec.maxNumFiles", - "type": "number", - }, + ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. + </React.Fragment>, + "label": "Max num files (segments)", + "min": 1, + "name": "tuningConfig.splitHintSpec.maxNumFiles", + "type": "number", + }, + ] + } + model={ Object { - "adjustValue": [Function], - "defaultValue": undefined, - "info": <p> - Allows or forbids concurrent compactions. - </p>, - "label": "Allow concurrent compactions (experimental)", - "name": "taskContext.taskLockType", - "type": "boolean", - "valueAdjustment": [Function], - }, - ] - } - model={ - Object { - "dataSource": "test1", - "tuningConfig": Object { - "partitionsSpec": Object { - "type": "hashed", - }, - }, + "dataSource": "test1", + "tuningConfig": Object { + "partitionsSpec": Object { + "type": "hashed", + }, + }, + } } - } - onChange={[Function]} - /> + onChange={[Function]} + /> + <Blueprint4.Switch + checked={false} + label="Allow concurrent compactions (experimental)" + onChange={[Function]} + /> + </React.Fragment> </div> <div className="bp4-dialog-footer" @@ -801,351 +793,347 @@ exports[`CompactionConfigDialog matches snapshot with compactionConfig (range pa <div className="content" > - <AutoForm - fields={ - Array [ - Object { - "defaultValue": "P1D", - "info": <p> - The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. - </p>, - "name": "skipOffsetFromLatest", - "suggestions": Array [ - "PT0H", - "PT1H", - "P1D", - "P3D", - ], - "type": "string", - }, - Object { - "info": <p> - For perfect rollup, you should use either - <Unknown> - hashed - </Unknown> - (partitioning based on the hash of dimensions in each row) or - <Unknown> - range - </Unknown> - (based on several dimensions). For best-effort rollup, you should use - <Unknown> - dynamic - </Unknown> - . - </p>, - "label": "Partitioning type", - "name": "tuningConfig.partitionsSpec.type", - "suggestions": Array [ - "dynamic", - "hashed", - "range", - ], - "type": "string", - }, - Object { - "defaultValue": 5000000, - "defined": [Function], - "info": <React.Fragment> - Determines how many rows are in each segment. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - }, - Object { - "defaultValue": 20000000, - "defined": [Function], - "info": <React.Fragment> - Total number of rows in segments waiting for being pushed. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxTotalRows", - "type": "number", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. - </p> - <p> - A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. - </p> - <p> - If - <Unknown> - numShards - </Unknown> - is left unspecified, the Parallel task will determine - - <Unknown> - numShards - </Unknown> - automatically by - <Unknown> - targetRowsPerSegment - </Unknown> - . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "placeholder": "(defaults to 500000)", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - <Unknown> - maxRowsPerSegment - </Unknown> - renamed to - <Unknown> - targetRowsPerSegment - </Unknown> - </p> - <p> - If + <React.Fragment> + <AutoForm + fields={ + Array [ + Object { + "defaultValue": "P1D", + "info": <p> + The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. + </p>, + "name": "skipOffsetFromLatest", + "suggestions": Array [ + "PT0H", + "PT1H", + "P1D", + "P3D", + ], + "type": "string", + }, + Object { + "info": <p> + For perfect rollup, you should use either <Unknown> - numShards + hashed </Unknown> - is left unspecified, the Parallel task will determine - + (partitioning based on the hash of dimensions in each row) or <Unknown> - numShards + range </Unknown> - automatically by + (based on several dimensions). For best-effort rollup, you should use <Unknown> - targetRowsPerSegment + dynamic </Unknown> . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. - </p> - <p> - Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.numShards", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. Leave blank to select all dimensions. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "placeholder": "(all dimensions)", - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <p> - The dimension to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimension", - "required": true, - "type": "string", - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "required": true, - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - maxRowsPerSegment - </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Maximum number of rows to include in a partition. - </p> - <p> - Note that either + </p>, + "label": "Partitioning type", + "name": "tuningConfig.partitionsSpec.type", + "suggestions": Array [ + "dynamic", + "hashed", + "range", + ], + "type": "string", + }, + Object { + "defaultValue": 5000000, + "defined": [Function], + "info": <React.Fragment> + Determines how many rows are in each segment. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + }, + Object { + "defaultValue": 20000000, + "defined": [Function], + "info": <React.Fragment> + Total number of rows in segments waiting for being pushed. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxTotalRows", + "type": "number", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. + </p> + <p> + A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "placeholder": "(defaults to 500000)", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + <Unknown> + maxRowsPerSegment + </Unknown> + renamed to + <Unknown> + targetRowsPerSegment + </Unknown> + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. + </p> + <p> + Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.numShards", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. Leave blank to select all dimensions. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "placeholder": "(all dimensions)", + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <p> + The dimension to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimension", + "required": true, + "type": "string", + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "required": true, + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Maximum number of rows to include in a partition. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defaultValue": false, + "defined": [Function], + "info": <p> + Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. + </p>, + "name": "tuningConfig.partitionsSpec.assumeGrouped", + "type": "boolean", + }, + Object { + "defaultValue": 1, + "info": <React.Fragment> + Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.maxNumConcurrentSubTasks", + "type": "number", + }, + Object { + "defaultValue": -1, + "info": <React.Fragment> + <p> + Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. + </p> + <p> + Default: -1 (unlimited) + </p> + </React.Fragment>, + "min": -1, + "name": "tuningConfig.maxColumnsToMerge", + "type": "number", + }, + Object { + "defaultValue": 10, + "defined": [Function], + "info": <React.Fragment> + Maximum number of merge tasks which can be run at the same time. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.totalNumMergeTasks", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1073741824, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). + </React.Fragment>, + "min": 1000000, + "name": "tuningConfig.splitHintSpec.maxSplitSize", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1000, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( <Unknown> - targetRowsPerSegment + jute.maxbuffer </Unknown> - or + ) and the max packet size in MySQL ( <Unknown> - maxRowsPerSegment + max_allowed_packet </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defaultValue": false, - "defined": [Function], - "info": <p> - Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. - </p>, - "name": "tuningConfig.partitionsSpec.assumeGrouped", - "type": "boolean", - }, - Object { - "defaultValue": 1, - "info": <React.Fragment> - Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.maxNumConcurrentSubTasks", - "type": "number", - }, - Object { - "defaultValue": -1, - "info": <React.Fragment> - <p> - Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. - </p> - <p> - Default: -1 (unlimited) - </p> - </React.Fragment>, - "min": -1, - "name": "tuningConfig.maxColumnsToMerge", - "type": "number", - }, - Object { - "defaultValue": 10, - "defined": [Function], - "info": <React.Fragment> - Maximum number of merge tasks which can be run at the same time. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.totalNumMergeTasks", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1073741824, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). - </React.Fragment>, - "min": 1000000, - "name": "tuningConfig.splitHintSpec.maxSplitSize", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1000, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( - <Unknown> - jute.maxbuffer - </Unknown> - ) and the max packet size in MySQL ( - <Unknown> - max_allowed_packet - </Unknown> - ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. - </React.Fragment>, - "label": "Max num files (segments)", - "min": 1, - "name": "tuningConfig.splitHintSpec.maxNumFiles", - "type": "number", - }, + ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. + </React.Fragment>, + "label": "Max num files (segments)", + "min": 1, + "name": "tuningConfig.splitHintSpec.maxNumFiles", + "type": "number", + }, + ] + } + model={ Object { - "adjustValue": [Function], - "defaultValue": undefined, - "info": <p> - Allows or forbids concurrent compactions. - </p>, - "label": "Allow concurrent compactions (experimental)", - "name": "taskContext.taskLockType", - "type": "boolean", - "valueAdjustment": [Function], - }, - ] - } - model={ - Object { - "dataSource": "test1", - "tuningConfig": Object { - "partitionsSpec": Object { - "type": "range", - }, - }, + "dataSource": "test1", + "tuningConfig": Object { + "partitionsSpec": Object { + "type": "range", + }, + }, + } } - } - onChange={[Function]} - /> + onChange={[Function]} + /> + <Blueprint4.Switch + checked={false} + label="Allow concurrent compactions (experimental)" + onChange={[Function]} + /> + </React.Fragment> </div> <div className="bp4-dialog-footer" @@ -1194,351 +1182,347 @@ exports[`CompactionConfigDialog matches snapshot without compactionConfig 1`] = <div className="content" > - <AutoForm - fields={ - Array [ - Object { - "defaultValue": "P1D", - "info": <p> - The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. - </p>, - "name": "skipOffsetFromLatest", - "suggestions": Array [ - "PT0H", - "PT1H", - "P1D", - "P3D", - ], - "type": "string", - }, - Object { - "info": <p> - For perfect rollup, you should use either - <Unknown> - hashed - </Unknown> - (partitioning based on the hash of dimensions in each row) or - <Unknown> - range - </Unknown> - (based on several dimensions). For best-effort rollup, you should use - <Unknown> - dynamic - </Unknown> - . - </p>, - "label": "Partitioning type", - "name": "tuningConfig.partitionsSpec.type", - "suggestions": Array [ - "dynamic", - "hashed", - "range", - ], - "type": "string", - }, - Object { - "defaultValue": 5000000, - "defined": [Function], - "info": <React.Fragment> - Determines how many rows are in each segment. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - }, - Object { - "defaultValue": 20000000, - "defined": [Function], - "info": <React.Fragment> - Total number of rows in segments waiting for being pushed. - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxTotalRows", - "type": "number", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. - </p> - <p> - A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. - </p> - <p> - If - <Unknown> - numShards - </Unknown> - is left unspecified, the Parallel task will determine - - <Unknown> - numShards - </Unknown> - automatically by - <Unknown> - targetRowsPerSegment - </Unknown> - . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "placeholder": "(defaults to 500000)", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - <Unknown> - maxRowsPerSegment - </Unknown> - renamed to - <Unknown> - targetRowsPerSegment - </Unknown> - </p> - <p> - If + <React.Fragment> + <AutoForm + fields={ + Array [ + Object { + "defaultValue": "P1D", + "info": <p> + The offset for searching segments to be compacted. Strongly recommended to set for realtime dataSources. + </p>, + "name": "skipOffsetFromLatest", + "suggestions": Array [ + "PT0H", + "PT1H", + "P1D", + "P3D", + ], + "type": "string", + }, + Object { + "info": <p> + For perfect rollup, you should use either <Unknown> - numShards + hashed </Unknown> - is left unspecified, the Parallel task will determine - + (partitioning based on the hash of dimensions in each row) or <Unknown> - numShards + range </Unknown> - automatically by + (based on several dimensions). For best-effort rollup, you should use <Unknown> - targetRowsPerSegment + dynamic </Unknown> . - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. - </p> - <p> - Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - numShards - </Unknown> - will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.numShards", - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. Leave blank to select all dimensions. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "placeholder": "(all dimensions)", - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <p> - The dimension to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimension", - "required": true, - "type": "string", - }, - Object { - "defined": [Function], - "info": <p> - The dimensions to partition on. - </p>, - "name": "tuningConfig.partitionsSpec.partitionDimensions", - "required": true, - "type": "string-array", - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. - </p> - <p> - Note that either - <Unknown> - targetRowsPerSegment - </Unknown> - or - <Unknown> - maxRowsPerSegment - </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defined": [Function], - "info": <React.Fragment> - <p> - Maximum number of rows to include in a partition. - </p> - <p> - Note that either + </p>, + "label": "Partitioning type", + "name": "tuningConfig.partitionsSpec.type", + "suggestions": Array [ + "dynamic", + "hashed", + "range", + ], + "type": "string", + }, + Object { + "defaultValue": 5000000, + "defined": [Function], + "info": <React.Fragment> + Determines how many rows are in each segment. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + }, + Object { + "defaultValue": 20000000, + "defined": [Function], + "info": <React.Fragment> + Total number of rows in segments waiting for being pushed. + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxTotalRows", + "type": "number", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If the segments generated are a sub-optimal size for the requested partition dimensions, consider setting this field. + </p> + <p> + A target row count for each partition. Each partition will have a row count close to the target assuming evenly distributed keys. Defaults to 5 million if numShards is null. + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "placeholder": "(defaults to 500000)", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + <Unknown> + maxRowsPerSegment + </Unknown> + renamed to + <Unknown> + targetRowsPerSegment + </Unknown> + </p> + <p> + If + <Unknown> + numShards + </Unknown> + is left unspecified, the Parallel task will determine + + <Unknown> + numShards + </Unknown> + automatically by + <Unknown> + targetRowsPerSegment + </Unknown> + . + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + If you know the optimal number of shards and want to speed up the time it takes for compaction to run, set this field. + </p> + <p> + Directly specify the number of shards to create. If this is specified and 'intervals' is specified in the granularitySpec, the index task can skip the determine intervals/partitions pass through the data. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + numShards + </Unknown> + will be used to evenly distribute rows across partitions and find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.numShards", + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. Leave blank to select all dimensions. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "placeholder": "(all dimensions)", + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <p> + The dimension to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimension", + "required": true, + "type": "string", + }, + Object { + "defined": [Function], + "info": <p> + The dimensions to partition on. + </p>, + "name": "tuningConfig.partitionsSpec.partitionDimensions", + "required": true, + "type": "string-array", + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Target number of rows to include in a partition, should be a number that targets segments of 500MB~1GB. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.targetRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defined": [Function], + "info": <React.Fragment> + <p> + Maximum number of rows to include in a partition. + </p> + <p> + Note that either + <Unknown> + targetRowsPerSegment + </Unknown> + or + <Unknown> + maxRowsPerSegment + </Unknown> + will be used to find the best partitioning. Leave blank to show all properties. + </p> + </React.Fragment>, + "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", + "required": [Function], + "type": "number", + "zeroMeansUndefined": true, + }, + Object { + "defaultValue": false, + "defined": [Function], + "info": <p> + Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. + </p>, + "name": "tuningConfig.partitionsSpec.assumeGrouped", + "type": "boolean", + }, + Object { + "defaultValue": 1, + "info": <React.Fragment> + Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.maxNumConcurrentSubTasks", + "type": "number", + }, + Object { + "defaultValue": -1, + "info": <React.Fragment> + <p> + Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. + </p> + <p> + Default: -1 (unlimited) + </p> + </React.Fragment>, + "min": -1, + "name": "tuningConfig.maxColumnsToMerge", + "type": "number", + }, + Object { + "defaultValue": 10, + "defined": [Function], + "info": <React.Fragment> + Maximum number of merge tasks which can be run at the same time. + </React.Fragment>, + "min": 1, + "name": "tuningConfig.totalNumMergeTasks", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1073741824, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). + </React.Fragment>, + "min": 1000000, + "name": "tuningConfig.splitHintSpec.maxSplitSize", + "type": "number", + }, + Object { + "adjustment": [Function], + "defaultValue": 1000, + "hideInMore": true, + "info": <React.Fragment> + Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( <Unknown> - targetRowsPerSegment + jute.maxbuffer </Unknown> - or + ) and the max packet size in MySQL ( <Unknown> - maxRowsPerSegment + max_allowed_packet </Unknown> - will be used to find the best partitioning. Leave blank to show all properties. - </p> - </React.Fragment>, - "name": "tuningConfig.partitionsSpec.maxRowsPerSegment", - "required": [Function], - "type": "number", - "zeroMeansUndefined": true, - }, - Object { - "defaultValue": false, - "defined": [Function], - "info": <p> - Assume that input data has already been grouped on time and dimensions. Ingestion will run faster, but may choose sub-optimal partitions if this assumption is violated. - </p>, - "name": "tuningConfig.partitionsSpec.assumeGrouped", - "type": "boolean", - }, - Object { - "defaultValue": 1, - "info": <React.Fragment> - Maximum number of tasks which can be run at the same time. The supervisor task would spawn worker tasks up to maxNumConcurrentSubTasks regardless of the available task slots. If this value is set to 1, the supervisor task processes data ingestion on its own instead of spawning worker tasks. If this value is set to too large, too many worker tasks can be created which might block other ingestion. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.maxNumConcurrentSubTasks", - "type": "number", - }, - Object { - "defaultValue": -1, - "info": <React.Fragment> - <p> - Limit of the number of segments to merge in a single phase when merging segments for publishing. This limit affects the total number of columns present in a set of segments to merge. If the limit is exceeded, segment merging occurs in multiple phases. Druid merges at least 2 segments per phase, regardless of this setting. - </p> - <p> - Default: -1 (unlimited) - </p> - </React.Fragment>, - "min": -1, - "name": "tuningConfig.maxColumnsToMerge", - "type": "number", - }, - Object { - "defaultValue": 10, - "defined": [Function], - "info": <React.Fragment> - Maximum number of merge tasks which can be run at the same time. - </React.Fragment>, - "min": 1, - "name": "tuningConfig.totalNumMergeTasks", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1073741824, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of bytes of input segments to process in a single task. If a single segment is larger than this number, it will be processed by itself in a single task (input segments are never split across tasks). - </React.Fragment>, - "min": 1000000, - "name": "tuningConfig.splitHintSpec.maxSplitSize", - "type": "number", - }, - Object { - "adjustment": [Function], - "defaultValue": 1000, - "hideInMore": true, - "info": <React.Fragment> - Maximum number of input segments to process in a single subtask. This limit is to avoid task failures when the ingestion spec is too long. There are two known limits on the max size of serialized ingestion spec, i.e., the max ZNode size in ZooKeeper ( - <Unknown> - jute.maxbuffer - </Unknown> - ) and the max packet size in MySQL ( - <Unknown> - max_allowed_packet - </Unknown> - ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. - </React.Fragment>, - "label": "Max num files (segments)", - "min": 1, - "name": "tuningConfig.splitHintSpec.maxNumFiles", - "type": "number", - }, + ). These can make ingestion tasks fail if the serialized ingestion spec size hits one of them. + </React.Fragment>, + "label": "Max num files (segments)", + "min": 1, + "name": "tuningConfig.splitHintSpec.maxNumFiles", + "type": "number", + }, + ] + } + model={ Object { - "adjustValue": [Function], - "defaultValue": undefined, - "info": <p> - Allows or forbids concurrent compactions. - </p>, - "label": "Allow concurrent compactions (experimental)", - "name": "taskContext.taskLockType", - "type": "boolean", - "valueAdjustment": [Function], - }, - ] - } - model={ - Object { - "dataSource": "test1", - "tuningConfig": Object { - "partitionsSpec": Object { - "type": "dynamic", - }, - }, + "dataSource": "test1", + "tuningConfig": Object { + "partitionsSpec": Object { + "type": "dynamic", + }, + }, + } } - } - onChange={[Function]} - /> + onChange={[Function]} + /> + <Blueprint4.Switch + checked={false} + label="Allow concurrent compactions (experimental)" + onChange={[Function]} + /> + </React.Fragment> </div> <div className="bp4-dialog-footer" --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
