У меня есть индекс, например, профили.Вот пример схемы:
module.exports = {
profiles: {
properties: {
id: {
type: 'long'
},
indexedAt: {
type: 'date',
},
createdAt: {
type: 'date',
},
updatedAt: {
type: 'date',
},
profile: {
type: 'object',
properties: {
id: {
type: 'long'
},
createdAt: {
type: 'date',
},
updatedAt: {
type: 'date',
},
name: {
type: 'text',
fields: {
folded: {
type: "text",
analyzer: "folding"
},
sorted: {
type: "text",
fielddata: true,
analyzer: "sorting"
}
}
}
}
}
Для создания снимка я использую этот код:
const repository ='reponame';
const snapshotName = `snapshotName`
const opts = {snapshot: snapshotName, repository, waitForCompletion: true}
try {
const repositoryResult = await this.client.snapshot.create(opts);
console.log(repositoryResult);
return;
} catch (ex) {
throw ex;
}
И снимок создан за несколько минут.И для восстановления из него я использую этот код:
const repository ='reponame';
const snapshotName = 'snapshotname';
const opts = {snapshot: snapshotName, repository}
try {
const repositoryResult = await this.client.snapshot.restore(opts);
console.log('Result: ', repositoryResult);
} catch (ex) {
throw ex;
}
И похоже, что он восстанавливает все документы, я их вижу, но по какой-то причине сопоставления для поля имени изменились, и теперь выглядит так:
"name" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
Так почему же это происходит и как я могу изменить его обратно на свое отображение из моей схемы?UPD: как я вижу, моментальный снимок вообще не восстанавливает мои настройки, поэтому даже если я попытаюсь обновить сопоставления - произойдет сбой с ошибкой
[mapper_parsing_exception] analyzer [folding] not found for field [folded]