2013-08-19 37 views
2

简而言之,我们所看到的是,如果我们创建新的实时文档并立即与另一个协作者共享,并且该协作者在看到它时显示其实时文档“与我共享”文件夹,然后当该协作者尝试向该文件写入数据时,会发生错误,并且有时实时API将无提示失败。Google实时API和共享权限时间问题

我们已经能够通过以编程方式添加权限并使用Google云端硬盘的共享对话框来重现这一点。以下是重现此错误的步骤。

  • 在两个不同的谷歌登录账户在不同的浏览器
  • 创建一个帐户
  • 复制URL指向新的文件
  • 分享新创建的文件与其他帐户的新的实时文档通过输入电子邮件地址
  • 尽可能快地验证新文档显示在另一个帐户的“与我共享”文件夹中,并将复制的URL粘贴到其他浏览器中以将文档加载到其他浏览器中帐户(我能够重现该问题在我的机器上30秒内完成此操作时一直如此,但如果延迟时间至少为35秒,则一切似乎都正常)
  • 当文档加载到与帐户共享时,尝试将数据写入文档
  • 有时实时API崩溃默默
  • 如果在写文档使用混合操作,我们得到以下错误:
  • 驱动器的实时API错误:invalid_compound_operation: 打开化合物中的同步块的结束操作 - 你忘了调用endCompoundOperation()?
  • 未捕获 DocumentClosedError:文档已关闭。

与新合作者共享现有文件时也会发生此问题。在我的机器上进行测试时,它似乎是一个计时问题,因为当等待时间少于30秒时,我可以始终如一地重现该错误,并且在等待时间为35时仍无法重现问题几秒或更多。另一个有趣的发现是,这个问题似乎只与写数据有关。我总是能够正确读取共享文档中的数据,但是如果它是在30秒以内的情况下加载的,那么当我第一次尝试写入数据时,问题就会发生。更让人好奇的是,如果页面被刷新,那么即使在共享文档的30秒内发生刷新,它也能正常工作。

谢谢。

回答