[DAT-10093] added schema escaping to getColumns call to jdbc metadata classes #2895
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.
Environment
Liquibase Version: 4.11
Database Vendor & Version: all, fix needed for Snowflake
Operating System Type & Version: windows 10
Pull Request Type
https://datical.atlassian.net/browse/DAT-10093
Description
JdbcDatabaseSnapshot doesn't escape percent and underscore characters in schema names for getColumns() calls like it does for getTables (and actually getViews). For Snowflake jdbc classes this cause to dropping schema name from requests completely what causes slow performance.
Steps To Reproduce
According to ticket description need to have Snowflake account with a number of schemas with number of tables and number of columns to clearly see Liquibase hangs for long time performing operations.
Actual Behavior
liquibase slow performance on Snowflake DB.
Expected/Desired Behavior
Performance increase.
Fast Track PR Acceptance Checklist:
Need Help?
Come chat with us in the Liquibase Forum.