src/main/kotlin/org/opensearch/indexmanagement/rollup/RollupMapperService.kt (12 lines): - line 42: // TODO: Validation of fields across source and target indices overwriting existing rollup data - line 44: // TODO: Wrap client calls in retry for transient failures - line 71: // TODO: error handling - line 108: // TODO: Perhaps we can do better than this for mappings... as it'll be dynamic for rest - line 121: // TODO: Add some entry in metadata that will store index -> indexUUID for validated indices - line 167: // TODO: Validate if field is date type: date, date_nanos? - line 170: // TODO: Validate field types for histograms - line 173: // TODO: Validate field types for terms - line 183: // TODO: Validate field type for metrics, - line 253: // TODO: error handling - can RemoteTransportException happen here? - line 254: // TODO: The use of the master transport action UpdateRollupMappingAction will prevent - line 272: // TODO: when this happens is it failure or invalid? src/main/kotlin/org/opensearch/indexmanagement/rollup/RollupMetadataService.kt (10 lines): - line 46: // TODO: Wrap client calls in retry for transient failures - line 171: // TODO: Let User specify their own filter query that is applied to the composite agg search - line 181: .sort(dateHistogram.sourceField, SortOrder.ASC) // TODO: figure out where nulls are sorted - line 206: // TODO: Catching general exceptions for now, can make more granular - line 240: // TODO: Could make this an extension function of DateHistogram and add to some utility file - line 243: // TODO: Make sure the interval string is validated before getting here so we don't get errors - line 266: // TODO: get rid of !! - line 307: // TODO: Catching general exceptions for now, can make more granular - line 388: // TODO: Is seqno/prim and id returned for all? - line 402: // TODO: Catching general exceptions for now, can make more granular src/main/kotlin/org/opensearch/indexmanagement/rollup/RollupRunner.kt (7 lines): - line 187: // TODO: Clean up runner - line 188: // TODO: Scenario: The rollup job is finished, but I (the user) want to redo it all again - line 190: * TODO situations: - line 319: // TODO: Should update metadata and disable job here instead of allowing the rollup to keep going - line 362: // TODO: Verify the seqNo/primterm got updated - line 366: // TODO: Catching general exceptions for now, can make more granular - line 381: // TODO: Source index could be a pattern but it's used at runtime so it could match new indices which weren't matched before src/main/kotlin/org/opensearch/indexmanagement/rollup/RollupSearchService.kt (5 lines): - line 32: // TODO: A cluster level setting to control how many rollups can run at once? Or should we be skipping when cpu/memory/jvm is high? - line 54: // TODO: Failed shouldn't process? How to recover from failed -> how does a user retry a failed rollup - line 63: // TODO: This is mostly used for the check in runJob(), maybe move this out and make that call "metadata == null || shouldProcessRollup" - line 86: return hasNextFullWindow(rollup, metadata) // TODO: Behavior when next full window but 0 docs/afterkey is null - line 91: return Instant.now().isAfter(metadata.continuous!!.nextWindowEndTime.plusMillis(rollup.delay ?: 0)) // TODO: !! src/main/kotlin/org/opensearch/indexmanagement/rollup/action/mapping/TransportUpdateRollupMappingAction.kt (3 lines): - line 85: // TODO: Clean this up - line 88: // TODO: Is schema_version always present? - line 116: // TODO: Does schema_version get overwritten? src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/util/ManagedIndexUtils.kt (2 lines): - line 208: // TODO: Get all ManagedIndices at once or split into searchAfter queries? - line 333: // TODO: Refactor so we can get isLastStep from somewhere besides an instantiated Action class so we can simplify this to a when block src/main/kotlin/org/opensearch/indexmanagement/rollup/model/Rollup.kt (2 lines): - line 216: // TODO: Move this enum to Job Scheduler plugin - line 327: // TODO: Make startTime public in Job Scheduler so we can just directly check the value src/main/kotlin/org/opensearch/indexmanagement/rollup/interceptor/RollupInterceptor.kt (2 lines): - line 220: // TODO: How does this job matching work with roles/security? - line 261: // TODO: revisit - not entirely sure if this is the best thing to do, especially when there is a range query src/main/kotlin/org/opensearch/indexmanagement/rollup/util/RollupUtils.kt (2 lines): - line 189: // TODO: If we have to set this manually for each aggregation builder then it means we could miss new ones settings in the future - line 387: // TODO: Not a fan of this.. but I can't find a way to overwrite the aggregations on the shallow copy or original src/main/kotlin/org/opensearch/indexmanagement/common/model/dimension/Terms.kt (2 lines): - line 61: // TODO: This is incomplete as more than keywords can be grouped as terms, need to figure out the correct way to do this check for now just - line 66: // TODO missing terms field src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/model/ManagedIndexMetaData.kt (2 lines): - line 49: // TODO: Remove this once the step interface is updated to pass in user information. - line 52: // TODO: Remove this once the step interface is updated to pass in thread context information. src/main/kotlin/org/opensearch/indexmanagement/transform/TransformSearchService.kt (1 line): - line 73: // TODO: Should we store the value of the past successful page size (?) detekt.yml (1 line): - line 1: # TODO: Remove this before initial release, only for developmental purposes src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/SkipExecution.kt (1 line): - line 20: // TODO this can be moved to job scheduler, so that all extended plugin src/main/kotlin/org/opensearch/indexmanagement/common/model/dimension/Histogram.kt (1 line): - line 23: // TODO: Verify if offset, missing value, min_doc_count, extended_bounds are usable in Composite histogram source src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/model/action/ActionConfig.kt (1 line): - line 79: // TODO clean up for actionIndex src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/ManagedIndexRunner.kt (1 line): - line 760: // TODO: This is a hacky solution to get the current start time off the job interval as job-scheduler currently does not src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/transport/action/explain/ExplainResponse.kt (1 line): - line 21: // TODO refactor these lists usage to map src/main/kotlin/org/opensearch/indexmanagement/rollup/model/ISMRollup.kt (1 line): - line 37: // TODO: This can be moved to a common place, since this is shared between Rollup and ISMRollup src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/transport/action/indexpolicy/TransportIndexPolicyAction.kt (1 line): - line 228: // TODO should wrap document already exists exception src/main/kotlin/org/opensearch/indexmanagement/transform/TransformRunner.kt (1 line): - line 101: // TODO: Add circuit breaker checks - [cluster healthy, utilization within limit] src/main/kotlin/org/opensearch/indexmanagement/transform/TransformIndexer.kt (1 line): - line 61: // TODO: Read in the actual mappings from the source index and use that src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/model/managedindexmetadata/ActionProperties.kt (1 line): - line 19: // TODO: Create namespaces to group properties together src/main/kotlin/org/opensearch/indexmanagement/rollup/action/get/TransportGetRollupsAction.kt (1 line): - line 70: // TODO: Allow filtering for [continuous, job state, metadata status, targetindex, sourceindex] src/main/kotlin/org/opensearch/indexmanagement/refreshanalyzer/RestRefreshSearchAnalyzerAction.kt (1 line): - line 41: // TODO: Add indicesOptions? src/main/kotlin/org/opensearch/indexmanagement/rollup/action/index/TransportIndexRollupAction.kt (1 line): - line 41: // TODO: Field and mappings validations of source and target index, i.e. reject a histogram agg on example_field if its not possible src/main/kotlin/org/opensearch/indexmanagement/refreshanalyzer/RefreshSearchAnalyzerResponse.kt (1 line): - line 61: // TODO: restrict it for testing src/main/kotlin/org/opensearch/indexmanagement/rollup/actionfilter/FieldCapsFilter.kt (1 line): - line 313: // TODO: Should we throw error instead? src/main/kotlin/org/opensearch/indexmanagement/rollup/action/start/TransportStartRollupAction.kt (1 line): - line 114: // TODO: Should create a transport action to update metadata src/main/kotlin/org/opensearch/indexmanagement/rollup/RollupIndexer.kt (1 line): - line 102: // TODO: Doc counts for aggregations are showing the doc counts of the rollup docs and not the raw data which is expected... src/main/kotlin/org/opensearch/indexmanagement/rollup/actionfilter/SerDeHelper.kt (1 line): - line 20: * TODO: When/if FieldCapabilitiesResponse and other subclasses package private constructors are elevated to public we can remove this logic. src/main/kotlin/org/opensearch/indexmanagement/transform/TransformValidator.kt (1 line): - line 50: * // TODO: When FGAC is supported in transform should check the user has the correct permissions src/main/kotlin/org/opensearch/indexmanagement/indexstatemanagement/migration/MigrationServices.kt (1 line): - line 110: // TODO what if update setting failed, cannot reset to -1/-2 src/main/kotlin/org/opensearch/indexmanagement/transform/action/delete/TransportDeleteTransformsAction.kt (1 line): - line 59: // TODO: if metadata id exists delete the metadata doc else just delete transform src/main/kotlin/org/opensearch/indexmanagement/common/model/dimension/DateHistogram.kt (1 line): - line 108: // TODO: Should we reject all other timezones if they are specified in the query?: aggregationBuilder.timeZone() src/main/kotlin/org/opensearch/indexmanagement/transform/TransformMetadataService.kt (1 line): - line 54: // TODO: Should we attempt to create a new document instead if failed to parse, the only reason this can happen is if someone deleted