Uploaded image for project: 'Tajo (Retired)'
  1. Tajo (Retired)
  2. TAJO-1257

ORDER BY with NULL FIRST misses some data

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 0.10.0
    • None
    • None

    Description

      Even with TAJO-904 and TAJO-1239, ORDER BY NULL FIRST misses some data.
      Below test code doesn't pass.
      It seems that this problem comes from misbehaving setMaxRangeIfNull() method in TupleUtil.java, which places NULL in the range by only considering the existence of ASC/DESC.

       
          KeyValueSet tableOptions = new KeyValueSet();
          tableOptions.set(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER);
          tableOptions.set(StorageConstants.TEXT_NULL, "\\\\N");
      
          Schema schema = new Schema();
          schema.addColumn("id", Type.INT4);
          schema.addColumn("name", Type.TEXT);
          String[] data = new String[]{ "1|111", "2|\\N", "3|333" };
          TajoTestingCluster.createTable("table11", schema, tableOptions, data, 1);
      
          try {
            ResultSet res = executeString("select * from table11 order by name null first");
            String ascExpected = "id,name\n" +
                "-------------------------------\n" +
                "2,null\n" +
                "1,111\n" +
                "3,333\n";
      
            assertEquals(ascExpected, resultSetToString(res));
            res.close();
      
          } finally {
            executeString("DROP TABLE table11 PURGE");
          }
      

      Attachments

        Activity

          People

            sirpkt Keuntae Park
            sirpkt Keuntae Park
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: