Skip to content

Commit a599ffe

Browse files
authored
Merge pull request #38 from bettse/master
Support more than 100 tables
2 parents 32c0873 + e96c901 commit a599ffe

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

src/store/actions.ts

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ async function getDbTables(
1515
) {
1616
let data;
1717
try {
18-
data = await state.dbInstance.listTables().promise();
18+
data = await getTablesPaginated(state);
1919
} catch (err) {
2020
commit('showResponse', err);
2121
return;
@@ -29,6 +29,21 @@ async function getDbTables(
2929
}
3030
}
3131

32+
async function getTablesPaginated(state: any) {
33+
const params: any = {};
34+
const data: { TableNames: string[] } = { TableNames: [] };
35+
do {
36+
const chunk = await state.dbInstance.listTables(params).promise();
37+
if (chunk.LastEvaluatedTableName) {
38+
params.ExclusiveStartTableName = chunk.LastEvaluatedTableName;
39+
} else {
40+
delete params.ExclusiveStartTableName;
41+
}
42+
data.TableNames = [...data.TableNames, ...chunk.TableNames];
43+
} while (params.ExclusiveStartTableName);
44+
return data;
45+
}
46+
3247
function deleteTableFromStore(
3348
{ commit }: ActionContext<RootState, RootState>,
3449
tableName: string,

0 commit comments

Comments
 (0)