为什么我看不到新插入的JSON文档?

时间:2016-10-26 20:58:30

标签: javascript angularjs node.js couchbase

为什么我看不到新插入的JSON文档?????

     
  • Couchbase 4.5
  •  
  • JavaScript
  •  
  • AngularJS
  •  
  • Node.JS
  •  
  • Express Server

我有一个Web应用程序,它可以进行数据维护。用户将从菜单中选择要操作的数据。一旦Web应用程序检索数据,用户就可以选择插入,更新或删除。我对该应用程序进行了多次测试并发现了一个问题。

问题背景:

Couchbase服务器驻留在本地计算机上

使用JavaScript,AngularJS,运行Express Server的NodeJS编写的应用程序

用户将新数据输入Web应用程序。完成后,用户将按下更新按钮,该按钮确定用户是否要插入或更新JSON文档。 Web应用程序确定用户正在向数据库添加新数据。 Web应用程序将数据格式化为适当的JSON文档格式。 Web应用程序使用REST范例将数据发送到数据库。数据库将成功状态返回给Web应用程序。在识别出发生成功的数据库更新后,Web应用程序将检索数据以显示必须的当前数据。

问题:

在查看新的数据检索后,刚刚插入的记录不会显示。等了几分钟后,我再次重新检索数据。出现新插入的数据。我跑了几次这个过程。每次我都无法立即检索新插入的数据。

问题:

有人可以向我解释为什么插入后不会检索少于1000个字符的JSON文档吗?

我是否需要将新插入的数据插入到现有结果集中?如果是这样,为什么数据存在​​于数据库中?

TIA

1 个答案:

答案 0 :(得分:4)

我猜你在谈论N1QL或查看视图,如果是这样,你可能会在默认的一致性级别上运行,这会立即更新性能。如果这在您的应用程序中至关重要,则应选择不同的一致性级别。

功能概述:http://developer.couchbase.com/documentation/server/4.5/architecture/querying-data-with-n1ql.html

带有视频演示的博文:http://blog.couchbase.com/2016/july/n1ql-scan-consistency-including-new-atplus-video

用于更改一致性的N1QL API:https://github.com/couchbase/couchnode/blob/771ebf78f82b437999e13b05e4699c88a02dc8d3/lib/n1qlquery.js#L71