代码之家  ›  专栏  ›  技术社区  ›  AlikElzin-kilaka planben

为什么dynamodb limit不能与scan一起工作?

  •  0
  • AlikElzin-kilaka planben  · 技术社区  · 7 年前

    我运行以下代码:

    DynamoDBScanExpression scanExpression = new DynamoDBScanExpression();
    scanExpression.setLimit(100);
    PaginatedScanList<T> list = dynamoDBMapper.scan(clazz, scanExpression);
    

    当我检查清单的大小时 四万 而不是 一百 .

    另外,当遍历列表时,我得到的是所有的40k项,而不是100项。

    为什么这个限制不起作用?

    使用Java客户端SDK版本 1.10.77 .

    0 回复  |  直到 7 年前
        1
  •  0
  •   rpmartz    7 年前

    下面是 size() 方法 PaginatedList<T> 在AWS JAVA SDK中 PaginatedScanList<T> 延伸:

      @Override
    public int size() {
        loadAllResults();
        return allResults.size();
    }
    

    当你打电话 尺寸() ,您告诉sdk获取扫描的所有结果,而不是检查当前页面的大小。