Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-17032

HPL/SQL Comparisons are only supported with strings and integers

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Patch Available
    • Priority: Critical
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: hpl/sql
    • Labels:
      None

      Description

      This bug is part of a series of issues and surprising behavior I encountered writing a reporting script that would aggregate values and give rows different classifications based on an the aggregate. Addressing some or all of these issues would make HPL/SQL more accessible to newcomers.

      In Var.java:

        public int compareTo(Var v) {
          if (this == v) {
            return 0;
          }
          else if (v == null) {
            return -1;
          }
          else if (type == Type.BIGINT && v.type == Type.BIGINT) {
            return ((Long)value).compareTo((Long)v.value);
          }
          else if (type == Type.STRING && v.type == Type.STRING) {
            return ((String)value).compareTo((String)v.value);
          }
          return -1;
        }
      

      It's surprising that comparisons with doubles and decimals (for example) don't work as expected.

      Version = 3.0.0-SNAPSHOT r71f52d8ad512904b3f2c4f04fe39a33f2834f1f2

        Attachments

        1. HIVE-17032.1.patch
          10 kB
          Dmitry Tolpeko

          Activity

            People

            • Assignee:
              dmtolpeko Dmitry Tolpeko
              Reporter:
              cartershanklin Carter Shanklin
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: