in annotation/alembic/versions/36bff2d016f7_expand_validationschema.py [0:0]
def downgrade():
"""
Remove validation_only job type and
rollback fk constraints
"""
op.alter_column(
"jobs", "validation_type", type_=sa.VARCHAR(), server_default=None
)
op.execute("DROP TYPE validation_type;")
op.execute("DELETE FROM jobs " "WHERE validation_type = 'validation_only'")
validation_type = postgresql.ENUM(ValidationSchema, name="validation_type")
validation_type.create(op.get_bind(), checkfirst=True)
op.alter_column(
"jobs",
"validation_type",
type_=validation_type,
server_default=ValidationSchema.cross.name,
postgresql_using="validation_type::validation_type",
)
op.drop_constraint(TASKS_JOB_ID_FK, "tasks", type_="foreignkey")
op.create_foreign_key(
TASKS_JOB_ID_FK, "tasks", "jobs", ["job_id"], ["job_id"]
)
op.drop_constraint(
JOB_VALIDATOR_USER_ID_FK,
"association_job_validator",
type_="foreignkey",
)
op.drop_constraint(
JOB_VALIDATOR_JOB_ID_FK,
"association_job_validator",
type_="foreignkey",
)
op.create_foreign_key(
JOB_VALIDATOR_USER_ID_FK,
"association_job_validator",
"users",
["user_id"],
["user_id"],
)
op.create_foreign_key(
JOB_VALIDATOR_JOB_ID_FK,
"association_job_validator",
"jobs",
["job_id"],
["job_id"],
)
op.drop_constraint(
JOB_OWNER_USER_ID_FK, "association_job_owner", type_="foreignkey"
)
op.drop_constraint(
JOB_OWNER_JOB_ID_FK, "association_job_owner", type_="foreignkey"
)
op.create_foreign_key(
JOB_OWNER_USER_ID_FK,
"association_job_owner",
"users",
["user_id"],
["user_id"],
)
op.create_foreign_key(
JOB_OWNER_JOB_ID_FK,
"association_job_owner",
"jobs",
["job_id"],
["job_id"],
)
op.drop_constraint(
JOB_ANNOTATOR_USER_ID_FK,
"association_job_annotator",
type_="foreignkey",
)
op.drop_constraint(
JOB_ANNOTATOR_JOB_ID_FK,
"association_job_annotator",
type_="foreignkey",
)
op.create_foreign_key(
JOB_ANNOTATOR_USER_ID_FK,
"association_job_annotator",
"users",
["user_id"],
["user_id"],
)
op.create_foreign_key(
JOB_ANNOTATOR_JOB_ID_FK,
"association_job_annotator",
"jobs",
["job_id"],
["job_id"],
)
op.drop_constraint(DOCS_TASK_ID_FK, "annotated_docs", type_="foreignkey")
op.create_foreign_key(
DOCS_TASK_ID_FK, "annotated_docs", "tasks", ["task_id"], ["id"]
)