golang-migrate / migrate

Database migrations. CLI and Golang library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Suuport for Firebird SQL

micakovic opened this issue · comments

I'm not planning on adding support myself but feel free to open a PR with tests

Please review it
Added Firebird support #191

Firebird is now supported in v4.3.0
This issue is resolved, but the Firebird tests are a bit flakey. e.g. there are intermittent failures.
Not sure if there's a bug with the Go client connecting to the DB or an issue w/ the Firebird docker image.

This bug might be related to jacobalberty/firebird-docker#33

Since Firebird is creating a lot of problems with tests, I'm going to remove official support for it until the issue is resolved.

This means that:

  1. Shipped assets (namely the CLI) won't have Firebird support built-in including:
    • Docker images
    • Binaries on Github release page
    • Binaries on PackageCloud
  2. Tests won't run against Firebird

So for now, if you want Firebird support, you'll need need to build the migrate CLI yourself. There are also no guarantees that the integration will work since we're not testing with Firebird.

This bug might be related to jacobalberty/firebird-docker#33

@kmuratov I fixed and closed that issue last night. I'm curious to know if it fixed the test flakiness for you guys.

@jacobalberty I doubt that your fix will address the issues we've been seeing as FIREBIRD_DATABASE, FIREBIRD_USER, and FIREBIRD_PASSWORD are all specified: https://github.com/golang-migrate/migrate/blob/v4.6.2/database/firebird/firebird_test.go#L35

@dhui there were two fixes, one for specifying FIREBIRD_DATABASE without FIREBIRD_USER and FIREBIRD_PASSWORD, the other was it attempting to continue initialization before firebird had come up, see jacobalberty/firebird-docker@2ff3e3b

The last 2 CI builds didn't have any issues with Firebird, so that's looking good.
Once we have a few more successful builds, we can add official support for Firebird back to migrate!

Fixed in v4.7.0