Add primary key constraint name comparison#12
Merged
mattbennett merged 2 commits intogianchub:masterfrom Jan 25, 2018
Merged
Conversation
Collaborator
|
@erikced thanks for the PR! Sorry to leave this PR hanging for such a long time. I've just updated the travis configuration so the tests run on their new infrastructure. Do you want to merge master into this branch so the tests run here? |
Change usage of SQLAlchemy's get_primary_keys to get_pk_constraint which returns a dict with 'constrained_columns' containing the primary key fields and optionally 'name' with the name of the pk constraint. Update get_primary_keys_info to compare the entire dicts and apply ignores on the constraint name rather than the key names if a 'name' field exists. If 'name' does not exist, the primary key columns are compared instead.
257d617 to
fdd2cf2
Compare
Contributor
Author
|
@mattbennett done. Unfortunately MySQL/MariaDB does not appear to support constraint names for primary keys so the end-to-end-tests only test the fallback to the current behaviour. |
mattbennett
approved these changes
Jan 25, 2018
Collaborator
mattbennett
left a comment
There was a problem hiding this comment.
Thanks @erikced! I will release this in the next cut.
For the end-to-end tests we can think about adding Postgres or a similar alternative RDBMS, but that can come as a later update
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change usage of SQLAlchemy's
get_primary_keystoget_pk_constraintwhichreturns a dict with
constrained_columnscontaining the primary keyfields and optionally
namewith the name of the pk constraint.Update
get_primary_keys_infoto compare the entire dicts and applyignores on the constraint name rather than the key names if a
namefield exists. If
namedoes not exist, the primary key columns arecompared instead.