Skip to content

Commit bd45720

Browse files
committed
fix: Lambda pre-aggregations aren't served by external refresh instance
1 parent 06bef33 commit bd45720

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

packages/cubejs-query-orchestrator/src/orchestrator/PreAggregations.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,7 @@ type LoadPreAggregationResult = {
458458
targetTableName: string;
459459
refreshKeyValues: any[];
460460
lastUpdatedAt: number;
461-
buildRangeEnd?: string;
461+
buildRangeEnd: string;
462462
lambdaTable?: InlineTable;
463463
queryKey?: any[];
464464
rollupLambdaId?: string;
@@ -586,8 +586,9 @@ export class PreAggregationLoader {
586586
// immediately return the latest rollup data that instance already has
587587
return {
588588
targetTableName: this.targetTableName(versionEntryByStructureVersion),
589-
lastUpdatedAt: versionEntryByStructureVersion.last_updated_at,
590589
refreshKeyValues: [],
590+
lastUpdatedAt: versionEntryByStructureVersion.last_updated_at,
591+
buildRangeEnd: versionEntryByStructureVersion.build_range_end,
591592
};
592593
}
593594
}
@@ -726,6 +727,7 @@ export class PreAggregationLoader {
726727
targetTableName,
727728
refreshKeyValues: [],
728729
lastUpdatedAt: newVersionEntry.last_updated_at,
730+
buildRangeEnd: this.preAggregation.buildRangeEnd,
729731
};
730732
} else {
731733
await this.executeInQueue(invalidationKeys, this.priority(10), newVersionEntry);

packages/cubejs-query-orchestrator/test/unit/QueryOrchestrator.test.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1228,6 +1228,13 @@ describe('QueryOrchestrator', () => {
12281228
result = await queryOrchestrator.fetchQuery(query(['2021-05-31T00:00:00.000', '2021-05-31T23:59:59.999']));
12291229
console.log(JSON.stringify(result, null, 2));
12301230
expect(result.data[0]).toMatch(/orders_h2021053100/);
1231+
1232+
result = await queryOrchestratorExternalRefresh.fetchQuery(query());
1233+
console.log(JSON.stringify(result, null, 2));
1234+
expect(result.data[0]).toMatch(/orders_d20210501/);
1235+
expect(result.data[0]).not.toMatch(/orders_h2021053000/);
1236+
expect(result.data[0]).toMatch(/orders_h2021053100/);
1237+
expect(result.data[0]).toMatch(/orders_h2021060100_uozkyaur_d004iq51/);
12311238
});
12321239

12331240
test('loadRefreshKeys', async () => {

0 commit comments

Comments
 (0)