EDIT 2: я столкнулся с точно такой же проблемой а>.
Для репликации RavenDB руководство Raven-Replication-Source очень удобно при попытке определить, какие документы поступили с какого сервера.
Но в сценарии аварийного восстановления может потребоваться убедиться, что идентификатор Raven-Replication-Source Guid экземпляра остается таким же, каким он был до сбоя.
Мой вопрос:
- Можно ли вручную установить Raven-Replication-Source Guid для базы данных?
EDIT (в ответ на комментарий Айенде):
- Это дополнительный вопрос к этому вопросу.
И вот сценарий:
- Клиент использует один главный экземпляр RavenDB для всех операций чтения и записи.
- Этот главный экземпляр реплицируется в горячий резерв.
- При сбое основного экземпляра клиент немедленно переключается на «горячий» резерв благодаря этот параметр конфигурации.
- При ближайшем рассмотрении мы обнаруживаем, что главный экземпляр RavenDB был поврежден и нуждается в очистке.
- When we recreate the master RavenDB instance, replication from the hot spare will only replicate documents that were created on the hot spare.
- Emphasis: The hot spare will not replicate documents that were created on the master (prior to the disaster) back to the master because their Raven-Replication-Source Guid is the master's Raven-Replication-Source Guid.
- И это проблема, потому что, как я уже сказал, главный экземпляр RavenDB был очищен, нам нужно было воссоздать базу данных с нуля, и нам нужно реплицировать все документы из горячего резерва обратно в главный экземпляр.
EDIT 3: ответ @Ayende заставил меня обнаружить, что я решаю не ту проблему. Вот правильный способ решить мою проблему.