CPF未向MarkLogic中新插入的文档添加初始状态

CPF未向MarkLogic中新插入的文档添加初始状态,marklogic,Marklogic,我们在数据库中配置了许多CPF。其中大多数都配置了集合作用域。我们注意到,插入到这些集合中的文档没有设置任何cpf:state或cpf:last updated。 仅对它们设置了cpf:processing status和cpf:property散列。我的理解是,一旦设置了cpf:processing状态,post-commit触发器就会将cpf:state设置为http://marklogic.com/states/initial 对于新插入的文档。但这并没有发生,因此未处理的文档正在堆积。可

我们在数据库中配置了许多CPF。其中大多数都配置了集合作用域。我们注意到,插入到这些集合中的文档没有设置任何cpf:state或cpf:last updated。 仅对它们设置了cpf:processing status和cpf:property散列。我的理解是,一旦设置了cpf:processing状态,post-commit触发器就会将cpf:state设置为http://marklogic.com/states/initial 对于新插入的文档。但这并没有发生,因此未处理的文档正在堆积。可能的原因是什么?有什么方法可以调查发生了什么


版本7.0.5

来自最近的电子邮件链,MarkLogic的Mary H解释了如何启用CPF跟踪事件进行故障排除。这可能会有帮助。启用CPF跟踪事件:转到“组/默认值”下的“诊断”选项卡。启用跟踪事件,并在框中键入CPF。然后再试一次。您应该在日志中看到一些关于CPF所看到的以及它正在做什么的跟踪。@david ennis这值得一个部分答案。@grtjn。是的,它明确地回答了第二个问题。但由于这不是主要问题,所以我决定暂时保持回答问题的清晰。谢谢@david ennis。如果需要的话,我们会做并提出后续问题。@DavidEnnis希望现在恢复这条线索还不算太晚。在检查CPF跟踪事件时,我们发现无法设置CPF:状态,因为ETC已满。考虑到更新文档的属性片段所需的ETC太少,这似乎有些奇怪。尽管其他事务可能正在使用ETC,但如果没有故障保护机制,或者不应该将异常放在属性片段中?