Skip to content

Commit f7d66c2

Browse files
authored
Merge pull request #42 from supabase/perf_tables
Perf tables
2 parents 017fa63 + c715126 commit f7d66c2

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

src/api/tables.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -122,12 +122,12 @@ router.delete('/:id', async (req, res) => {
122122
const getTablesSql = (sqlTemplates) => {
123123
const { columns, grants, policies, primary_keys, relationships, tables } = sqlTemplates
124124
return `
125-
WITH tables AS ( ${tables} ),
126-
columns AS ( ${columns} ),
127-
grants AS ( ${grants} ),
128-
policies AS ( ${policies} ),
129-
primary_keys AS ( ${primary_keys} ),
130-
relationships AS ( ${relationships} )
125+
WITH tables AS MATERIALIZED ( ${tables} ),
126+
columns AS MATERIALIZED ( ${columns} ),
127+
grants AS MATERIALIZED ( ${grants} ),
128+
policies AS MATERIALIZED ( ${policies} ),
129+
primary_keys AS MATERIALIZED ( ${primary_keys} ),
130+
relationships AS MATERIALIZED ( ${relationships} )
131131
SELECT
132132
*,
133133
${coalesceRowsToArray('columns', 'SELECT * FROM columns WHERE columns.table_id = tables.id')},

src/lib/helpers.ts

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
export const coalesceRowsToArray = (source: string, joinQuery: string) => {
2+
// Note that array_to_json(array_agg(row_to_json())) seems to perform better than json_agg
23
return `
34
COALESCE(
45
(

0 commit comments

Comments
 (0)