Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
io.realm.mongodb.sync

Interface ManuallyRecoverUnsyncedChangesStrategy

Implemented interfaces:

Strategy to manually resolve a Client Reset, determined by the error code ErrorCode.CLIENT_RESET .

Un Realm sincronizado puede necesitar reiniciarse porque el Servidor MongoDB Realm encontró un error y tuvo que restaurarse desde una copia de seguridad, o porque ha pasado demasiado tiempo desde que el cliente se conectó al servidor, por lo que el servidor rotó los registros.

The Client Reset thus occurs because the server does not have the full information required to bring the Client fully up to date.

The manual reset process is as follows: the local copy of the Realm is copied into a recovery directory for safekeeping, and then deleted from the original location. The next time the Realm for that URL is opened, the Realm will automatically be re-downloaded from MongoDB Realm, and can be used as normal.

Los datos escritos en el dominio después de que la copia local del dominio se separara de la copia de seguridad remota estarán presentes en la copia de recuperación local del archivo del dominio. El dominio descargado nuevamente contendrá inicialmente solo los datos presentes al momento de la copia de seguridad del dominio en el servidor.

The client reset process can be initiated in one of two ways:

  1. Run ClientResetRequiredError.executeClientReset() manually. All Realm instances must be closed before this method is called.

  2. If Client Reset isn't executed manually, it will automatically be carried out the next time all Realm instances have been closed and re-opened. This will most likely be when the app is restarted.

ADVERTENCIA: Cualquier escritura en el archivo Realm entre esta devolución de llamada y la ejecución del reinicio del cliente no se sincronizará con MongoDB Realm. Dichos cambios solo se incluirán en el archivo respaldado. Por lo tanto, se recomienda cerrar todas las instancias de Realm abiertas lo antes posible.

Modificador y Tipo
Método y descripción

public void

Callback that indicates a Client Reset has happened.

Función de retorno que indica que se realizó un restablecimiento del cliente. Esto debe manejarse lo más rápido posible, ya que cualquier cambio posterior en el Realm no se sincronizará con el servidor y debe trasladarse manualmente del Realm de copia de seguridad al nuevo.

Parámetros

  • session - SyncSession en la que ocurrió este error.

  • error - ClientResetRequiredError: el error específico de restablecimiento del cliente.

Volver

DiscardUnsyncedChangesStrategy

En esta página