Skip to content

Commit c193a25

Browse files
author
Joey Leingang
committed
Use lists instead of sets, which SHOULD BE safe, and preserve order
1 parent ea9d441 commit c193a25

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

temporal_sqlalchemy/clock.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -202,31 +202,31 @@ def build_clock_table(entity_table: sa.Table,
202202
server_default=sa.func.current_timestamp()),
203203
schema=schema)
204204

205-
entity_keys = set()
205+
entity_keys = list()
206206
for fk in util.foreign_key_to(entity_table, nullable=False):
207207
# this is done to support arbitrary primary key shape on entity
208208
clock_table.append_column(fk)
209-
entity_keys.add(fk.key)
209+
entity_keys.append(fk.key)
210210

211211
tick_entity_unique_name = util.truncate_identifier(
212212
'%s_tick_entity_id_key' % clock_table_name
213213
)
214214
clock_table.append_constraint(
215-
sa.UniqueConstraint(*(entity_keys | {'tick'}),
215+
sa.UniqueConstraint(*(entity_keys + ['tick']),
216216
name=tick_entity_unique_name)
217217
)
218218

219219
if activity_class:
220-
activity_keys = set()
220+
activity_keys = list()
221221
# support arbitrary shaped activity primary keys
222222
for fk in util.foreign_key_to(activity_class.__table__,
223223
prefix='activity',
224224
nullable=False):
225225
clock_table.append_column(fk)
226-
activity_keys.add(fk.key)
226+
activity_keys.append(fk.key)
227227
# ensure we have DB constraint on clock <> activity uniqueness
228228
clock_table.append_constraint(
229-
sa.UniqueConstraint(*(activity_keys | entity_keys))
229+
sa.UniqueConstraint(*(entity_keys + activity_keys))
230230
)
231231

232232
return clock_table

0 commit comments

Comments
 (0)