Query Size Limits and Pageable - derjust/spring-data-dynamodb GitHub Wiki
The AWS SDK tries to load all results of a query into memory as one single list.
To activate lazy loading, the following DynamoDBMapperConfig
has to be used:
DynamoDBMapperConfig.Builder builder = new DynamoDBMapperConfig.Builder();
builder.setPaginationLoadingStrategy(PaginationLoadingStrategy.ITERATION_ONLY);
This causes the result to be available as a lazy-loaded list - as long as no methods are called that affect the whole list.
Those methods (like size()
) will transparently retrieve the full result set!
Having the above ITERATION_ONLY
PaginationLoadingStrategy
in place allows to use the Pageable
parameter on find
methods.