1

Firebase 子节点在随机时间被随机删除

我有一个 firebase 项目,每个节点有很多子节点(在 100k+ 范围内),它使用实时数据库。问题是,有时,完全随机地,很少有子项目被简单地删除。

例如,给定以下数据库结构:

**Project** (root)
   users
      user1
      user2
      user3
      .
      .
      .
      user100000

user1, user2... user100000 中的一个节点将随机被删除。这种情况突然发生得如此随机,我无法重现它,并且只影响不到 1% 的时间,因此在 10 万多名儿童中,只有 200 名儿童会在 3 个月内消失。我浏览了代码的每一行,但没有删除节点的函数。我只使用updateChildValues, observe(.childAdded...,observeSingleEventqueryOrdered. 没有以 . 开头的单一方法remove。关于为什么会发生这种情况的任何想法?

我的第一个直觉是我正在调用一些类似setValueupdateValuewith 的编写 API Nil,但我使用的是 Swift,这是不可能的。我还查看了Firebase Web update() deletes all other child nodes,但这实际上删除了除了正在添加的子节点之外的所有子节点,这绝对不会发生在我身上。有没有人也遇到过这个问题?任何帮助将非常感激。谢谢你。

- - -编辑 - - -

以下是我与 write 函数一起使用的一些示例 API。item 变量是一个由 let 定义的字典。

let databaseRef = Database.database().reference()
newReferece = databaseRef.child("users").child(UID)    
newReferece.setValue(item)

另一个:

theAPI.REF?.updateChildValues(dict, withCompletionBlock: { (error, ref) in
                if error != nil {
                    onError(error!.localizedDescription)
                } else {
                    onSuccess()
                }
            })
4

0 回答 0