Repository: incubator-gobblin Updated Branches: refs/heads/master 9a3aee8e5 -> a838b4d6d
[GOBBLIN-422] SQLServer source allows disabling append of database name. Closes #2315 from ibuenros/fix-sqlserver-dbname Project: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/commit/a838b4d6 Tree: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/tree/a838b4d6 Diff: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/diff/a838b4d6 Branch: refs/heads/master Commit: a838b4d6dfff3b799eea5dc1822a00661325e13f Parents: 9a3aee8e Author: ibuenros <[email protected]> Authored: Fri Mar 23 14:32:30 2018 -0700 Committer: Hung Tran <[email protected]> Committed: Fri Mar 23 14:32:30 2018 -0700 ---------------------------------------------------------------------- .../apache/gobblin/configuration/ConfigurationKeys.java | 2 ++ .../apache/gobblin/source/jdbc/SqlServerExtractor.java | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/a838b4d6/gobblin-api/src/main/java/org/apache/gobblin/configuration/ConfigurationKeys.java ---------------------------------------------------------------------- diff --git a/gobblin-api/src/main/java/org/apache/gobblin/configuration/ConfigurationKeys.java b/gobblin-api/src/main/java/org/apache/gobblin/configuration/ConfigurationKeys.java index 70459a2..71d78a9 100644 --- a/gobblin-api/src/main/java/org/apache/gobblin/configuration/ConfigurationKeys.java +++ b/gobblin-api/src/main/java/org/apache/gobblin/configuration/ConfigurationKeys.java @@ -520,6 +520,8 @@ public class ConfigurationKeys { public static final String ENABLE_DELIMITED_IDENTIFIER = "enable.delimited.identifier"; public static final boolean DEFAULT_ENABLE_DELIMITED_IDENTIFIER = false; + public static final String SQL_SERVER_CONNECTION_PARAMETERS = "source.querybased.sqlserver.connectionParameters"; + /** * Configuration properties used by the FileBasedExtractor */ http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/a838b4d6/gobblin-modules/gobblin-sql/src/main/java/org/apache/gobblin/source/jdbc/SqlServerExtractor.java ---------------------------------------------------------------------- diff --git a/gobblin-modules/gobblin-sql/src/main/java/org/apache/gobblin/source/jdbc/SqlServerExtractor.java b/gobblin-modules/gobblin-sql/src/main/java/org/apache/gobblin/source/jdbc/SqlServerExtractor.java index 4e698b7..b6984e6 100644 --- a/gobblin-modules/gobblin-sql/src/main/java/org/apache/gobblin/source/jdbc/SqlServerExtractor.java +++ b/gobblin-modules/gobblin-sql/src/main/java/org/apache/gobblin/source/jdbc/SqlServerExtractor.java @@ -187,9 +187,18 @@ public class SqlServerExtractor extends JdbcExtractor { public String getConnectionUrl() { String host = this.workUnitState.getProp(ConfigurationKeys.SOURCE_CONN_HOST_NAME); String port = this.workUnitState.getProp(ConfigurationKeys.SOURCE_CONN_PORT); + String parameters = + this.workUnitState.getProp(ConfigurationKeys.SQL_SERVER_CONNECTION_PARAMETERS); + + // For backwards compatibility, need to allow using SOURCE_QUERYBASED_SCHEMA to specify db name + // This is highly discouraged, as this property is overloaded String database = this.workUnitState.getProp(ConfigurationKeys.SOURCE_QUERYBASED_SCHEMA); + if (parameters == null && !StringUtils.isEmpty(database)) { + parameters = "databaseName=" + database; + } + String url = "jdbc:sqlserver://" + host.trim() + ":" + port + - (StringUtils.isEmpty(database) ? "" : (";databaseName=" + database.trim())); + (StringUtils.isEmpty(parameters) ? "" : (";" + parameters.trim())); return url; }
