-
Notifications
You must be signed in to change notification settings - Fork 99
Open
Labels
Description
Firstly reported in elastic/elasticsearch-js/issues/2000
🐛 Wrong type
According to the documentation, to revert an index setting to the default value we should set its value to null.
The current type definition for IndexSettings doesn't allow null
as a valid value.
elasticsearch-specification/specification/indices/_types/IndexSettings.ts
Lines 69 to 168 in f16d22a
/** | |
* @doc_id index-modules-settings | |
*/ | |
export class IndexSettings | |
implements AdditionalProperties<string, UserDefinedValue> | |
{ | |
index?: IndexSettings | |
mode?: string | |
routing_path?: string | string[] | |
soft_deletes?: SoftDeletes | |
sort?: IndexSegmentSort | |
/** @server_default 1 */ | |
number_of_shards?: integer | string // TODO: should be only int | |
/** @server_default 0 */ | |
number_of_replicas?: integer | string // TODO: should be only int | |
number_of_routing_shards?: integer | |
/** @server_default false */ | |
check_on_startup?: IndexCheckOnStartup | |
/** @server_default LZ4 */ | |
codec?: string | |
/** @server_default 1 */ | |
routing_partition_size?: Stringified<integer> | |
/** @server_default true */ | |
load_fixed_bitset_filters_eagerly?: boolean | |
/** @server_default false */ | |
hidden?: boolean | string // TODO should be bool only | |
/** @server_default false */ | |
auto_expand_replicas?: string | |
merge?: Merge | |
search?: SettingsSearch | |
/** @server_default 1s */ | |
refresh_interval?: Duration | |
/** @server_default 10000 */ | |
max_result_window?: integer | |
/** @server_default 100 */ | |
max_inner_result_window?: integer | |
/** @server_default 10000 */ | |
max_rescore_window?: integer | |
/** @server_default 100 */ | |
max_docvalue_fields_search?: integer | |
/** @server_default 32 */ | |
max_script_fields?: integer | |
/** @server_default 1 */ | |
max_ngram_diff?: integer | |
/** @server_default 3 */ | |
max_shingle_diff?: integer | |
blocks?: IndexSettingBlocks | |
max_refresh_listeners?: integer | |
/** | |
* Settings to define analyzers, tokenizers, token filters and character filters. | |
*/ | |
analyze?: SettingsAnalyze | |
highlight?: SettingsHighlight | |
/** @server_default 65536 */ | |
max_terms_count?: integer | |
/** @server_default 1000 */ | |
max_regex_length?: integer | |
routing?: IndexRouting | |
/** @server_default 60s */ | |
gc_deletes?: Duration | |
/** @server_default _none */ | |
default_pipeline?: PipelineName | |
/** @server_default _none */ | |
final_pipeline?: PipelineName | |
lifecycle?: IndexSettingsLifecycle | |
provided_name?: Name | |
creation_date?: Stringified<EpochTime<UnitMillis>> | |
creation_date_string?: DateTime | |
uuid?: Uuid | |
version?: IndexVersioning | |
verified_before_close?: boolean | string | |
format?: string | integer | |
max_slices_per_scroll?: integer | |
translog?: Translog | |
query_string?: SettingsQueryString | |
priority?: integer | string | |
top_metrics_max_size?: integer | |
analysis?: IndexSettingsAnalysis | |
settings?: IndexSettings | |
time_series?: IndexSettingsTimeSeries | |
shards?: integer | |
queries?: Queries | |
/** | |
* Configure custom similarity settings to customize how search results are scored. | |
*/ | |
similarity?: SettingsSimilarity | |
/** | |
* Enable or disable dynamic mapping for an index. | |
*/ | |
mapping?: MappingLimitSettings | |
'indexing.slowlog'?: IndexingSlowlogSettings | |
/** | |
* Configure indexing back pressure limits. | |
*/ | |
indexing_pressure?: IndexingPressure | |
/** | |
* The store module allows you to control how index data is stored and accessed on disk. | |
*/ | |
store?: Storage | |
} |
Definition
Every property defined in IndexSettings should be nullable.
/**
* @doc_id index-modules-settings
*/
export class IndexSettings
implements AdditionalProperties<string, UserDefinedValue>
{
- <prop_name>?: <allowed_type>
+ <prop_name>?: <allowed_type> | null
}