当前位置: 首页 > 知识库问答 >
问题:

如何在Cosmos DB更改Feed处理器中为RecsterObserverFactoryAsync函数提供分区键?

胡鸿羲
2023-03-14

我从路径https://github.com/Azure/azure-documentdb-dotnet/tree/master/samples/ChangeFeedMigrationTool运行更改源处理器示例。我只更改了App.config文件中所需的键值以指向我的Cosmos DB。

当我针对分区集合运行此示例时,我在注册观察者工厂时遇到异常。

await host.RegisterObserverFactoryAsync(docObserverFactory);

异常详细信息:

InvalidOperationException: PartitionKey value must be supplied for this operation.

   at Microsoft.Azure.Documents.Client.DocumentClient.<AddPartitionKeyInformationAsync>d__34f.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
...
at ChangeFeedMigrationSample.Program.<RunChangeFeedHostAsync>d__18.MoveNext() in D:\temp\samples\code-samples\ChangeFeedProcessor\Program.cs:line 181
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at ChangeFeedMigrationSample.Program.<MainAsync>d__16.MoveNext() in D:\temp\samples\code-samples\ChangeFeedProcessor\Program.cs:line 92

但该函数不接受任何分区密钥。我不知道如何通过考试。我在这件事上遗漏了什么吗?另外,我的理解是Cosmos DB Change Feed处理器库隐式管理所有分区。

共有1个答案

孟嘉歆
2023-03-14

租约收集是否已分区?当前不支持分区租约收集(应该很快),错误消息如下所示。是否可以尝试使用单分区租约收集。

 类似资料:
  • 问题内容: 我的代码在tomcat 8版本8.0.33上运行,但在8.5.4上我得到:为此Cookie指定了无效的域[.mydomain]。 我发现Rfc6265CookieProcessor是在tomcat 8最新版本中引入的。 它在官方文档上说可以在context.xml中还原为LegacyCookieProcessor,但是我不知道如何。 请让我知道该怎么做。 谢谢 问题答案: 您可以在co

  • 我最近开始使用Azure CosmosDB和函数。在阅读文档 https://docs.microsoft.com/pl-pl/azure/cosmos-db/change-feed-processor 时,我发现了一些对我来说很难理解的东西。是否真的可以在许多函数之间共享更改源,以便它们将由一个相同的数据库操作触发?什么是租约收集,它解决了什么问题。租赁的目的是什么?我想对这些术语进行基本解释。

  • 我需要一些帮助来了解spark如何决定分区的数量,以及它们在executors中是如何处理的,我很抱歉这个问题,因为我知道这是一个重复的问题,但即使在阅读了许多文章后,我仍然不能理解我正在放上一个我目前正在工作的真实生活用例,以及我的Spark提交配置和集群配置。 我的硬件配置: < code>3节点计算机,总Vcores=30,总内存=320 GB。 我正在使用spark dataframe J

  • 嘿,我们已经用Cosmos DB和Mongo API使用change feed处理器库6个月了,但现在当我们尝试连接到change处理器库时,我们得到了一个文档异常和mesage 文档已经改变,现在说它不支持它,但我有一个工作数据库说它支持。

  • 我按照这个示例代码(https://github . com/Azure/Azure-document db-changeedprocessor-dot net # example)注册一个观察者来处理cosmos db集合中的变更提要。我使用一个实用程序在cosmos db集合中创建新文档(比如在一个for循环中创建400个文档)。我正在使用30秒的FeedPollDelay。但CFP自由党似乎