ItemCollection 上的 DynamoDB getAccumulatedConsumedCapacity 总是 returns NULL
DynamoDB getAccumulatedConsumedCapacity on ItemCollection always returns NULL
我是 运行 DynamoDB GlobalSecondaryIndex 的查询。 Post查询,我想查看我消耗了多少容量。根据文档,ItemCollection 提供了一种方法 getAccumulatedConsumedCapacity
来执行此操作。但是,当我尝试在我的代码中使用它时,它总是 returns NULL。
private void dummyMethod(QuerySpec querySpec) {
ItemCollection<QueryOutcome> queryOutcomes = index.query(querySpec);
Iterator<Item> itemIterator = queryOutcomes.iterator();
while(itemIterator.hasNext()) {
Map<String, Object> itemAsMap = itemIterator.next().asMap();
// do something with itemAsMap
}
if(queryOutcomes.getAccumulatedConsumedCapacity() == null) {
LOGGER.error("capacity is null");
}
}
这段代码没有问题。该错误在调用方方法中。为了使结果 return 消耗的容量,我们必须显式设置 ReturnConsumedCapacity 字段。
例如:withReturnConsumedCapacity(ReturnConsumedCapacity.TOTAL);
.
我是 运行 DynamoDB GlobalSecondaryIndex 的查询。 Post查询,我想查看我消耗了多少容量。根据文档,ItemCollection 提供了一种方法 getAccumulatedConsumedCapacity
来执行此操作。但是,当我尝试在我的代码中使用它时,它总是 returns NULL。
private void dummyMethod(QuerySpec querySpec) {
ItemCollection<QueryOutcome> queryOutcomes = index.query(querySpec);
Iterator<Item> itemIterator = queryOutcomes.iterator();
while(itemIterator.hasNext()) {
Map<String, Object> itemAsMap = itemIterator.next().asMap();
// do something with itemAsMap
}
if(queryOutcomes.getAccumulatedConsumedCapacity() == null) {
LOGGER.error("capacity is null");
}
}
这段代码没有问题。该错误在调用方方法中。为了使结果 return 消耗的容量,我们必须显式设置 ReturnConsumedCapacity 字段。
例如:withReturnConsumedCapacity(ReturnConsumedCapacity.TOTAL);
.