Firebase发出“maxretry”错误

时间:2016-05-03 10:58:32

标签: firebase firebase-realtime-database

我们将Firebase用作移动应用的后端。我们的一些用户偶尔收到错误“maxretry”,其中一个事务写入具有单个数值的路径。据我所知,我们没有多个用户或连接,也没有多次写入同一路径。可能导致这种情况的原因是什么?

我怀疑这是由使用多个小数位的浮点值引起的。这个错误发生在我本地一次,我能够通过将精度限制为两位小数来解决它。这可以吗?

- 阿尔伯特

编辑:

以下是导致此问题的代码:

return fireRef.child(fbPath).transaction(function(originalVal) {
  return func(originalVal, by_value);
}, _.noop, false)

在这种情况下,func看起来像这样:

function(originalVal, val) {
  return val + (originalVal || 0);
}

1 个答案:

答案 0 :(得分:3)

即使将精度限制为2位小数(每隔一段时间会出现maxretry错误),问题仍然存在。

使用Firebase事务更新值时,似乎根本不应使用浮点类型。

我开始使用整数,而且还没有问题。