gaborgsomogyi commented on a change in pull request #27637: [SPARK-30874][SQL] 
Support Postgres Kerberos login in JDBC connector
URL: https://github.com/apache/spark/pull/27637#discussion_r386579806
 
 

 ##########
 File path: 
sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/jdbc/JDBCOptions.scala
 ##########
 @@ -187,6 +190,22 @@ class JDBCOptions(
 
   // An option to allow/disallow pushing down predicate into JDBC data source
   val pushDownPredicate = parameters.getOrElse(JDBC_PUSHDOWN_PREDICATE, 
"true").toBoolean
+
+  // The local path of user's keytab file, which is assumed to be pre-uploaded 
to all nodes either
+  // by --files option of spark-submit or manually
+  val keytab = {
+    val keytabParam = parameters.getOrElse(JDBC_KEYTAB, null)
+    if (keytabParam != null && FilenameUtils.getPath(keytabParam).isEmpty) {
+      val result = SparkFiles.get(keytabParam)
+      logDebug(s"Keytab path found, assuming --files, file name used on 
executor: $result")
 
 Review comment:
   I've tested it with standalone and worked:
   ```
   20/03/02 19:46:10 INFO SharedState: Warehouse path is 
'file:/Users/gaborsomogyi/spark/spark-warehouse/'.
   Debug is  true storeKey false useTicketCache false useKeyTab true 
doNotPrompt false ticketCache is null isInitiator true KeyTab is 
/private/var/folders/jd/35_sh46s7zq0qc6khfw8hc800000gn/T/spark-31f93ae3-6ca5-42cb-9d52-a6b208abe525/userFiles-10b95f82-3956-448d-a8a8-ef54369757a7/user.keytab
 refreshKrb5Config is false principal is user/[email protected] 
tryFirstPass is false useFirstPass is false storePass is false clearPass is 
false
   principal is user/[email protected]
   Will use keytab
   Commit Succeeded 
   
   Found ticket for user/[email protected] to go to 
krbtgt/[email protected] expiring on Tue Mar 03 19:46:11 CET 2020
   Entered Krb5Context.initSecContext with state=STATE_NEW
   ```
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to