Частичные сферы - почему и когда они создаются?

Я использую Realm и создаю мобильное приложение Swift. Я действительно изо всех сил пытаюсь понять, почему и когда создаются Частичные сферы.

Вот мой сценарий:

пользователь входит в приложение и выводится на первый контроллер представления.

В первом представлении контроллер загрузил, я выполняю запрос для получения текущего пользователя, подписываюсь на запрос и добавляю наблюдателя, чтобы сообщить мне, когда данные синхронизируются:

let currentUserArr = realm.objects(DBUser.self).filter("id == %@", userId)
self.subscription = currentUserArr.subscribe(named: "current user")
self.subscriptionToken = self.subscription.observe(\.state, options: .initial) { state in
            switch state {
            case .creating:
                print("creating")
            case .pending:
                print("pending")
            case .complete:
                print("complete")
                self.artist = currentUserArr[0]
            case .invalidated:
                print("invalidated")
            case .error(let err):
                //seal.reject(err)
                print(err)
            }
}

Это имеет смысл, что если я проверю Облако областей, у меня будет новая частичная область, созданная с путем как:

/ ДБ /__ частичной /DyeOy3OR4sNsqMi2OmDQQEzUa8F3/~7f11cf52

Однако здесь начинается мое замешательство. Я выхожу из системы Я снова захожу в систему и снова выполняю приведенный выше код. Я думал, что Realm просто повторно использует уже созданную частичку, но вместо этого создает совершенно новую частичку.

/ ДБ /__ частичной /DyeOy3OR4sNsqMi2OmDQQEzUa8F3/~8bc7bc49

Это из-за намерения, или я должен как-то повторно использовать партиалы вместо того, чтобы создавать новую каждый раз, когда выполняется запрос (даже если он выполняется одним и тем же пользователем)?

Я также опубликовал на форумах Realm:

https://forums.realm.io/t/realm-platform-realm-path-partial-s/2833

1 ответ

Я не верю, что на самом деле выходил из системы текущий пользователь синхронизации. После дальнейшего тестирования, как только я вышел из системы и снова вошел в систему, существующее частичное снова использовалось. Это не проблема.

Другие вопросы по тегам