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

Added support for AWS Redshift #743

Merged
merged 5 commits into from May 20, 2014
Merged

Added support for AWS Redshift #743

merged 5 commits into from May 20, 2014

Conversation

@nathanvick
Copy link
Contributor

@nathanvick nathanvick commented Apr 29, 2014

I added support for Redshift, issue #661, and ran some basic tests. This is based on Marc-André's fork (https://github.com/mapoulin/flyway), but applied to flyway 3, with the following differences:

  • RedshiftSchema.doAllTables was simplified because Redshift does not support inheritance
  • The RedshiftTable.doLock was modified to avoid a deadlock
  • The DbSupportFactory no longer depends on a hard-coded substring of the host name (redshift.amazonaws.com)
@nathanvick nathanvick mentioned this pull request Apr 29, 2014
Nathan Vick added 2 commits Apr 29, 2014
…e parameterization.

The super class Schema ...changed to... Schema<S extends DbSupport>
try {
return jdbcTemplate.queryForInt("select count(*) from information_schema.tables where table_schema = 'pg_catalog' and table_name = 'stl_s3client'") > 0;
} catch (SQLException e) {
e.printStackTrace();
Copy link
Contributor

@axelfontaine axelfontaine Apr 30, 2014

Could you use a logger here instead? The abstraction is essential for playing well with the various clients.

@nathanvick
Copy link
Contributor Author

@nathanvick nathanvick commented Apr 30, 2014

Yes, of course! I hadn't come across the logging abstraction used in flyway (slf4j?) when I wrote that, and I meant to follow up on it :)

@axelfontaine
Copy link
Contributor

@axelfontaine axelfontaine commented Apr 30, 2014

Flyway uses its own logging abstraction. There are two reasons behind this:

  • Zero-required dependencies for flyway-core
  • Perfect integration with JDK logging, commons-logging, slf4j, Android, Maven, Ant, Gradle and SBT

Not your everyday requirements :-)

@axelfontaine
Copy link
Contributor

@axelfontaine axelfontaine commented Apr 30, 2014

Same questions as for Vertica:

  • Would you be willing to support this in the future if issues come up?
  • Could you also contribute a pull request for the docs?

Cheers and thanks again!
Axel

@nathanvick
Copy link
Contributor Author

@nathanvick nathanvick commented Apr 30, 2014

I'd be happy to fix the Redshift support if issues come up, but how will I be alerted?

I'll work on the docs for Vertica and Redshift this weekend, in separate branches of my fork of flywaydb.org.

@axelfontaine
Copy link
Contributor

@axelfontaine axelfontaine commented Apr 30, 2014

That should not be a problem. I'll do the initial triage, tag the issue with Redshift or Vertica and ping with you an @nathanvick message if it needs your attention :-)

@axelfontaine axelfontaine added this to the Flyway 3.1 milestone Apr 30, 2014
Nathan Vick added 2 commits Apr 30, 2014
Also removed trailing spaces, added trailing line feed at EOF
@nathanvick
Copy link
Contributor Author

@nathanvick nathanvick commented Apr 30, 2014

Axel, I replaced e.printStackTrace() with flyway's logging abstraction, per your request.

@axelfontaine axelfontaine merged commit 04393ff into flyway:master May 20, 2014
1 check passed
@axelfontaine
Copy link
Contributor

@axelfontaine axelfontaine commented May 20, 2014

Thanks again! Merged.

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

Successfully merging this pull request may close these issues.

None yet

2 participants