Skip to content

Commit

Permalink
#482 Fix reading descriptions for quoted tables.
Browse files Browse the repository at this point in the history
  • Loading branch information
yruslan committed Sep 5, 2024
1 parent 2f0201a commit c1ab32b
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,11 @@ class TableReaderJdbc(jdbcReaderConfig: TableReaderJdbcConfig,
JdbcSparkUtils.withJdbcMetadata(jdbcReaderConfig.jdbcConfig, sql) { (connection, jdbcMetadata) =>
val schemaWithMetadata = JdbcSparkUtils.addMetadataFromJdbc(df.schema, jdbcMetadata)
val schemaWithColumnDescriptions = tableOpt match {
case Some(table) => JdbcSparkUtils.addColumnDescriptionsFromJdbc(schemaWithMetadata, table, connection)
case None => schemaWithMetadata
case Some(table) =>
log.info(s"Reading JDBC metadata descriptions the table: $table")
JdbcSparkUtils.addColumnDescriptionsFromJdbc(schemaWithMetadata, sqlGen.unquote(table), connection)
case None =>
schemaWithMetadata
}
df = spark.createDataFrame(df.rdd, schemaWithColumnDescriptions)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,12 +88,13 @@ class TableReaderJdbcNative(jdbcReaderConfig: TableReaderJdbcConfig,
}

if (jdbcReaderConfig.enableSchemaMetadata) {
JdbcSparkUtils.withJdbcMetadata(jdbcReaderConfig.jdbcConfig, sql) { (connection, jdbcMetadata) =>
JdbcSparkUtils.withJdbcMetadata(jdbcReaderConfig.jdbcConfig, sql) { (connection, _) =>
val schemaWithColumnDescriptions = tableOpt match {
case Some(table) =>
log.info(s"Reading JDBC metadata descriptions the query: $sql")
JdbcSparkUtils.addColumnDescriptionsFromJdbc(df.schema, table, connection)
case None => df.schema
log.info(s"Reading JDBC metadata descriptions the table: $table")
JdbcSparkUtils.addColumnDescriptionsFromJdbc(df.schema, sqlGen.unquote(table), connection)
case None =>
df.schema
}
df = spark.createDataFrame(df.rdd, schemaWithColumnDescriptions)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ import za.co.absa.pramen.core.utils.impl.JdbcFieldMetadata

import java.sql.{Connection, DatabaseMetaData, ResultSet, ResultSetMetaData}
import scala.collection.mutable.ListBuffer
import scala.util.control.NonFatal

object JdbcSparkUtils {
private val log = LoggerFactory.getLogger(this.getClass)
Expand Down

0 comments on commit c1ab32b

Please sign in to comment.