Ответ 1
Нет, вы не можете сделать это, используя встроенное управление версиями. Все, что нужно сделать, это сохранить текущий номер версии, чтобы вы не могли использовать обновления.
Если вы хотите сохранить несколько версий, то вам придется реализовать это самостоятельно. В зависимости от того, сколько версий вы хотите сохранить, вы можете использовать три подхода:
Для небольших изменений объема:
1) хранить старые версии в одном документе
{ text: "foo bar",
date: "2011-11-01",
previous: [
{ date: '2011-10-01', content: { text: 'Foo Bar' }},
{ date: '2011-09-01', content: { text: 'Foo-bar!' }},
]
}
Для больших изменений объема:
2) добавьте флаг current
:
{
doc_id: 123,
version: 3,
text: "foo bar",
date: "2011-11-01",
current: true
}
{
doc_id: 123,
version: 2,
text: "Foo Bar",
date: "2011-10-01",
current: false
}
3) То же, что и (2) выше, но сохраните старые версии в отдельном индексе, поэтому сохраняйте свой "живой" индекс, который будет использоваться для большинства ваших запросов, небольших и более эффективных.