Couchbase XDCR高级过滤-如何在过滤表达式中配置动态日期范围



是否有任何可能的机制,我们可以配置XDCR过滤器表达式与动态日期范围在couchbase?

示例可以像配置过滤器表达式一样用于复制超过一年的实体。DATE_DIFF_STR(NOW_STR(), createdDate,"day")>365

根据文档,似乎不支持N1QL日期函数https://docs.couchbase.com/server/current/xdcr-reference/xdcr-filtering-expressions.html表示XDCR高级过滤不支持N1QL日期函数。有关N1QL日期函数的信息,请参阅N1QL日期函数页面

请建议在配置XDCR筛选表达式时,是否可以使用N1QL日期函数的替代方案,以根据给定文档中当前日期和创建日期字段之间的时间间隔来筛选实体。

不幸的是,您无法使用XDCR过滤实现您想要的效果。当添加或更改文档时,将复制文档,并在那时评估筛选器。因此,如果文档的createdDate超过365天,但随后没有更新,则不会为复制重新计算它。

我建议在这里使用事件服务,它允许你定义一个将在未来某个时刻触发的计时器。在你的例子中,当一个文档进来时,你会为createdDate+365设置一个计时器。然后你可以配置一个回调来做任何你想做的事情。-例如,您可以让它使用"复制=true"来更新文档字段,然后可以在XDCR中过滤。

最新更新