以下の関数は、単純であるべきですか?これも私が思ったことです。それでも、私の人生のために、「ValidationException
」というエラーメッセージが表示され続けていることがわかりません。「Query key condition not supported
」というエラーが表示されます。AWS DocumentClientがセカンダリインデックスクエリより少ない - 「クエリキー条件がサポートされていません」
const getUpdated = (refreshDatetime, callback) => {
refreshDatetime = parseInt(refreshDatetime);
docClient.query({
TableName: 'aw-reach',
IndexName: 'updateDatetime-index',
KeyConditionExpression: ':refreshDatetime < updateDatetime',
ExpressionAttributeValues: {
':refreshDatetime': refreshDatetime,
}
}, (error, data) => {
if (error) callback(error, null);
callback(null, data.Items);
});
};
ちょうど私が(同様に異なる可能性が)信じられないほど愚かな何かをやっておりませんことを確認するために、ここで私がテストするために使用していスニペットがあります。
const refreshDatetime = Date.parse('01 Jan 2015');
getUpdated(refreshDatetime, (error, response) => {
console.log(JSON.stringify(response));
});
洞察やアイデアは間違いなく私の最強の才能ではありません、でもこの小さなコードを歓迎し、大幅に書き込みコードとして評価されています!
更新:詳細を追加するには、私のハッシュキーはreachId
で、私のセカンダリインデックスに関連する私のパーティションキーはupdateDatetime
です。
は、あなたのハッシュキーをrefreshDatetimeしていますか? –
インデックスに関連付けられたパーティションキーです。 – knu2xs