Skip to content

Commit d01a97a

Browse files
committed
Update the schema
1 parent 2a02c8b commit d01a97a

File tree

1 file changed

+25
-8
lines changed

1 file changed

+25
-8
lines changed

schema/all_tables.dbml

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -137,14 +137,15 @@ Table logical_expression {
137137
group_id integer [ref: > cascades_group.id]
138138
fingerprint integer
139139
variant_tag integer
140-
data json
140+
predicate integer [ref: > predicate.id]
141141
}
142142

143143
Table cascades_group {
144144
id integer [pk]
145145
latest_winner integer [ref: > physical_expression.id, null]
146146
in_progress boolean
147147
is_optimized boolean
148+
parent integer [ref: > cascades_group.id]
148149
}
149150

150151
// Physical expressions and properties
@@ -153,7 +154,7 @@ Table physical_expression {
153154
group_id integer [ref: > cascades_group.id]
154155
fingerprint integer
155156
variant_tag integer
156-
data json
157+
predicate integer [ref: > predicate.id]
157158
}
158159

159160
Table physical_property {
@@ -187,13 +188,29 @@ Table group_winner {
187188
id integer [pk]
188189
group_id integer [ref: > cascades_group.id]
189190
physical_expression_id integer [ref: > physical_expression.id]
190-
cost_id integer [ref: > plan_cost.id]
191+
cost integer
191192
epoch_id integer [ref: > event.epoch_id]
192193
}
193194

195+
Table predicate {
196+
id integer [pk]
197+
data json
198+
variant integer
199+
}
200+
201+
Table predicate_children {
202+
parent_id integer [ref: > predicate.id]
203+
child_id integer [ref: > predicate.id]
204+
}
205+
206+
Table predicate_logical_expression_junction {
207+
logical_expr_id integer [ref: > logical_expression.id]
208+
predicate_id integer [ref: > predicate.id]
209+
}
210+
211+
Table predicate_physical_expression_junction {
212+
physical_expr_id integer [ref: > physical_expression.id]
213+
predicate_id integer [ref: > predicate.id]
214+
}
215+
194216

195-
// Notes:
196-
// - All columns are NOT NULL unless specified otherwise
197-
// - fingerprint represents a hash of the actual data in the logical and physical expression tuple
198-
// - Each new event inserted into events table has its own epoch_id
199-
// - `cascades_group.latest_winner` is an optimization to avoid querying entire group_winner table

0 commit comments

Comments
 (0)