Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hibernate - Migrations - Flyway / Liquibase #35

Closed
valentinacupac opened this issue Jun 21, 2022 · 6 comments
Closed

Hibernate - Migrations - Flyway / Liquibase #35

valentinacupac opened this issue Jun 21, 2022 · 6 comments
Assignees

Comments

@valentinacupac
Copy link
Owner

Evaluate pros and cons of Flyway vs Liquibase and implement one of these for our project

@thced
Copy link

thced commented Jul 5, 2022

I have split thoughts around this. :)

For a demo, certainly. But once you hit a certain size; how and when would you run the tool in question?

Can you accept downtime while running the tool (isolated), or do you take (relatively large) effort to migrate in small chunks so as to not have downtime?

@eamtalu
Copy link
Contributor

eamtalu commented May 25, 2023

Hi @valentinacupac,

I wanted to let you know that I've successfully integrated Flyway into the subproject adapter-persistence-jpa. I've also created a pull request that includes a detailed commit log for your review.
I did experiment with Liquibase as well, but I found Flyway to be more flexible, especially with its version-based approach and SQL syntax. Thanks.

@GuillaumeTaffin
Copy link
Contributor

GuillaumeTaffin commented May 25, 2023

I am a bit puzzled by that need. I do not know where this project is aiming to but I thought it was a place to have some "bigger sized" example of clean architecture concepts.

I do not really get how using database migration tools serves this purpose.

I even find it quite harmful from the perspective of a junior coming here to learn those concepts, and being actually submerged by all the accidental complexity clutter that is being put around it.

@valentinacupac
Copy link
Owner Author

@GuillaumeTaffin that is true - database migration tools are orthogonal, they are unrelated to HA, CA...

Why include it? Good question. The reason for including it is twofold: (a) on one hand, some kind of migration mechanism is needed by real life projects, so where does it fit in here, (b) suppose this GitHub repo is deployed and used for real (it may or may not be), then would need migrations too...

This is one difference between this GitHub repo as opposed to https://github.com/jmgarridopaz/bluezone which stay much more "pure" in illustrating just the concept and not the accidental complexity.

"I even find it quite harmful from the perspective of a junior coming here to learn those concepts" -> I agree with you. I find other repositories (e.g. bluezone, also Ivan Paulovich's work) to be much clearer in demonstrating the essence without clutter.... Whereas this GitHub repo (Banking Kata) is going in a different direction (in terms of adding some aspects that appear in real-life apps but are orthogonal to concepts illustrated); this was also motivated due to the audience gathered and the questions they ask....

@valentinacupac
Copy link
Owner Author

Related PR #101

@GuillaumeTaffin
Copy link
Contributor

@valentinacupac thanks for this clarification. Indeed, I was unsure of what the intent was, but applying "real world" tooling in that context makes sense as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants