Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-28152

Mapped ShortType to SMALLINT and FloatType to REAL for MsSqlServerDialect

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.4.3, 3.0.0
    • 3.0.0
    • SQL
    • None

    Description

      ShortType and FloatTypes are not correctly mapped to right JDBC types when using JDBC connector. This results in tables and spark data frame being created with unintended types. The issue was observed when validating against SQLServer.

      Some example issue

      • Write from df with column type results in a SQL table of with column type as INTEGER as opposed to SMALLINT. Thus a larger table that expected.
      • read results in a dataframe with type INTEGER as opposed to ShortType 

      FloatTypes have a issue with read path. In the write path Spark data type 'FloatType' is correctly mapped to JDBC equivalent data type 'Real'. But in the read path when JDBC data types need to be converted to Catalyst data types ( getCatalystType) 'Real' gets incorrectly gets mapped to 'DoubleType' rather than 'FloatType'.

       

      Attachments

        Issue Links

          Activity

            People

              shivsood Shiv Prashant Sood
              shivsood Shiv Prashant Sood
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: