Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-1348

Failde DCHECK(eos) running query with NOT IN subquery

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • Impala 2.0
    • Impala 2.0
    • None
    • None

    Description

      If the WHERE clause is removed from the query below, there is no crash. As the query is, some data is returned then Impala crashes. I dont see the rewritten query in the INFO log.

      ...
      | 1 |
      | 1 |
      | 1 |
      | 1 |
      +---+
      Error communicating with impalad: TSocket read 0 bytes
      Could not execute command: select 1
      FROM alltypesagg t1
      WHERE t1.int_col NOT IN
          (SELECT tt1.month AS int_col_1
           FROM alltypesagg tt1
           LEFT JOIN alltypestiny tt2 ON tt2.year = tt1.int_col
           WHERE t1.bigint_col = tt2.smallint_col)
      

      stack trace

      (gdb) bt
      #0  0x0000003a0ca32635 in raise () from /lib64/libc.so.6
      #1  0x0000003a0ca33e15 in abort () from /lib64/libc.so.6
      #2  0x0000000001e843b9 in google::DumpStackTraceAndExit () at src/utilities.cc:147
      #3  0x0000000001e7babd in google::LogMessage::Fail () at src/logging.cc:1296
      #4  0x0000000001e7f547 in google::LogMessage::SendToLog (this=0x7fe6ad378830) at src/logging.cc:1250
      #5  0x0000000001e7eaa6 in google::LogMessage::Flush (this=0x7fe6ad378830) at src/logging.cc:1119
      #6  0x0000000001e7f9dd in google::LogMessageFatal::~LogMessageFatal (this=0x7fe6ad378830, __in_chrg=<value optimized out>)
          at src/logging.cc:1817
      #7  0x00000000013d4019 in impala::BufferedTupleStream::GetRows (this=0x5985d00, batch=0x7fe6ad378900, got_rows=0x7fe6ad37890f)
          at /data/9/query-gen/Impala/be/src/runtime/buffered-tuple-stream.cc:438
      #8  0x00000000014c5122 in impala::PartitionedHashJoinNode::EvaluateNullProbe (this=0x628f180, build=0x5985d00)
          at /data/9/query-gen/Impala/be/src/exec/partitioned-hash-join-node.cc:1113
      #9  0x00000000014c6324 in impala::PartitionedHashJoinNode::CleanUpHashPartitions (this=0x628f180, batch=0x360aea0)
          at /data/9/query-gen/Impala/be/src/exec/partitioned-hash-join-node.cc:1209
      #10 0x00000000014c2135 in impala::PartitionedHashJoinNode::GetNext (this=0x628f180, state=0x6586700, out_batch=0x360aea0, eos=0x7e702f9)
          at /data/9/query-gen/Impala/be/src/exec/partitioned-hash-join-node.cc:776
      #11 0x00000000013c1eed in impala::PlanFragmentExecutor::GetNextInternal (this=0x7e701d0, batch=0x7fe6ad378e98)
          at /data/9/query-gen/Impala/be/src/runtime/plan-fragment-executor.cc:478
      #12 0x00000000013c0701 in impala::PlanFragmentExecutor::OpenInternal (this=0x7e701d0)
          at /data/9/query-gen/Impala/be/src/runtime/plan-fragment-executor.cc:343
      #13 0x00000000013c0398 in impala::PlanFragmentExecutor::Open (this=0x7e701d0)
          at /data/9/query-gen/Impala/be/src/runtime/plan-fragment-executor.cc:318
      #14 0x000000000106b6d4 in impala::ImpalaServer::FragmentExecState::Exec (this=0x7e70000)
          at /data/9/query-gen/Impala/be/src/service/fragment-exec-state.cc:49
      #15 0x0000000000f96eec in impala::ImpalaServer::RunExecPlanFragment (this=0x50f6600, exec_state=0x7e70000)
          at /data/9/query-gen/Impala/be/src/service/impala-server.cc:1157
      #16 0x0000000000ffcaf4 in boost::_mfi::mf1<void, impala::ImpalaServer, impala::ImpalaServer::FragmentExecState*>::operator() (
          this=0x69dbc00, p=0x50f6600, a1=0x7e70000) at /usr/include/boost/bind/mem_fn_template.hpp:165
      #17 0x0000000000ffb1d7 in boost::_bi::list2<boost::_bi::value<impala::ImpalaServer*>, boost::_bi::value<impala::ImpalaServer::FragmentExecState*> >::operator()<boost::_mfi::mf1<void, impala::ImpalaServer, impala::ImpalaServer::FragmentExecState*>, boost::_bi::list0> (
          this=0x69dbc10, f=..., a=...) at /usr/include/boost/bind/bind.hpp:313
      #18 0x0000000000ff75d5 in boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ImpalaServer, impala::ImpalaServer::FragmentExecState*>, boost::_bi::list2<boost::_bi::value<impala::ImpalaServer*>, boost::_bi::value<impala::ImpalaServer::FragmentExecState*> > >::operator() (
          this=0x69dbc00) at /usr/include/boost/bind/bind_template.hpp:20
      #19 0x0000000000ff179f in boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf1<void, impala::ImpalaServer, impala::ImpalaServer::FragmentExecState*>, boost::_bi::list2<boost::_bi::value<impala::ImpalaServer*>, boost::_bi::value<impala::ImpalaServer::FragmentExecState*> > >, void>::invoke (function_obj_ptr=...) at /usr/include/boost/function/function_template.hpp:153
      

      code

      Status BufferedTupleStream::GetRows(scoped_ptr<RowBatch>* batch, bool* got_rows) {
        RETURN_IF_ERROR(PinStream(false, got_rows));
        if (!*got_rows) return Status::OK;
        RETURN_IF_ERROR(PrepareForRead());
        batch->reset(
            new RowBatch(desc_, num_rows(), block_mgr_->get_tracker(block_mgr_client_)));
        bool eos = false;
        RETURN_IF_ERROR(GetNext(batch->get(), &eos));
        DCHECK(eos);
      

      Attachments

        Activity

          People

            nong_impala_60e1 Nong Li
            caseyc casey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: