If the watch handler fails, e.g., writes made when syncing with a remote server, we should not commit the change and should retry the callback with an exponential backoff. Implement try/catch around the watch callback, and if caught, print an error message and revert the _rev in the cache.