Skip to content

Migration to prod #1253

@Jacky56

Description

@Jacky56

It has been a long journey with piccolo ORM (still better than django).

I am currently performing a migration to a prod environment with +100 files. And I have notice that running piccolo migrations forward all do not run in timestamp creation order!

When you have a large project, you are bound to face dependencies of some columns not existing, or tables not created yet.

one of my microservices:

👍 17 migrations already complete
⏩ 17 migrations not yet run
🚀 Running 17 migrations:
  - 2024-06-09T00:03:28:809161 [forwards]... ok! ✔️
  - 2024-06-09T15:16:04:095641 [forwards]... ok! ✔️
  - 2024-06-09T20:52:44:531139 [forwards]... ok! ✔️
  - 2024-06-10T00:01:19:783644 [forwards]... ok! ✔️
  - 2024-06-12T23:36:50:424117 [forwards]... ok! ✔️
  - 2024-06-13T20:55:43:359308 [forwards]... ok! ✔️
  - 2024-06-14T22:40:25:381688 [forwards]... ok! ✔️
  - 2024-06-14T23:03:56:685730 [forwards]... ok! ✔️
  - 2024-06-17T21:17:29:684707 [forwards]... ok! ✔️
  - 2024-05-04T06:30:14:681376 [forwards]... inserting jobs
The command failed.
column "job_type" does not exist

I suspect that piccolo migrations forward all evaluates one module at a time instead of merging all modules and sorting by order

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions