@@ -172,76 +172,76 @@ message FulltextIndexSettings {
172172 // Represents text analyzers settings
173173 message Analyzers {
174174 // See Tokenizer enum
175- Tokenizer tokenizer = 1 ;
175+ optional Tokenizer tokenizer = 1 ;
176176
177177 // Language used for language-sensitive operations like stopword filtering
178178 // Example: language = "english"
179179 // By default is not specified and no language-specific logic is applied
180- string language = 2 ;
180+ optional string language = 2 ;
181181
182182 // Whether to convert tokens to lowercase
183183 // Example:
184184 // Token: "Quick"
185185 // Output: "quick"
186- bool use_filter_lowercase = 100 ;
186+ optional bool use_filter_lowercase = 100 ;
187187
188188 // Whether to remove common stopwords like "the", "a", "is"
189189 // Example: language = "english"
190190 // Tokens: ["the", "quick", "brown"]
191191 // Output: ["quick", "brown"]
192- bool use_filter_stopwords = 110 ;
192+ optional bool use_filter_stopwords = 110 ;
193193
194194 // Whether to apply character n-gram indexing to each token
195195 // Must be used with filter_ngram_min_length and filter_ngram_max_length
196196 // Example: filter_ngram_min_length = 3, filter_ngram_max_length = 4
197197 // Token: "search"
198198 // Output: ["sea", "ear", "arc", "rch", "sear", "earc", "arch"]
199- bool use_filter_ngram = 120 ;
199+ optional bool use_filter_ngram = 120 ;
200200
201201 // Whether to apply edge n-gram indexing (prefix-based) to each token
202202 // Used with filter_ngram_min_length and filter_ngram_max_length
203203 // Example: filter_ngram_min_length = 3, filter_ngram_max_length = 4
204204 // Token: "search"
205205 // Output: ["sea", "sear"]
206- bool use_filter_edge_ngram = 121 ;
206+ optional bool use_filter_edge_ngram = 121 ;
207207
208208 // Minimum length of n-grams to generate (inclusive)
209209 // Must be used with use_filter_ngram or use_filter_edge_ngram
210210 // Default value is 3
211- int32 filter_ngram_min_length = 122 [(Ydb.value ) = ">= 0" ];
211+ optional int32 filter_ngram_min_length = 122 [(Ydb.value ) = ">= 0" ];
212212
213213 // Maximum length of n-grams to generate (inclusive)
214214 // Must be used with use_filter_ngram or use_filter_edge_ngram
215215 // Default value is 4
216- int32 filter_ngram_max_length = 123 [(Ydb.value ) = ">= 0" ];
216+ optional int32 filter_ngram_max_length = 123 [(Ydb.value ) = ">= 0" ];
217217
218218 // Whether to filter tokens by their length
219219 // Must be used with filter_length_min or filter_length_max
220220 // Example: filter_length_min = 4, filter_length_max = 6
221221 // Tokens: ["foo", "fooba", "foobar", "foobarbaz"]
222222 // Output: ["fooba", "foobar"]
223- bool use_filter_length = 130 ;
223+ optional bool use_filter_length = 130 ;
224224
225225 // Minimum token length to keep (inclusive)
226226 // Must be used with use_filter_length
227- int32 filter_length_min = 131 [(Ydb.value ) = ">= 0" ];
227+ optional int32 filter_length_min = 131 [(Ydb.value ) = ">= 0" ];
228228
229229 // Maximum token length to keep (inclusive)
230230 // Must be used with use_filter_length
231- int32 filter_length_max = 132 [(Ydb.value ) = ">= 0" ];
231+ optional int32 filter_length_max = 132 [(Ydb.value ) = ">= 0" ];
232232 }
233233
234234 // Represents text analyzers settings for a specific column
235235 message ColumnAnalyzers {
236236 // Name of the column to be indexed
237- string column = 1 ;
237+ optional string column = 1 ;
238238
239239 // Analyzer settings specific to this column
240240 Analyzers analyzers = 2 ;
241241 }
242242
243243 // See Layout enum
244- Layout layout = 1 ;
244+ optional Layout layout = 1 ;
245245
246246 // List of columns and their fulltext settings
247247 // Currently, this list should contain a single entry
0 commit comments