Uploaded image for project: 'Tajo'
  1. Tajo
  2. TAJO-549

Worker fails to find some columns when it processes order by queries

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Not A Problem
    • Affects Version/s: None
    • Fix Version/s: 0.8.0
    • Component/s: Physical Operator, Worker
    • Labels:
      None

      Description

      Suppose a following table.

      CREATE TABLE test (totaltime int8, client inet4, cache text, httpcode int4, totalsize int8, method text, requestaddr text, fqdn text) USING CSV;
      

      When I run a query which contains a group by and an order by clauses, a worker returns the java.lang.IllegalStateException: No Such Column Reference error as follows.

      tajo> select client, cache, httpcode, method, requestaddr, fqdn, sum(totalsize) as sum_size, sum(totaltime) as sum_time from test group by client order by sum_size, sum_time;
      
      ,,,
      2014-01-24 15:14:45,951 INFO  worker.Task (Task.java:waitForFetch(344)) - ta_1390543843292_0002_000003_000000_00 All fetches are done!
      2014-01-24 15:14:46,852 ERROR worker.Task (Task.java:run(378)) - java.lang.IllegalStateException: No Such Column Reference: test.cache (TEXT), schema: {(3) test.client (INET4),sum_size (INT8),sum_time (INT8)}
              at org.apache.tajo.engine.eval.FieldEval.eval(FieldEval.java:47)
              at org.apache.tajo.engine.planner.Projector.eval(Projector.java:48)
              at org.apache.tajo.engine.planner.physical.ProjectionExec.next(ProjectionExec.java:63)
              at org.apache.tajo.engine.planner.physical.StoreTableExec.next(StoreTableExec.java:76)
              at org.apache.tajo.worker.Task.run(Task.java:370)
              at org.apache.tajo.worker.TaskRunner$1.run(TaskRunner.java:392)
              at java.lang.Thread.run(Thread.java:701)
      
      2014-01-24 15:14:46,852 INFO  worker.TaskAttemptContext (TaskAttemptContext.java:setState(106)) - Query status of ta_1390543843292_0002_000003_000000_00 is changed to TA_FAILED
      2014-01-24 15:14:46,854 INFO  worker.Task (Task.java:run(430)) - Task Counter - total:4, succeeded: 3, failed: 1
      ,,,
      

        Activity

        Hide
        hyunsik Hyunsik Choi added a comment -

        It is not a worker problem. It's just a validation problem.

        select client, cache, httpcode, method, requestaddr, fqdn, ... group by client ...
        

        Please note that all expressions in select list must appear in the GROUP BY clause or be used in an aggregate function.

        Show
        hyunsik Hyunsik Choi added a comment - It is not a worker problem. It's just a validation problem. select client, cache, httpcode, method, requestaddr, fqdn, ... group by client ... Please note that all expressions in select list must appear in the GROUP BY clause or be used in an aggregate function.
        Hide
        jihoonson Jihoon Son added a comment -

        Oh, sorry. It was my mistake.
        I'll test again.

        Show
        jihoonson Jihoon Son added a comment - Oh, sorry. It was my mistake. I'll test again.
        Hide
        jihoonson Jihoon Son added a comment -

        It works well.
        Sorry for my mistake.

        Show
        jihoonson Jihoon Son added a comment - It works well. Sorry for my mistake.

          People

          • Assignee:
            Unassigned
            Reporter:
            jihoonson Jihoon Son
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development