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;
   }
 

Reply via email to