放大Graphql不遵守我的查询限制

问题描述

我有一个Amplify应用程序,使用带有约50个项目的DynamoDB表,并通过React应用程序访问它。

初始(简化)模型:

type Video @model
@key(name: "ByOrganization",fields: ["videoOrganizationId","id"],queryField: "videosByOrganization")
{
  id: ID!
  createdAt: AWSDateTime
  title: String!
  season: Int
  episode: Int
  owner: String
  editor: String
  organization: Organization @connection
  videoOrganizationId: ID
}

代码上,我在Apollo React组件上调用查询

  <Query
    query={query}
    variables={{
      {
         limit: 100,},}}
    pollInterval={5000}
  >
      {children}
  </Query>);

100个项目的限制应该足以将数据库中的所有项目都带走,但是这不是发生的事情,它将它限制为多个项目(〜20-30个项目)

我尝试向表中添加不同的索引:

@key(name: "ByOrganizationSortedByCreated","createdAt"],queryField: "videosByOrganizationSortedByCreated")
@key(name: "ByOrganizationSortedByTitle","title"],queryField: "videosByOrganizationSortedByTitle")
@key(name: "ByOrganizationSortedByTitleSeasonEpisode","title","season","episode"],queryField: "videosByOrganizationSortedByTitleSeasonEpisode")

他们都没有工作 显然应该在我的查询中返回的一些项目被遗忘了

我还试图找到有关DynamoDb返回项目数量上的limitatinos的任何参考,或者我不知道的某些奇怪行为...没有成功

还有一些超级怪异的行为 即:如果我只添加sortDirection: 'DESC',则返回的结果更少!

有人知道为什么会这样吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)