Describe the issue
See https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/client/query.html
It says that
The data type for ExclusiveStartKey must be String, Number, or Binary. No set data types are allowed.
This is just-plain-wrong, and looks like a fossil from an earlier version of the API. The type should match LastEvaluatedKey (dict) in the response, which is indeed a dict for me.
The description given on the page for LastEvaluatedKey could be just a little clearer:
(a)
The primary key of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.
This may as well say explicitly that it's suitable for use as an ExclusiveStartKey value, which is clearly what
it means.
(b)
If LastEvaluatedKey is empty, then the “last page” of results has been processed and there is no more data to be retrieved.
This sounds like returning an empty dictionary. I find it returns None.
Links
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/client/query.html
Describe the issue
See https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/client/query.html
It says that
The data type for ExclusiveStartKey must be String, Number, or Binary. No set data types are allowed.
This is just-plain-wrong, and looks like a fossil from an earlier version of the API. The type should match LastEvaluatedKey (dict) in the response, which is indeed a dict for me.
The description given on the page for LastEvaluatedKey could be just a little clearer:
(a)
The primary key of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request.
This may as well say explicitly that it's suitable for use as an ExclusiveStartKey value, which is clearly what
it means.
(b)
If LastEvaluatedKey is empty, then the “last page” of results has been processed and there is no more data to be retrieved.
This sounds like returning an empty dictionary. I find it returns None.
Links
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/client/query.html