- invalid options sent to 'cascade' string will raise an exception [ticket:406]
- fixed bug in mapper refresh/expire whereby eager loaders didnt properly re-populate
item lists [ticket:407]
+- order of constraint creation puts primary key first before all other constraints;
+required for firebird, not a bad idea for others [ticket:408]
0.3.3
- string-based FROM clauses fixed, i.e. select(..., from_obj=["sometext"])
first_pk = True
for constraint in column.constraints:
constraint.accept_schema_visitor(self, traverse=False)
-
- for constraint in table.constraints:
+
+ # On some DB order is significant: visit PK first, then the
+ # other constraints (engine.ReflectionTest.testbasic failed on FB2)
+ if len(table.primary_key):
+ table.primary_key.accept_schema_visitor(self, traverse=False)
+ for constraint in [c for c in table.constraints if c is not table.primary_key]:
constraint.accept_schema_visitor(self, traverse=False)
self.append("\n)%s\n\n" % self.post_create_table(table))