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

Support ANY type with binary compare / arithmetic operators

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.11.0
    • Component/s: core
    • Labels:
      None

      Description

      Currently Calcite doesn't support applying binary compare / arithmetic operators with ANY type. One of example is CollectionTypeTest.testAccessNestedMapWithAnyTypeWithoutCast(). Without explicit casting, it can't find the matching backup method, and complaining there's no SqlFunctions.eq(Object, int).

      There seems to several ways to resolve this, but at least we don't want to make operator backup method for every combination of types. Needs to avoid this approach.

      When we're addressing this by having backup method, since we don't know the runtime type for ANY type, even if we succeed to call backup method with (Object, Object) parameters, two types can be different. This is OK for other types, but not Number types. This should be well cared, too.

        Attachments

          Activity

            People

            • Assignee:
              kabhwan Jungtaek Lim
              Reporter:
              kabhwan Jungtaek Lim
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: