Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-2321

The type of a union of CHAR columns of different lengths should be VARCHAR (based on a conformance setting)

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.17.0
    • core
    • None

    Description

      The shouldRaggedFixedLengthValueUnionBeVariable() function in SqlTypeFactoryImpl always return false now. It is good to make it configurable since some system may need the function to return true to provide pragmatic behavior. For example, for the sql: case 1 when 1 then 'a' when 2 then 'bcd' end, we need the return value to be 'a' instead of 'a ' of CHAR(3).

      I see one option to solve this issue: Add boolean shouldRaggedFixedLengthValueUnionBeVariable() in RelDataTypeSystem, so external system can override to configure the value.

      Any suggestions are welcomed. Thanks a lot.

      Attachments

        Issue Links

          Activity

            People

              hequn8128 Hequn Cheng
              hequn8128 Hequn Cheng
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: