| <?xml version="1.0" encoding="UTF-8"?><!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
| <concept rev="ver" id="fixed_issues"> |
| |
| <title><ph audience="standalone">Fixed Issues in Apache Impala</ph><ph audience="integrated">Fixed Issues in Apache Impala</ph></title> |
| <prolog> |
| <metadata> |
| <data name="Category" value="Impala"/> |
| <data name="Category" value="Release Notes"/> |
| <data name="Category" value="Fixed Issues"/> |
| <data name="Category" value="Troubleshooting"/> |
| <data name="Category" value="Upgrading"/> |
| <data name="Category" value="Data Analysts"/> |
| <data name="Category" value="Developers"/> |
| <data name="Category" value="Data Analysts"/> |
| </metadata> |
| </prolog> |
| |
| <conbody> |
| |
| <p> |
| The following sections describe the major issues fixed in each Impala release. |
| </p> |
| |
| <p> |
| For known issues that are currently unresolved, see <xref href="impala_known_issues.xml#known_issues"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| <!-- All 3.1.x subsections go under here --> |
| <concept rev="3.1.0" id="fixed_issues_3_1_0"> |
| <title>Issues Fixed in <keyword keyref="impala31"/></title> |
| <conbody> |
| <p> For the full list of issues closed in this release, including bug |
| fixes, see the <xref keyref="changelog_31">changelog for <keyword |
| keyref="impala31"/></xref>. </p> |
| </conbody> |
| </concept> |
| <!-- All 3.0.x subsections go under here --> |
| <concept rev="3.0.0" id="fixed_issues_3_0_0"> |
| <title>Issues Fixed in <keyword keyref="impala30"/></title> |
| <conbody> |
| <p> For the full list of issues closed in this release, including bug |
| fixes, see the <xref keyref="changelog_300">changelog for <keyword |
| keyref="impala30"/></xref>. </p> |
| </conbody> |
| </concept> |
| |
| <!-- All 2.12.x subsections go under here --> |
| |
| <concept rev="2.12.0" id="fixed_issues_2_12_0"> |
| |
| <title>Issues Fixed in <keyword keyref="impala212"/></title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of issues closed in this release, including bug fixes, |
| see the <xref keyref="changelog_212">changelog for <keyword keyref="impala212"/></xref>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.11.x subsections go under here --> |
| |
| <concept rev="2.11.0" id="fixed_issues_2_11_0"> |
| |
| <title>Issues Fixed in <keyword keyref="impala211"/></title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of issues closed in this release, including bug fixes, |
| see the <xref keyref="changelog_211">changelog for <keyword keyref="impala211"/></xref>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.10.x subsections go under here --> |
| |
| <concept rev="2.10.0" id="fixed_issues_2100"> |
| |
| <title>Issues Fixed in <keyword keyref="impala210"/></title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of issues closed in this release, including bug fixes, |
| see the <xref keyref="changelog_210">changelog for <keyword keyref="impala210"/></xref>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.9.x subsections go under here --> |
| |
| <concept rev="2.9.0" id="fixed_issues_290"> |
| |
| <title>Issues Fixed in <keyword keyref="impala290"/></title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of issues closed in this release, including bug fixes, |
| see the <xref keyref="changelog_29">changelog for <keyword keyref="impala29"/></xref>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.8.x subsections go under here --> |
| |
| <concept rev="2.8.0" id="fixed_issues_280"> |
| |
| <title>Issues Fixed in <keyword keyref="impala280"/></title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of Impala fixed issues in <keyword keyref="impala28_full"/>, see |
| <xref keyref="jira_list_280"/>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.7.x subsections go under here --> |
| |
| <concept rev="2.7.0" id="fixed_issues_270"> |
| |
| <title>Issues Fixed in <keyword keyref="impala270"/></title> |
| |
| <conbody> |
| |
| <p> |
| <!-- |
| The following list contains the most critical fixed issues |
| (<codeph>priority='Blocker'</codeph>) from the JIRA system. |
| --> |
| For the full list of Impala fixed issues in Impala 2.7.0, see |
| <xref keyref="jira_list_270"/>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <!-- All 2.6.x subsections go under here --> |
| |
| <concept rev="2.6.3" id="fixed_issues_263"> |
| <title>Issues Fixed in <keyword keyref="impala263"/></title> |
| <conbody> |
| <p></p> |
| </conbody> |
| </concept> |
| |
| <concept rev="2.6.2" id="fixed_issues_262"> |
| <title>Issues Fixed in <keyword keyref="impala262"/></title> |
| <conbody> |
| <p></p> |
| </conbody> |
| </concept> |
| |
| <concept rev="2.6.0" id="fixed_issues_260"> |
| |
| <title>Issues Fixed in <keyword keyref="impala260"/></title> |
| |
| <conbody> |
| |
| <p> |
| The following list contains the most critical fixed issues |
| (<codeph>priority='Blocker'</codeph>) from the JIRA system. |
| For the full list of fixed issues in <keyword keyref="impala260"/>, see |
| <xref keyref="jira_list_260"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-3385"> |
| <title>RuntimeState::error_log_ crashes</title> |
| <conbody> |
| <p> |
| A crash could occur, with stack trace pointing to <codeph>impala::RuntimeState::ErrorLog</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3385">IMPALA-3385</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3378"> |
| <title>HiveUdfCall::Open() produces unsynchronized access to JniUtil::global_refs_ vector</title> |
| <conbody> |
| <p> |
| A crash could occur because of contention between multiple calls to Java UDFs. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3378">IMPALA-3378</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3379"> |
| <title>HBaseTableWriter::CreatePutList() produces unsynchronized access to JniUtil::global_refs_ vector</title> |
| <conbody> |
| <p> |
| A crash could occur because of contention between multiple concurrent statements writing to HBase. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3379">IMPALA-3379</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3317"> |
| <title>Stress test failure: sorter.cc:745] Check failed: i == 0 (1 vs. 0) </title> |
| <conbody> |
| <p> |
| A crash or wrong results could occur if the spill-to-disk mechanism encountered a zero-length string at |
| the very end of a data block. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3317">IMPALA-3317</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3311"> |
| <title>String data coming out of agg can be corrupted by blocking operators</title> |
| <conbody> |
| <p> |
| If a query plan contains an aggregation node producing string values anywhere within a subplan |
| (that is,if in the SQL statement, the aggregate function appears within an inline view over a collection column), |
| the results of the aggregation may be incorrect. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3311">IMPALA-3311</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3269"> |
| <title>CTAS with subquery throws AuthzException</title> |
| <conbody> |
| <p> |
| A <codeph>CREATE TABLE AS SELECT</codeph> operation could fail with an authorization error, |
| due to a slight difference in the privilege checking for the CTAS operation. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3269">IMPALA-3269</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3237"> |
| <title>Crash on inserting into table with binary and parquet</title> |
| <conbody> |
| <p> |
| Impala incorrectly allowed <codeph>BINARY</codeph> to be specified as a column type, |
| resulting in a crash during a write to a Parquet table with a column of that type. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3237">IMPALA-3237</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3105"> |
| <title>RowBatch::MaxTupleBufferSize() calculation incorrect, may lead to memory corruption</title> |
| <conbody> |
| <p> |
| A crash could occur while querying tables with very large rows, for example wide tables with many |
| columns or very large string values. This problem was identified in Impala 2.3, but had low |
| reproducibility in subsequent releases. The fix ensures the memory allocation size is correct. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3105">IMPALA-3105</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3494"> |
| <title>Thrift buffer overflows when serialize more than 3355443200 bytes in impala</title> |
| <conbody> |
| <p> |
| A very large memory allocation within the <cmdname>catalogd</cmdname> daemon could exceed an internal Thrift limit, |
| causing a crash. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3494">IMPALA-3494</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3314"> |
| <title>Altering table partition's storage format is not working and crashing the daemon</title> |
| <conbody> |
| <p> |
| If a partitioned table used a file format other than Avro, and the file format of an individual partition |
| was changed to Avro, subsequent queries could encounter a crash. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3314">IMPALA-3314</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3798"> |
| <title>Race condition may cause scanners to spin with runtime filters on Avro or Sequence files</title> |
| <conbody> |
| <p> |
| A timing problem during runtime filter processing could cause queries against Avro or SequenceFile tables |
| to hang. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3798">IMPALA-3798</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| <!-- All 2.5.x subsections go under here --> |
| |
| <concept rev="2.5.4" id="fixed_issues_254"> |
| <title>Issues Fixed in <keyword keyref="impala254"/></title> |
| <conbody> |
| <p></p> |
| </conbody> |
| </concept> |
| |
| <concept rev="2.5.2" id="fixed_issues_252"> |
| <title>Issues Fixed in <keyword keyref="impala252"/></title> |
| <conbody> |
| <p></p> |
| </conbody> |
| </concept> |
| |
| <concept rev="2.5.1" id="fixed_issues_251"> |
| |
| <title>Issues Fixed in <keyword keyref="impala251"/></title> |
| |
| <conbody> |
| <p></p> |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.5.0" id="fixed_issues_250"> |
| |
| <title>Issues Fixed in <keyword keyref="impala250"/></title> |
| |
| <conbody> |
| |
| <p> |
| The following list contains the most critical issues (<codeph>priority='Blocker'</codeph>) from the JIRA system. |
| For the full list of fixed issues in <keyword keyref="impala25_full"/>, see |
| <xref keyref="jira_list_250"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-2683"> |
| <title>Stress test hit assert in LLVM: external function could not be resolved</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2683">IMPALA-2683</xref></p> |
| <p>The stress test was running a build with the TPC-H, TPC-DS, and TPC-H nested queries with scale factor 3.</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2365"> |
| <title>Impalad is crashing if udf jar is not available in hdfs location for first time</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2365">IMPALA-2365</xref></p> |
| <p> |
| If a UDF JAR was not available in the HDFS location specified in the <codeph>CREATE FUNCTION</codeph> statement, |
| the <cmdname>impalad</cmdname> daemon could crash. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2535-570"> |
| <title>PAGG hits mem_limit when switching to I/O buffers</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2535">IMPALA-2535</xref></p> |
| <p> |
| A join query could fail with an out-of-memory error despite the apparent presence of sufficient memory. |
| The cause was the internal ordering of operations that could cause a later phase of the query to |
| allocate memory required by an earlier phase of the query. The workaround was to either increase |
| or decrease the <codeph>MEM_LIMIT</codeph> query option, because the issue would only occur for a specific |
| combination of memory limit and data volume. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2643-570"> |
| <title>Prevent migrating incorrectly inferred identity predicates into inline views</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2643">IMPALA-2643</xref></p> |
| <p> |
| Referring to the same column twice in a view definition could cause the view to omit |
| rows where that column contained a <codeph>NULL</codeph> value. This could cause |
| incorrect results due to an inaccurate <codeph>COUNT(*)</codeph> value or rows missing |
| from the result set. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1459-570"> |
| <title>Fix migration/assignment of On-clause predicates inside inline views</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1459">IMPALA-1459</xref></p> |
| <p> |
| Some combinations of <codeph>ON</codeph> clauses in join queries could result in comparisons |
| being applied at the wrong stage of query processing, leading to incorrect results. |
| Wrong predicate assignment could happen under the following conditions: |
| </p> |
| <ul> |
| <li> |
| The query includes an inline view that contains an outer join. |
| </li> |
| <li> |
| That inline view is joined with another table in the enclosing query block. |
| </li> |
| <li> |
| That join has an <codeph>ON</codeph> clause containing a predicate that |
| only references columns originating from the outer-joined tables inside the inline view. |
| </li> |
| </ul> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2093"> |
| <title>Wrong plan of NOT IN aggregate subquery when a constant is used in subquery predicate</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2093">IMPALA-2093</xref></p> |
| <p> |
| <codeph>IN</codeph> subqueries might return wrong results if the left-hand side of the <codeph>IN</codeph> is a constant. |
| For example: |
| </p> |
| <codeblock> |
| select * from alltypestiny t1 |
| where 10 not in (select sum(int_col) from alltypestiny); |
| </codeblock> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2940"> |
| <title>Parquet DictDecoders accumulate throughout query</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2940">IMPALA-2940</xref></p> |
| <p> |
| Parquet dictionary decoders can accumulate throughout query execution, leading to excessive memory usage. One decoder is created per-column per-split. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3056"> |
| <title>Planner doesn't set the has_local_target field correctly</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3056">IMPALA-3056</xref></p> |
| |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2742"> |
| <title>MemPool allocation growth behavior</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2742">IMPALA-2742</xref></p> |
| <p> |
| Currently, the MemPool would always double the size of the last allocation. |
| This can lead to bad behavior if the MemPool transferred the ownership of all its data |
| except the last chunk. In the next allocation, the next allocated chunk would double |
| the size of this large chunk, which can be undesirable. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-3035"> |
| <title>Drop partition operations don't follow the catalog's locking protocol</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3035">IMPALA-3035</xref></p> |
| <p> |
| The <codeph>CatalogOpExecutor.alterTableDropPartition()</codeph> function violates |
| the locking protocol used in the catalog that requires <codeph>catalogLock_</codeph> |
| to be acquired before any table-level lock. That may cause deadlocks when <codeph>ALTER TABLE DROP PARTITION</codeph> |
| is executed concurrently with other DDL operations. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2215"> |
| <title>HAVING clause without aggregation not applied properly</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2215">IMPALA-2215</xref></p> |
| <p> |
| A query with a <codeph>HAVING</codeph> clause but no <codeph>GROUP BY</codeph> clause was not being rejected, |
| despite being invalid syntax. For example: |
| </p> |
| |
| <codeblock> |
| select case when 1=1 then 'didit' end as c1 from (select 1 as one) a having 1!=1; |
| </codeblock> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2914"> |
| <title>Hit DCHECK Check failed: HasDateOrTime()</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2914">IMPALA-2914</xref></p> |
| <p> |
| <codeph>TimestampValue::ToTimestampVal()</codeph> requires a valid <codeph>TimestampValue</codeph> as input. |
| This requirement was not enforced in some places, leading to serious errors. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2986"> |
| <title>Aggregation spill loop gives up too early leading to mem limit exceeded errors</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2986">IMPALA-2986</xref></p> |
| <p> |
| An aggregation query could fail with an out-of-memory error, despite sufficient memory being reported as available. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2592"> |
| <title>DataStreamSender::Channel::CloseInternal() does not close the channel on an error.</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2592">IMPALA-2592</xref></p> |
| <p> |
| Some queries do not close an internal communication channel on an error. |
| This will cause the node on the other side of the channel to wait indefinitely, causing the query to hang. |
| For example, this issue could happen on a Kerberos-enabled system if the credential cache was outdated. |
| Although the affected query hangs, the <cmdname>impalad</cmdname> daemons continue processing other queries. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2184"> |
| <title>Codegen does not catch exceptions in FROM_UNIXTIME()</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2184">IMPALA-2184</xref></p> |
| <p> |
| Querying for the min or max value of a timestamp cast from a bigint via <codeph>from_unixtime()</codeph> |
| fails silently and crashes instances of <cmdname>impalad</cmdname> when the input includes a value outside of the valid range. |
| </p> |
| |
| <p><b>Workaround:</b> Disable native code generation with:</p> |
| <codeblock> |
| SET disable_codegen=true; |
| </codeblock> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2788"> |
| <title>Impala returns wrong result for function 'conv(bigint, from_base, to_base)'</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2788">IMPALA-2788</xref></p> |
| <p> |
| Impala returns wrong result for function <codeph>conv()</codeph>. |
| Function <codeph>conv(bigint, from_base, to_base)</codeph> returns an correct result, |
| while <codeph>conv(string, from_base, to_base)</codeph> returns the correct value. |
| For example: |
| </p> |
| |
| <codeblock> |
| <![CDATA[ |
| select 2061013007, conv(2061013007, 16, 10), conv('2061013007', 16, 10); |
| +------------+--------------------------+----------------------------+ |
| | 2061013007 | conv(2061013007, 16, 10) | conv('2061013007', 16, 10) | |
| +------------+--------------------------+----------------------------+ |
| | 2061013007 | 1627467783 | 139066421255 | |
| +------------+--------------------------+----------------------------+ |
| Fetched 1 row(s) in 0.65s |
| |
| select 2061013007, conv(cast(2061013007 as bigint), 16, 10), conv('2061013007', 16, 10); |
| +------------+------------------------------------------+----------------------------+ |
| | 2061013007 | conv(cast(2061013007 as bigint), 16, 10) | conv('2061013007', 16, 10) | |
| +------------+------------------------------------------+----------------------------+ |
| | 2061013007 | 1627467783 | 139066421255 | |
| +------------+------------------------------------------+----------------------------+ |
| |
| select 2061013007, conv(cast(2061013007 as string), 16, 10), conv('2061013007', 16, 10); |
| +------------+------------------------------------------+----------------------------+ |
| | 2061013007 | conv(cast(2061013007 as string), 16, 10) | conv('2061013007', 16, 10) | |
| +------------+------------------------------------------+----------------------------+ |
| | 2061013007 | 139066421255 | 139066421255 | |
| +------------+------------------------------------------+----------------------------+ |
| |
| select 2061013007, conv(cast(cast(2061013007 as decimal(20,0)) as bigint), 16, 10), conv('2061013007', 16, 10); |
| +------------+-----------------------------------------------------------------+----------------------------+ |
| | 2061013007 | conv(cast(cast(2061013007 as decimal(20,0)) as bigint), 16, 10) | conv('2061013007', 16, 10) | |
| +------------+-----------------------------------------------------------------+----------------------------+ |
| | 2061013007 | 1627467783 | 139066421255 | |
| +------------+-----------------------------------------------------------------+----------------------------+ |
| ]]> |
| </codeblock> |
| |
| <p><b>Workaround:</b> |
| Cast the value to string and use <codeph>conv(string, from_base, to_base)</codeph> for conversion. |
| </p> |
| </conbody> |
| </concept> |
| |
| <!-- I think this issue is marked incorrectly in JIRA. It arose during the 5.7 development cycle, it's not a |
| customer-facing issue. |
| <concept id="IMPALA-3039"> |
| <title>Restrict the number of runtime filters generated</title> |
| <conbody> |
| <p><b>Bug:</b> <xref keyref="IMPALA-3039">IMPALA-3039</xref></p> |
| <p> |
| Large queries with many runtime filters might fail for various reasons, such as memory for Thrift data structures |
| not being accounted for. |
| Having to disable all runtime filters to make a query run is not desirable. |
| The new <codeph>MAX_NUM_RUNTIME_FILTERS</codeph> query option specifies an upper bound |
| on the number of runtime filters generated for a query. |
| </p> |
| </conbody> |
| </concept> |
| --> |
| |
| </concept> |
| |
| <!-- All 2.4.x subsections go under here --> |
| |
| <concept rev="2.4.1" id="fixed_issues_241"> |
| |
| <title>Issues Fixed in <keyword keyref="impala241"/></title> |
| |
| <conbody> |
| <p> |
| </p> |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.4.0" id="fixed_issues_240"> |
| |
| <title>Issues Fixed in <keyword keyref="impala240"/></title> |
| |
| <conbody> |
| |
| <p> |
| The set of fixes for Impala in <keyword keyref="impala240"/> is the same as |
| in <keyword keyref="impala232"/>. |
| <!-- See <xref href="impala_fixed_issues.xml#fixed_issues_232"/> for details. --> |
| </p> |
| |
| </conbody> |
| |
| </concept> |
| |
| <!-- All 2.3.x subsections go under here --> |
| |
| <concept rev="2.3.4" id="fixed_issues_234"> |
| |
| <title>Issues Fixed in <keyword keyref="impala234"/></title> |
| |
| <conbody> |
| <p></p> |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.3.2" id="fixed_issues_232"> |
| |
| <title>Issues Fixed in <keyword keyref="impala232"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most serious or frequently encountered customer |
| issues fixed in <keyword keyref="impala232"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-2829"> |
| <title>SEGV in AnalyticEvalNode touching NULL input_stream_</title> |
| <conbody> |
| <p> |
| A query involving an analytic function could encounter a serious error. |
| This issue was encountered infrequently, depending upon specific combinations |
| of queries and data. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2829">IMPALA-2829</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2722"> |
| <title>Free local allocations per row batch in non-partitioned AGG and HJ</title> |
| <conbody> |
| <p> |
| An outer join query could fail unexpectedly with an out-of-memory error |
| when the <q>spill to disk</q> mechanism was turned off. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2722">IMPALA-2722</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2612"> |
| <!-- In this case, the title from the spreadsheet is clearer than the original JIRA title. --> |
| <title>Free local allocations once for every row batch when building hash tables</title> |
| <conbody> |
| <p> |
| A join query could encounter a serious error due to an internal failure to allocate memory, which |
| resulted in dereferencing a <codeph>NULL</codeph> pointer. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2612">IMPALA-2612</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2643"> |
| <title>Prevent migrating incorrectly inferred identity predicates into inline views</title> |
| <conbody> |
| <p> |
| Referring to the same column twice in a view definition could cause the view to omit |
| rows where that column contained a <codeph>NULL</codeph> value. This could cause |
| incorrect results due to an inaccurate <codeph>COUNT(*)</codeph> value or rows missing |
| from the result set. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2643">IMPALA-2643</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2695"> |
| <title>Fix GRANTs on URIs with uppercase letters</title> |
| <conbody> |
| <p> |
| A <codeph>GRANT</codeph> statement for a URI could be ineffective if the URI |
| contained uppercase letters, for example in an uppercase directory name. |
| Subsequent statements, such as <codeph>CREATE EXTERNAL TABLE</codeph> |
| with a <codeph>LOCATION</codeph> clause, could fail with an authorization exception. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2695">IMPALA-2695</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2664-552"> |
| <title id="IMPALA-2648-552">Avoid sending large partition stats objects over thrift</title> |
| <conbody> |
| <p> |
| The <cmdname>catalogd</cmdname> daemon could encounter a serious error |
| when loading the incremental statistics metadata for tables with large |
| numbers of partitions and columns. The problem occurred when the |
| internal representation of metadata for the table exceeded 2 |
| GB, for example in a table with 20K partitions and 77 columns. The fix causes a |
| <codeph>COMPUTE INCREMENTAL STATS</codeph> operation to fail if it |
| would produce metadata that exceeded the maximum size. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2664">IMPALA-2664</xref>, |
| <xref keyref="IMPALA-2648">IMPALA-2648</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2226"> |
| <title>Throw AnalysisError if table properties are too large (for the Hive metastore)</title> |
| <conbody> |
| <p> |
| <codeph>CREATE TABLE</codeph> or <codeph>ALTER TABLE</codeph> statements could fail with |
| metastore database errors due to length limits on the <codeph>SERDEPROPERTIES</codeph> and <codeph>TBLPROPERTIES</codeph> clauses. |
| (The limit on key size is 256, while the limit on value size is 4000.) The fix makes Impala handle these error conditions |
| more cleanly, by detecting too-long values rather than passing them to the metastore database. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2226">IMPALA-2226</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2273-552"> |
| <title>Make MAX_PAGE_HEADER_SIZE configurable</title> |
| <conbody> |
| <p> |
| Impala could fail to access Parquet data files with page headers larger than 8 MB, which could |
| occur, for example, if the minimum or maximum values for a column were long strings. The |
| fix adds a configuration setting <codeph>--max_page_header_size</codeph>, which you can use to |
| increase the Impala size limit to a value higher than 8 MB. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2273">IMPALA-2273</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2473"> |
| <title>reduce scanner memory usage</title> |
| <conbody> |
| <p> |
| Queries on Parquet tables could consume excessive memory (potentially multiple gigabytes) due to producing |
| large intermediate data values while evaluating groups of rows. The workaround was to reduce the size of |
| the <codeph>NUM_SCANNER_THREADS</codeph> query option, the <codeph>BATCH_SIZE</codeph> query option, |
| or both. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2473">IMPALA-2473</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2113"> |
| <title>Handle error when distinct and aggregates are used with a having clause</title> |
| <conbody> |
| <p> |
| A query that included a <codeph>DISTINCT</codeph> operator and a <codeph>HAVING</codeph> clause, but no |
| aggregate functions or <codeph>GROUP BY</codeph>, would fail with an uninformative error message. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2113">IMPALA-2113</xref></p> |
| <!-- Don't think this is really a 'major' issue. Left a comment in the IMPALA JIRA. --> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2225"> |
| <title>Handle error when star based select item and aggregate are incorrectly used</title> |
| <conbody> |
| <p> |
| A query that included <codeph>*</codeph> in the <codeph>SELECT</codeph> list, in addition to an |
| aggregate function call, would fail with an uninformative message if the query had no |
| <codeph>GROUP BY</codeph> clause. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2225">IMPALA-2225</xref></p> |
| <!-- Don't think this is really a 'major' issue. Left a comment in the IMPALA JIRA. --> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2731-552"> |
| <title>Refactor MemPool usage in HBase scan node</title> |
| <conbody> |
| <p> |
| Queries involving HBase tables used substantially more memory than in earlier Impala versions. |
| The problem occurred starting in Impala 2.2.8, as a result of the changes for IMPALA-2284. |
| The fix for this issue involves removing a separate memory work area for HBase queries |
| and reusing other memory that was already allocated. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2731">IMPALA-2731</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1459-552"> |
| <title>Fix migration/assignment of On-clause predicates inside inline views</title> |
| <conbody> |
| <p> |
| Some combinations of <codeph>ON</codeph> clauses in join queries could result in comparisons |
| being applied at the wrong stage of query processing, leading to incorrect results. |
| Wrong predicate assignment could happen under the following conditions: |
| </p> |
| <ul> |
| <li> |
| The query includes an inline view that contains an outer join. |
| </li> |
| <li> |
| That inline view is joined with another table in the enclosing query block. |
| </li> |
| <li> |
| That join has an <codeph>ON</codeph> clause containing a predicate that |
| only references columns originating from the outer-joined tables inside the inline view. |
| </li> |
| </ul> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1459">IMPALA-1459</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2558"> |
| <title>DCHECK in parquet scanner after block read error</title> |
| <conbody> |
| <p> |
| A debug build of Impala could encounter a serious error after encountering some kinds of I/O |
| errors for Parquet files. This issue only occurred in debug builds, not release builds. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2558">IMPALA-2558</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2535"> |
| <title>PAGG hits mem_limit when switching to I/O buffers</title> |
| <conbody> |
| <p> |
| A join query could fail with an out-of-memory error despite the apparent presence of sufficient memory. |
| The cause was the internal ordering of operations that could cause a later phase of the query to |
| allocate memory required by an earlier phase of the query. The workaround was to either increase |
| or decrease the <codeph>MEM_LIMIT</codeph> query option, because the issue would only occur for a specific |
| combination of memory limit and data volume. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2535">IMPALA-2535</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- This is a pretty incomprehensible JIRA title but there isn't any clearer title in the spreadsheet. --> |
| <!-- Merged with the following JIRA entry (which has a more understandable title) because it's part of the same root cause. --> |
| <concept id="IMPALA-2559"> |
| <title>Fix check failed: sorter_runs_.back()->is_pinned_</title> |
| <conbody> |
| <p> |
| A query could fail with an internal error while calculating the memory limit. |
| This was an infrequent condition uncovered during stress testing. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2559">IMPALA-2559</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2614"> |
| <title>Don't ignore Status returned by DataStreamRecvr::CreateMerger()</title> |
| <conbody> |
| <p> |
| A query could fail with an internal error while calculating the memory limit. |
| This was an infrequent condition uncovered during stress testing. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2614">IMPALA-2614</xref>, |
| <xref keyref="IMPALA-2559">IMPALA-2559</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2591"> |
| <title>DataStreamSender::Send() does not return an error status if SendBatch() failed</title> |
| <conbody> |
| <!-- Symptoms listed in the JIRA are very vague. Left a note asking Sailesh for more detail. --> |
| <p> |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2591">IMPALA-2591</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2598"> |
| <title>Re-enable SSL and Kerberos on server-server</title> |
| <conbody> |
| <p> |
| These fixes lift the restriction on using SSL encryption and Kerberos authentication together |
| for internal communication between Impala components. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2598">IMPALA-2598</xref>, |
| <xref keyref="IMPALA-2747">IMPALA-2747</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-2747"> |
| <title>Thrift-client cleans openSSL state before using it in the case of the catalog</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2747">IMPALA-2747</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| </concept> |
| |
| <concept rev="2.3.1" id="fixed_issues_231"> |
| |
| <title>Issues Fixed in <keyword keyref="impala231"/></title> |
| |
| <conbody> |
| |
| <p conref="../shared/impala_common.xml#common/impala231_noop"/> |
| |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.3.0" id="fixed_issues_230"> |
| |
| <title>Issues Fixed in <keyword keyref="impala230"/></title> |
| |
| <conbody> |
| <p> This section lists the most serious or frequently encountered customer |
| issues fixed in <keyword keyref="impala23_full"/>. Any issues already fixed in |
| <keyword keyref="impala22"/> maintenance releases (up through <keyword keyref="impala228"/>) are also included. |
| Those issues are listed under the respective <keyword keyref="impala22"/> sections and are |
| not repeated here. |
| </p> |
| |
| <!-- Raw "Fixed Issue" info from Silvius' working doc: https://docs.google.com/document/d/1PCboHo2Em-fySAHr3YF1ZZxMEfK8_vFFpP1rkWzyRZM/edit# |
| |
| Bug |
| IMPALA-2168 |
| SEGV in BufferedTupleStream::num_rows() in a query with very large, spilling ROJ |
| crash, resource-management |
| |
| Bug |
| IMPALA-2213 |
| Parquet read can fail if file metadata is stale |
| |
| Bug |
| IMPALA-2192 |
| Wrong results on TPCH-Q11 during nightly data load |
| broken-build, correctness |
| |
| Bug |
| IMPALA-2330 |
| SwitchToIoBuffers may leave stream to wrong state |
| resource-management |
| |
| Bug |
| IMPALA-2440 |
| Full outer join using non-partitioned HJ can incorrectly produce extra row of nulls |
| correctness |
| |
| Bug |
| IMPALA-2435 |
| Sorter::AddBatch does not check the Status of unsorted_run_->Init() |
| |
| Bug |
| IMPALA-2378 |
| Impalad exceeded its mem limit |
| crash, resource-management |
| |
| Bug |
| IMPALA-2369 |
| Crash: impala::Sorter::Run::Init |
| crash, nested_types, query_generator |
| |
| Bug |
| IMPALA-2366 |
| DiskIoMgr error handling with fread() |
| |
| Bug |
| IMPALA-2357 |
| Crash: impala::BufferedBlockMgr::Block::BytesRemaining |
| crash, nested_types, query_generator |
| |
| Bug |
| IMPALA-2348 |
| The Catalog does not close the connection to the HMS after table invalidation |
| catalog-server, hive |
| |
| Bug |
| IMPALA-2319 |
| Crash with nested loop join + limit |
| |
| Bug |
| IMPALA-2314 |
| Crash in PHJ::PrepareNextPartition() in call to LargestSpilledPartition() |
| |
| Bug |
| IMPALA-2165 |
| Avoid estimating cardinality 0 in SCAN node |
| performance, planner, resource-management |
| |
| Improvement |
| IMPALA-2143 |
| Avoid impala-shell sending password in plain text with ssl enabled |
| |
| Bug |
| IMPALA-2133 |
| HBase filter doesn't unescape string values correctly |
| |
| Bug |
| IMPALA-2090 |
| Incorrect handling of leap years when adding 1 month interval to date |
| correctness, query_generator |
| |
| Bug |
| IMPALA-2086 |
| Incorrect handling of leap years when adding 1 year interval to date |
| correctness, query_generator |
| |
| New Feature |
| IMPALA-2084 |
| SPLIT_PART and REGEXP_LIKE functions for Tableau pushdown |
| |
| New Feature |
| IMPALA-2081 |
| Add PERCENT_RANK, NTILE, CUME_DIST analytic window functions |
| planner, ramp-up-planner |
| |
| Bug |
| IMPALA-2016 |
| Cancelling query with group_concat causes crash |
| crash, query-lifecycle |
| |
| Improvement |
| IMPALA-1975 |
| Automatically reconnect to Impala in the shell if the connection is lost |
| ramp-up-task, shell |
| |
| Improvement - perf |
| IMPALA-1968 |
| Bad plan choices due to incorrect number of estimated hosts. |
| performance |
| |
| Bug |
| IMPALA-1947 |
| Avro cols may load incorrectly if schema inconsistent with StorageDescriptor |
| catalog-server, correctness |
| |
| Bug |
| IMPALA-1917 |
| Query return empty result if it contains NullLiteral in inlineview |
| correctness, regression |
| |
| (Possible new feature entry?) |
| Improvement - perf |
| IMPALA-1881 |
| Maximize data locality when scanning Parquet files with multiple row groups. |
| parquet, performance |
| |
| (Possible new feature entry?) |
| Improvement |
| IMPALA-1870 |
| Support users containing commas in authorized_proxy_user_config |
| ramp-up-introductory, ramp-up-task |
| |
| Bug |
| IMPALA-1859 |
| INSERT OVERWRITE with empty result set leaves existing records in partitioned table |
| impala, insert, overwrite, partitions |
| |
| Bug |
| IMPALA-1813 |
| CREATE TABLE LIKE ... STORED AS AVRO does not work. |
| usability |
| |
| Improvement |
| IMPALA-1136 |
| Impala is unable to read hive tables created with the "STORED AS AVRO" clause |
| ramp-up-planner, ramp-up-task, usability |
| |
| (Possible new feature entry?) |
| Improvement - perf |
| IMPALA-1588 |
| Cache HDFS file handle to avoid repeated hdfs fopen call |
| |
| Bug |
| IMPALA-1675 |
| Timestamp: Adding/subtracting very large time intervals to timestamps produces incorrect result |
| |
| Improvement |
| IMPALA-1982 |
| parquet.hive.serde.ParquetHiveSerDe is deprecated |
| Skye Wanderman-Milne |
| Critical |
| supportability |
| |
| Bug |
| IMPALA-1906 |
| PARQUET_FILE_SIZE query option not always honored due to an internal miscalculation. |
| Vlad Berindei |
| Critical |
| parquet, ramp-up-introductory, ramp-up-task |
| |
| --> |
| |
| </conbody> |
| |
| <concept id="serious_230"> |
| <title>Fixes for Serious Errors</title> |
| <conbody> |
| <p> |
| A number of issues were resolved that could result in serious errors |
| when encountered. The most critical or commonly encountered are |
| listed here. |
| </p> |
| <p><b>Bugs:</b> |
| |
| <!-- Bugs marked as 'crash'. |
| IMPALA-2168 |
| IMPALA-2378 |
| IMPALA-2369 |
| IMPALA-2357 |
| IMPALA-2319 |
| IMPALA-2314 |
| IMPALA-2016 |
| --> |
| |
| <xref keyref="IMPALA-2168">IMPALA-2168</xref>, |
| <xref keyref="IMPALA-2378">IMPALA-2378</xref>, |
| <xref keyref="IMPALA-2369">IMPALA-2369</xref>, |
| <xref keyref="IMPALA-2357">IMPALA-2357</xref>, |
| <xref keyref="IMPALA-2319">IMPALA-2319</xref>, |
| <xref keyref="IMPALA-2314">IMPALA-2314</xref>, |
| <xref keyref="IMPALA-2016">IMPALA-2016</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="correctness_230"> |
| <title>Fixes for Correctness Errors</title> |
| <conbody> |
| <p> |
| A number of issues were resolved that could result in wrong results |
| when encountered. The most critical or commonly encountered are |
| listed here. |
| </p> |
| <p><b>Bugs:</b> |
| |
| <!-- Bugs marked as 'correctness'. |
| IMPALA-2192 |
| IMPALA-2440 |
| IMPALA-2090 |
| IMPALA-2086 |
| IMPALA-1947 |
| IMPALA-1917 |
| --> |
| |
| <xref keyref="IMPALA-2192">IMPALA-2192</xref>, |
| <xref keyref="IMPALA-2440">IMPALA-2440</xref>, |
| <xref keyref="IMPALA-2090">IMPALA-2090</xref>, |
| <xref keyref="IMPALA-2086">IMPALA-2086</xref>, |
| <xref keyref="IMPALA-1947">IMPALA-1947</xref>, |
| <xref keyref="IMPALA-1917">IMPALA-1917</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <!-- All 2.2.x subsections go under here --> |
| |
| <concept rev="2.2.10" id="fixed_issues_2210"> |
| |
| <title>Issues Fixed in <keyword keyref="impala2210"/></title> |
| |
| <conbody> |
| <p></p> |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.2.9" id="fixed_issues_229"> |
| |
| <title>Issues Fixed in <keyword keyref="impala229"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala229"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-1917"> |
| <!-- Title in Juan's spreadsheet. Actual JIRA title more useful for readers IMO. <title>Do not register aux equivalence predicates with NULL on either side.</title> --> |
| <title>Query return empty result if it contains NullLiteral in inlineview</title> |
| <conbody> |
| <p> |
| If an inline view in a <codeph>FROM</codeph> clause contained a <codeph>NULL</codeph> literal, |
| the result set was empty. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1917">IMPALA-1917</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2731"> |
| <!-- Title in Juan's spreadsheet. Actual JIRA title more useful for readers IMO. <title>Refactor MemPool usage in HBase scan node.</title> --> |
| <title>HBase scan node uses 2-4x memory after upgrade to Impala 2.2.8</title> |
| <conbody> |
| <p> |
| Queries involving HBase tables used substantially more memory than in earlier Impala versions. |
| The problem occurred starting in Impala 2.2.8, as a result of the changes for IMPALA-2284. |
| The fix for this issue involves removing a separate memory work area for HBase queries |
| and reusing other memory that was already allocated. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2731">IMPALA-2731</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1459"> |
| <title>Fix migration/assignment of On-clause predicates inside inline views</title> |
| <conbody> |
| <!-- Explanation comes from IMPALA-2665. --> |
| <p> |
| Some combinations of <codeph>ON</codeph> clauses in join queries could result in comparisons |
| being applied at the wrong stage of query processing, leading to incorrect results. |
| Wrong predicate assignment could happen under the following conditions: |
| </p> |
| <ul> |
| <li> |
| The query includes an inline view that contains an outer join. |
| </li> |
| <li> |
| That inline view is joined with another table in the enclosing query block. |
| </li> |
| <li> |
| That join has an <codeph>ON</codeph> clause containing a predicate that |
| only references columns originating from the outer-joined tables inside the inline view. |
| </li> |
| </ul> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1459">IMPALA-1459</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2446"> |
| <title>Fix wrong predicate assignment in outer joins</title> |
| <conbody> |
| <p> |
| The join predicate for an <codeph>OUTER JOIN</codeph> clause could be applied at the wrong stage |
| of query processing, leading to incorrect results. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2446">IMPALA-2446</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2648"><!-- Also IMPALA-2664 --> |
| <title>Avoid sending large partition stats objects over thrift</title> |
| <conbody> |
| <p> The <cmdname>catalogd</cmdname> daemon could encounter a serious error when loading the |
| incremental statistics metadata for tables with large numbers of partitions and columns. |
| The problem occurred when the internal representation of metadata for the table exceeded 2 |
| GB, for example in a table with 20K partitions and 77 columns. The fix causes a |
| <codeph>COMPUTE INCREMENTAL STATS</codeph> operation to fail if it would produce |
| metadata that exceeded the maximum size. </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2648">IMPALA-2648</xref>, |
| <xref keyref="IMPALA-2664">IMPALA-2664</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1675"> |
| <title>Avoid overflow when adding large intervals to TIMESTAMPs</title> |
| <conbody> |
| <p> Adding or subtracting a large <codeph>INTERVAL</codeph> value to a |
| <codeph>TIMESTAMP</codeph> value could produce an incorrect result, with the value |
| wrapping instead of returning an out-of-range error. </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1675">IMPALA-1675</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1949"> |
| <title>Analysis exception when a binary operator contains an IN operator with values</title> |
| <conbody> |
| <p> |
| An <codeph>IN</codeph> operator with literal values could cause a statement to fail if used |
| as the argument to a binary operator, such as an equality test for a <codeph>BOOLEAN</codeph> value. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1949">IMPALA-1949</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2273"> |
| <!-- To do: this detail would be useful to capture on the Impala + Parquet page too. --> |
| <title>Make MAX_PAGE_HEADER_SIZE configurable</title> |
| <conbody> |
| <p> Impala could fail to access Parquet data files with page headers larger than 8 MB, which |
| could occur, for example, if the minimum or maximum values for a column were long strings. |
| The fix adds a configuration setting <codeph>--max_page_header_size</codeph>, which you |
| can use to increase the Impala size limit to a value higher than 8 MB. </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2273">IMPALA-2273</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2357"> |
| <title>Fix spilling sorts with var-len slots that are NULL or empty.</title> |
| <conbody> |
| <p> |
| A query that activated the spill-to-disk mechanism could fail if it contained a sort expression |
| involving certain combinations of fixed-length or variable-length types. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2357">IMPALA-2357</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="block_pin_oom"> |
| <title>Work-around IMPALA-2344: Fail query with OOM in case block->Pin() fails</title> |
| <conbody> |
| <p> |
| Some queries that activated the spill-to-disk mechanism could produce a serious error |
| if there was insufficient memory to set up internal work areas. Now those queries |
| produce normal out-of-memory errors instead. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2344">IMPALA-2344</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2252"> |
| <title>Crash (likely race) tearing down BufferedBlockMgr on query failure</title> |
| <conbody> |
| <p> |
| A serious error could occur under rare circumstances, due to a race condition while freeing memory during heavily concurrent workloads. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2252">IMPALA-2252</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1746"> |
| <title>QueryExecState doesn't check for query cancellation or errors</title> |
| <conbody> |
| <p> |
| A call to <codeph>SetError()</codeph> in a user-defined function (UDF) would not cause the query to fail as expected. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1746">IMPALA-1746</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2533"> |
| <title>Impala throws IllegalStateException when inserting data into a partition while select |
| subquery group by partition columns</title> |
| <conbody> |
| <p> |
| An <codeph>INSERT ... SELECT</codeph> operation into a partitioned table could fail if the <codeph>SELECT</codeph> query |
| included a <codeph>GROUP BY</codeph> clause referring to the partition key columns. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2533">IMPALA-2533</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.2.8" id="fixed_issues_228"> |
| |
| <title>Issues Fixed in <keyword keyref="impala228"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala228"/>. |
| </p> |
| |
| </conbody> |
| |
| <!-- |
| 3e0fee5 IMPALA-2369, IMPALA-2435: Impala crashes when the sorter hits an OOM error |
| ef498c2 IMPALA-1136, IMPALA-2161: Skip \u0000 characters when dealing Avro schemas |
| 8f97d4b IMPALA-2168: Do not try to access streams of repartitioned spilled partition in right-joins |
| * 294ac14 Additional checks to catch IMPALA-2168 earlier |
| b9b10ec IMPALA-2514: DCHECK on destroying an ExprContext |
| 96206af IMPALA-2440: Fix old HJ full outer join with no rows |
| 5e1a79a IMPALA-2366: check fread return code correctly |
| 02f3e36 IMPALA-2477: Parquet metadata randomly 'appears stale' |
| 76c1548 IMPALA-2213: make Parquet scanner fail query if the file size metadata is stale |
| 10ba8ed IMPALA-2249: Avoid allocating StringBuffer > 1GB in ScannerContext::Stream::GetBytesInternal() |
| a87eaa0 IMPALA-2270: avoid FnvHash64to32 with empty inputs |
| 7f6a521 IMPALA-2284: Disallow long (1<<30) strings in group_concat() |
| * 9aea5d7 Mistake in schema_constraints by the IMPALA-2130 patch (7c7e69b) |
| f8d32a4 IMPALA-2130: Wrong verification of Parquet file version |
| 9ec5944 IMPALA-2348: The catalog does not close the connection to HMS during table invalidation |
| a78c303 IMPALA-2364: Wrong DCHECK in PHJ::ProcessProbeBatch |
| e6dec36 IMPALA-2314: LargestSpilledPartition was not checking if partition is closed |
| * 56d8bbd Checks for IMPALA-2314 and more accurate calculation of PHJ::LargestSpillPartition |
| 3ad4e71 IMPALA-2256: Handle joins with right side of high cardinality and zero materialized slots |
| 4422462 IMPALA-2165: Avoid cardinality 0 in scan nodes of small tables and low selectivity |
| 1f199ec IMPALA-2292: Change the type of timestamp_col to string in the table no_avro_schema. |
| f6b4480 IMPALA-1136: Support loading Avro tables without an explicit Avro schema |
| d93fb5a IMPALA-1899: Cleanup handling of Hive's field schema |
| |
| * = no JIRA assigned with it so it definitely is an internal-only modification. |
| --> |
| |
| <concept id="IMPALA-1136"> |
| <title>Impala is unable to read hive tables created with the "STORED AS AVRO" clause</title> |
| <conbody> |
| <p>Impala could not read Avro tables created in Hive with the <codeph>STORED AS AVRO</codeph> clause.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1136">IMPALA-1136</xref>, |
| <xref keyref="IMPALA-2161">IMPALA-2161</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2213"> |
| <title>make Parquet scanner fail query if the file size metadata is stale</title> |
| <conbody> |
| <p>If a Parquet file in HDFS was overwritten by a smaller file, Impala could encounter a serious error. |
| Issuing a <codeph>INVALIDATE METADATA</codeph> statement before a subsequent query would avoid the error. |
| The fix allows Impala to handle such inconsistencies in Parquet file length cleanly regardless of whether the |
| table metadata is up-to-date.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2213">IMPALA-2213</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2249"> |
| <title>Avoid allocating StringBuffer > 1GB in ScannerContext::Stream::GetBytesInternal()</title> |
| <conbody> |
| <p>Impala could encounter a serious error when reading compressed text files larger than 1 GB. The fix causes Impala |
| to issue an error message instead in this case.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2249">IMPALA-2249</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2284"> |
| <title>Disallow long (1<<30) strings in group_concat()</title> |
| <conbody> |
| <p>A query using the <codeph>group_concat()</codeph> function could encounter a serious error if the returned string value was larger than 1 GB. |
| Now the query fails with an error message in this case.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2284">IMPALA-2284</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2270"> |
| <title>avoid FnvHash64to32 with empty inputs</title> |
| <conbody> |
| <p>An edge case in the algorithm used to distribute data among nodes could result in uneven distribution of work for some queries, |
| with all data sent to the same node.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2270">IMPALA-2270</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2348"> |
| <title>The catalog does not close the connection to HMS during table invalidation</title> |
| <conbody> |
| <p>A communication error could occur between Impala and the Hive metastore database, causing Impala operations that update |
| table metadata to fail.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2348">IMPALA-2348</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2364-548"> |
| <title>Wrong DCHECK in PHJ::ProcessProbeBatch</title> |
| <conbody> |
| <p>Certain queries could encounter a serious error if the spill-to-disk mechanism was activated.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2364">IMPALA-2364</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2165-548"> |
| <title>Avoid cardinality 0 in scan nodes of small tables and low selectivity</title> |
| <conbody> |
| <p>Impala could generate a suboptimal query plan for some queries involving small tables.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2165">IMPALA-2165</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.2.7" id="fixed_issues_227"> |
| |
| <title>Issues Fixed in <keyword keyref="impala227"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala227"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-1983"> |
| <title>Warn if table stats are potentially corrupt.</title> |
| <conbody> |
| <p> |
| Impala warns if it detects a discrepancy in table statistics: a table considered to have zero rows even though there are data files present. |
| In this case, Impala also skips query optimizations that are normally applied to very small tables. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1983">IMPALA-1983:</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2266"> |
| <title>Pass correct child node in 2nd phase merge aggregation.</title> |
| <conbody> |
| <p>A query could encounter a serious error if it included a particular combination of aggregate functions and inline views.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2266">IMPALA-2266</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2216"> |
| <title>Set the output smap of an EmptySetNode produced from an empty inline view.</title> |
| <conbody> |
| <p>A query could encounter a serious error if it included an inline view whose subquery had no <codeph>FROM</codeph> clause.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2216">IMPALA-2216</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2203"> |
| <title>Set an InsertStmt's result exprs from the source statement's result exprs.</title> |
| <conbody> |
| <p> |
| A <codeph>CREATE TABLE AS SELECT</codeph> or <codeph>INSERT ... SELECT</codeph> statement could produce |
| different results than a <codeph>SELECT</codeph> statement, for queries including a <codeph>FULL JOIN</codeph> clause |
| and including literal values in the select list. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2203">IMPALA-2203</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2088"> |
| <title>Fix planning of empty union operands with analytics.</title> |
| <conbody> |
| <p> |
| A query could return incorrect results if it contained a <codeph>UNION</codeph> clause, |
| calls to analytic functions, and a constant expression that evaluated to <codeph>FALSE</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2088">IMPALA-2088</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-1756"> |
| <title>Constant filter expressions are not checked for errors and state cleanup is not done before throwing exception.</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1756">IMPALA-1756</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <!-- |
| <concept id="IMPALA-2239"> |
| <title>update misc.test to match the new .test file format</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2239">IMPALA-2239</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-2089"> |
| <title>Retain eq predicates bound by grouping slots with complex grouping exprs.</title> |
| <conbody> |
| <p> |
| A query containing an <codeph>INNER JOIN</codeph> clause could return undesired rows. |
| Some predicate specified in the <codeph>ON</codeph> clause could be omitted from the filtering operation. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2089">IMPALA-2089</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-2201"> |
| <title>Unconditionally update the partition stats and row count.</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2201">IMPALA-2201</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-2199"> |
| <title>Row count not set for empty partition when spec is used with compute incremental stats</title> |
| <conbody> |
| <p> |
| A <codeph>COMPUTE INCREMENTAL STATS</codeph> statement could leave the row count for an emptyp partition as -1, |
| rather than initializing the row count to 0. The missing statistic value could result in reduced query performance. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2199">IMPALA-2199</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1898"> |
| <title>Explicit aliases + ordinals analysis bug</title> |
| <conbody> |
| <p> |
| A query could encounter a serious error if it included column aliases with the same names as table columns, and used |
| ordinal numbers in an <codeph>ORDER BY</codeph> or <codeph>GROUP BY</codeph> clause. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1898">IMPALA-1898</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1987"> |
| <title>Fix TupleIsNullPredicate to return false if no tuples are nullable.</title> |
| <conbody> |
| <p> |
| A query could return incorrect results if it included an outer join clause, inline views, and calls to functions such as <codeph>coalesce()</codeph> |
| that can generate <codeph>NULL</codeph> values. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1987">IMPALA-1987</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2178"> |
| <title>fix Expr::ComputeResultsLayout() logic</title> |
| <conbody> |
| <p> |
| A query could return incorrect results if the table contained multiple <codeph>CHAR</codeph> columns with length of 2 or less, |
| and the query included a <codeph>GROUP BY</codeph> clause that referred to multiple such columns. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2178">IMPALA-2178</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1737"> |
| <title>Substitute an InsertStmt's partition key exprs with the root node's smap.</title> |
| <conbody> |
| <p> |
| An <codeph>INSERT</codeph> statement could encounter a serious error if the <codeph>SELECT</codeph> |
| portion called an analytic function. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1737">IMPALA-1737</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.2.5" id="fixed_issues_225"> |
| |
| <title>Issues Fixed in Impala <keyword keyref="impala225"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala225"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-2048"> |
| <title>Impala DML/DDL operations corrupt table metadata leading to Hive query failures</title> |
| <conbody> |
| <p> |
| When the Impala <codeph>COMPUTE STATS</codeph> statement was run on a partitioned Parquet table that was created in Hive, the table subsequently became inaccessible in Hive. |
| The table was still accessible to Impala. Regaining access in Hive required a workaround of creating a new table. The error displayed in Hive was: |
| </p> |
| <codeblock>Error: Error while compiling statement: FAILED: SemanticException Class not found: org.apache.impala.hive.serde.ParquetInputFormat (state=42000,code=40000)</codeblock> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2048">IMPALA-2048</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1929"> |
| <title>Avoiding a DCHECK of NULL hash table in spilled right joins</title> |
| <!-- Real JIRA title: Crash because PHJ::NextSpilledProbeRowBatch() tries to use a NULL hash_tbl --> |
| <conbody> |
| <p> |
| A query could encounter a serious error if it contained a <codeph>RIGHT OUTER</codeph>, <codeph>RIGHT ANTI</codeph>, or <codeph>FULL OUTER</codeph> join clause |
| and approached the memory limit on a host so that the <q>spill to disk</q> mechanism was activated. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1929">IMPALA-1929</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2136"> |
| <title>Bug in PrintTColumnValue caused wrong stats for TINYINT partition cols</title> |
| <!-- Real JIRA title: Partitions with TINYINT partition columns will always have 0 estimated rows after compute stats --> |
| <conbody> |
| <p> |
| Declaring a partition key column as a <codeph>TINYINT</codeph> caused problems with the <codeph>COMPUTE STATS</codeph> statement. |
| The associated partitions would always have zero estimated rows, leading to potential inefficient query plans. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2136">IMPALA-2136</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2018"> |
| <title>Where clause does not propagate to joins inside nested views</title> |
| <!-- Real JIRA title: Where clause does not propagate to joins inside nested views --> |
| <conbody> |
| <p> |
| A query that referred to a view whose query referred to another view containing a join, could return incorrect results. |
| <codeph>WHERE</codeph> clauses for the outermost query were not always applied, causing the result |
| set to include additional rows that should have been filtered out. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2018">IMPALA-2018</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2064"> |
| <title>Add effective_user() builtin</title> |
| <!-- Real JIRA title: Add effective_user() builtin --> |
| <conbody> |
| <p> |
| The <codeph>user()</codeph> function returned the name of the logged-in user, which might not be the |
| same as the user name being checked for authorization if, for example, delegation was enabled. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2064">IMPALA-2064</xref></p> |
| <p><b>Resolution:</b> Rather than change the behavior of the <codeph>user()</codeph> function, |
| the fix introduces an additional function <codeph>effective_user()</codeph> that returns the user name that is checked during authorization.</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2125"> |
| <title>Make UTC to local TimestampValue conversion faster.</title> |
| <!-- Real JIRA title: Improve perf when reading timestamps from parquet files written by hive --> |
| <conbody> |
| <p> |
| Query performance was improved substantially for Parquet files containing <codeph>TIMESTAMP</codeph> |
| data written by Hive, when the <codeph>-convert_legacy_hive_parquet_utc_timestamps=true</codeph> setting |
| is in effect. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2125">IMPALA-2125</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2065"> |
| <title>Workaround IMPALA-1619 in BufferedBlockMgr::ConsumeMemory()</title> |
| <!-- Real JIRA title: Crash: impala::BufferedBlockMgr::ConsumeMemory (PartitionedHashJoinNode) --> |
| <conbody> |
| <p> |
| A join query could encounter a serious error if the query |
| approached the memory limit on a host so that the <q>spill to disk</q> mechanism was activated, |
| and data volume in the join was large enough that an internal memory buffer exceeded 1 GB in size on a particular host. |
| (Exceeding this limit would only happen for huge join queries, because Impala could split this intermediate data |
| into 16 parts during the join query, and the buffer only contains compact bookkeeping data rather than the actual |
| join column data.) |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2065">IMPALA-2065</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.2.3" id="fixed_issues_223"> |
| |
| <title>Issues Fixed in <keyword keyref="impala223"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala223"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="isilon_support"> |
| <title>Enable using Isilon as the underlying filesystem.</title> |
| <conbody> |
| <p> |
| Enabling Impala to work with the Isilon filesystem involves a number of |
| fixes to performance and flexibility for dealing with I/O using remote reads. |
| See <xref href="impala_isilon.xml#impala_isilon"/> for details on using Impala and Isilon together. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1968">IMPALA-1968</xref>, |
| <xref keyref="IMPALA-1730">IMPALA-1730</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- Covered under the initial Isilon umbrella issue. |
| <concept id="IMPALA-1968"> |
| <title>Part 1: Improve planner numNodes estimate for remote scans</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1968">IMPALA-1968</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <!-- Covered under the initial Isilon umbrella issue. |
| <concept id="IMPALA-1730"> |
| <title>reduce scanner thread spinning windows</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1730">IMPALA-1730</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-1381"> |
| <title>Expand set of supported timezones.</title> |
| <conbody> |
| <p> |
| The set of timezones recognized by Impala was expanded. |
| You can always find the latest list of supported timezones in the |
| Impala source code, in the file |
| <xref keyref="timezone_db.cc">timezone_db.cc</xref>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1381">IMPALA-1381</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1963"> |
| <title>Impala Timestamp ISO-8601 Support.</title> |
| <conbody> |
| <p> |
| Impala can now process <codeph>TIMESTAMP</codeph> literals including a trailing <codeph>z</codeph>, |
| signifying <q>Zulu</q> time, a synonym for UTC. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1963">IMPALA-1963</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2008"> |
| <title>Fix wrong warning when insert overwrite to empty table</title> |
| <conbody> |
| <p> |
| An <codeph>INSERT OVERWRITE</codeph> operation would encounter an error |
| if the <codeph>SELECT</codeph> portion of the statement returned zero |
| rows, such as with a <codeph>LIMIT 0</codeph> clause. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2008">IMPALA-2008</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1952"> |
| <!-- Fixed in first in earlier release and 'frontported' to this one. --> |
| <!-- Identical issue farther down in this page, just with a slightly mangled ID. --> |
| <title>Expand parsing of decimals to include scientific notation</title> |
| <conbody> |
| <p> |
| <codeph>DECIMAL</codeph> literals can now include <codeph>e</codeph> scientific notation. |
| For example, now <codeph>CAST(1e3 AS DECIMAL(5,3))</codeph> is a valid expression. |
| Formerly it returned <codeph>NULL</codeph>. |
| Some scientific expressions might have worked before in <codeph>DECIMAL</codeph> context, but only when the scale was 0. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1952">IMPALA-1952</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.2.1" id="fixed_issues_221"> |
| |
| <title>Issues Fixed in <keyword keyref="impala221"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala221"/>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept rev="2.2.0" id="fixed_issues_220"> |
| |
| <title>Issues Fixed in <keyword keyref="impala220"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most frequently encountered customer issues fixed in <keyword keyref="impala220"/>. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in <keyword keyref="impala220"/>, including over 40 critical issues, see |
| <xref keyref="jira_list_220"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| <!-- |
| My proposed list to Silvius: |
| |
| IMPALA-1854 Impala may leak or use too many file descriptors |
| IMPALA-1712 Spurious stale block locality messages |
| IMPALA-1711 DROP TABLE fails after COMPUTE STATS and ALTER TABLE RENAME to a different database. |
| IMPALA-1674 IMPALA-1556 causes memory leak with secure connections |
| IMPALA-1623 unix_timestamp() does not return correct time |
| IMPALA-1476 Impala incorrectly handles text data missing a newline on the last line |
| IMPALA-1194 Memory leak using zlib on CentOS6 (and possibly other platforms) |
| IMPALA-1805 Impala's ACLs check do not consider all group ACLs, only checked first one. |
| IMPALA-1794 IoMgr infinite loop opening/closing file when shorter than cached metadata size |
| IMPALA-1705 Cannot write Parquet files when values are larger than 64KB |
| IMPALA-1646 Impala Will Not Run on Certain Intel CPUs |
| |
| Plus one or more transferred over from known issues: |
| |
| IMPALA-1607 |
| --> |
| |
| <concept id="IMPALA-1607"> |
| <title>Altering a column's type causes column stats to stop sticking for that column</title> |
| <conbody> |
| <p> |
| When the type of a column was changed in either Hive or Impala through <codeph>ALTER TABLE CHANGE COLUMN</codeph>, the metastore database did not correctly propagate |
| that change to the table that contains the column statistics. The statistics (particularly the <codeph>NDV</codeph>) for that column were permanently reset |
| and could not be changed by Impala's <codeph>COMPUTE STATS</codeph> command. The underlying cause is a Hive bug (HIVE-9866). |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1607">IMPALA-1607</xref></p> |
| <p><b>Resolution:</b> Resolved by incorporating the fix for <xref href="https://issues.apache.org/jira/browse/HIVE-9866" scope="external" format="html">HIVE-9866</xref>.</p> |
| <p><b>Workaround:</b> On systems without the corresponding Hive fix, change the column back to its original type. The stats reappear and you can recompute or drop them.</p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1854"> |
| <title>Impala may leak or use too many file descriptors</title> |
| <conbody> |
| <p>If a file was truncated in HDFS without a corresponding <codeph>REFRESH</codeph> in Impala, Impala could allocate memory for file descriptors and not free that memory.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1854">IMPALA-1854</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1712"> |
| <title>Spurious stale block locality messages</title> |
| <conbody> |
| <p> |
| Impala could issue messages stating the block locality metadata was stale, |
| when the metadata was actually fine. |
| The internal <q>remote bytes read</q> counter was not being reset properly. |
| This issue did not cause an actual slowdown in query execution, |
| but the spurious error could result in unnecessary debugging work |
| and unnecessary use of the <codeph>INVALIDATE METADATA</codeph> statement. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1712">IMPALA-1712</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1711"> |
| <title>DROP TABLE fails after COMPUTE STATS and ALTER TABLE RENAME to a different database.</title> |
| <conbody> |
| <p> |
| When a table was moved from one database to another, the column statistics were not pointed to the new database.i |
| This could result in lower performance for queries due to unavailable statistics, and also an inability |
| to drop the table. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1711">IMPALA-1711</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1674"> |
| |
| <title>IMPALA-1556 causes memory leak with secure connections</title> |
| |
| <conbody> |
| |
| <p> |
| <cmdname>impalad</cmdname> daemons could experience a memory leak on clusters using Kerberos |
| authentication, with memory usage growing as more data is transferred across the secure channel, either |
| to the client program or between Impala nodes. The same issue affected LDAP-secured clusters to a lesser |
| degree, because the LDAP security only covers data transferred back to client programs. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1674">IMPALA-1674</xref> |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1623"> |
| <title>unix_timestamp() does not return correct time</title> |
| <conbody> |
| <p> |
| The <codeph>unix_timestamp()</codeph> function could return an incorrect value (a constant value of 1). |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1623">IMPALA-1623</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1476"> |
| <title>Impala incorrectly handles text data missing a newline on the last line</title> |
| <conbody> |
| <p> |
| Some queries did not recognize the final line of a text data file if the line did not end with a newline character. |
| This could lead to inconsistent results, such as a different number of rows for <codeph>SELECT COUNT(*)</codeph> |
| as opposed to <codeph>SELECT *</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1476">IMPALA-1476</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-1194"> |
| <title>Memory leak using zlib on CentOS6 (and possibly other platforms)</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1194">IMPALA-1194</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-1805"> |
| <title>Impala's ACLs check do not consider all group ACLs, only checked first one.</title> |
| <conbody> |
| <p> |
| If the HDFS user ID associated with the <cmdname>impalad</cmdname> process had read or write access in HDFS based on group membership, |
| Impala statements could still fail with HDFS permission errors if that group was not the first listed group for that user ID. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1805">IMPALA-1805</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1794"> |
| <title>Fix infinite loop opening or closing file with invalid metadata</title> |
| <conbody> |
| <p> |
| Truncating a file in HDFS, after Impala had cached the file metadata, could produce a hang when Impala |
| queried a table containing that file. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1794">IMPALA-1794</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1705"> |
| <title>Cannot write Parquet files when values are larger than 64KB</title> |
| <conbody> |
| <p> |
| Impala could sometimes fail to <codeph>INSERT</codeph> into a Parquet table if a column value such as a <codeph>STRING</codeph> |
| was larger than 64 KB. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1705">IMPALA-1705</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1646"> |
| <title>Impala Will Not Run on Certain Intel CPUs</title> |
| <conbody> |
| <p> |
| This fix relaxes the CPU requirement for Impala. Now only the SSSE3 instruction set is required. Formerly, SSE4.1 |
| instructions were generated, making Impala refuse to start on some older CPUs. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1646">IMPALA-1646</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <!-- All 2.1.x subsections go under here --> |
| |
| <concept rev="2.1.10" id="fixed_issues_2110"> |
| |
| <title>Issues Fixed in <keyword keyref="impala2110"/></title> |
| |
| <conbody> |
| <p></p> |
| </conbody> |
| |
| </concept> |
| |
| <concept rev="2.1.7" id="fixed_issues_217"> |
| |
| <title>Issues Fixed in <keyword keyref="impala217"/></title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant Impala issues fixed in <keyword keyref="impala217"/>. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-1917-539"> |
| <!-- Title in Juan's spreadsheet. Actual JIRA title more useful for readers IMO. <title>Do not register aux equivalence predicates with NULL on either side.</title> --> |
| <title>Query return empty result if it contains NullLiteral in inlineview</title> |
| <conbody> |
| <p> |
| If an inline view in a <codeph>FROM</codeph> clause contained a <codeph>NULL</codeph> literal, |
| the result set was empty. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1917">IMPALA-1917</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2264"> |
| <title>Fix edge cases for decimal/integer cast</title> |
| <conbody> |
| <p> |
| A value of type <codeph>DECIMAL(3,0)</codeph> could be incorrectly cast to <codeph>TINYINT</codeph>. |
| The resulting out-of-range value could be incorrect. After the fix, the smallest type that is allowed |
| for this cast is <codeph>INT</codeph>, and attempting to use <codeph>DECIMAL(3,0)</codeph> in a |
| <codeph>TINYINT</codeph> context produces a <q>loss of precision</q> error. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2264">IMPALA-2264</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1756"> |
| <title>Constant filter expressions are not checked for errors and state cleanup on exception / DCHECK on destroying an ExprContext</title> |
| <conbody> |
| <p> |
| An invalid constant expression in a <codeph>WHERE</codeph> clause (for example, an invalid |
| regular expression pattern) could fail to clean up internal state after raising a query error. |
| Therefore, certain combinations of invalid expressions in a query could cause a crash, or cause a query to continue |
| when it should halt with an error. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1756">IMPALA-1756</xref>, |
| <xref keyref="IMPALA-2514">IMPALA-2514</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- Combined with IMPALA-1756 above. |
| <concept id="IMPALA-2514"> |
| <title>DCHECK on destroying an ExprContext</title> |
| <conbody> |
| <p> |
| Some internal state was not cleaned up after evaluating an invalid expression. |
| Therefore, certain combinations of invalid expressions in a query could cause a crash, or cause a query to continue |
| when it should halt with an error. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2514">IMPALA-2514</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-1746-539"> |
| <title>QueryExecState does not check for query cancellation or |
| errors</title> |
| <conbody> |
| <p> |
| A call to <codeph>SetError()</codeph> in a user-defined function (UDF) would not cause the query to fail as expected. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1746">IMPALA-1746</xref>, |
| <xref keyref="IMPALA-2141">IMPALA-2141</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.6" id="fixed_issues_216"> |
| |
| <title>Issues Fixed in Impala 2.1.6</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant Impala issues fixed in Impala 2.1.6. |
| </p> |
| |
| </conbody> |
| |
| <!-- |
| 9f2a54f IMPALA-2364: Wrong DCHECK in PHJ::ProcessProbeBatch |
| 7789e19 IMPALA-2165: Avoid cardinality 0 in scan nodes of small tables and low selectivity |
| 902c88b IMPALA-2314: LargestSpilledPartition was not checking if partition is closed |
| 1be8617 IMPALA-2178: fix Expr::ComputeResultsLayout() logic |
| * afc2cf6 IMPALA-2133: Properly unescape string value for HBase filters |
| 25210af IMPALA-1929: Avoiding a DCHECK of NULL hash table in spilled right joins |
| |
| * Designated as non-critical when previously published in a different 5.x.y maintenance release. |
| --> |
| |
| <concept id="IMPALA-2364"> |
| <title>Wrong DCHECK in PHJ::ProcessProbeBatch</title> |
| <conbody> |
| <p>Certain queries could encounter a serious error if the spill-to-disk mechanism was activated.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2364">IMPALA-2364</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2314"> |
| <title>LargestSpilledPartition was not checking if partition is closed</title> |
| <conbody> |
| <p>Certain queries could encounter a serious error if the spill-to-disk mechanism was activated.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2314">IMPALA-2314</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2165"> |
| <title>Avoid cardinality 0 in scan nodes of small tables and low selectivity</title> |
| <conbody> |
| <p>Impala could generate a suboptimal query plan for some queries involving small tables.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2165">IMPALA-2165</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2178-238"> |
| <title>fix Expr::ComputeResultsLayout() logic</title> |
| <conbody> |
| <p>Queries using the <codeph>GROUP BY</codeph> operator on multiple <codeph>CHAR</codeph> columns with length less than or equal to 2 characters |
| could return incorrect results for some columns.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2178">IMPALA-2178</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-2133"> |
| <title>Properly unescape string value for HBase filters</title> |
| <conbody> |
| <p>Queries against HBase tables could return incomplete results if the <codeph>WHERE</codeph> clause included string comparisons using literals |
| containing escaped quotation marks.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-2133">IMPALA-2133</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1929-238"> |
| <title>Avoiding a DCHECK of NULL hash table in spilled right joins</title> |
| <!-- Real JIRA title: Crash because PHJ::NextSpilledProbeRowBatch() tries to use a NULL hash_tbl --> |
| <conbody> |
| <p> |
| A query could encounter a serious error if it contained a <codeph>RIGHT OUTER</codeph>, <codeph>RIGHT ANTI</codeph>, or <codeph>FULL OUTER</codeph> join clause |
| and approached the memory limit on a host so that the <q>spill to disk</q> mechanism was activated. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1929">IMPALA-1929</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.5" id="fixed_issues_215"> |
| |
| <title>Issues Fixed in Impala 2.1.5</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant Impala issues fixed in Impala 2.1.5. |
| </p> |
| |
| </conbody> |
| |
| <!-- |
| 3a8716c Parquet: Fix value def level when max def level is 0 |
| 856ee01 IMPALA-1774 Allow querying Parquet tables with complex-typed columns as long as those columns are not selected. |
| 82b8ee4 IMPALA-1919: Avoid calling ProcessBatch with out_batch->AtCapacity in right joins |
| 11c852c IMPALA-2002: Provide way to cache ext data source classes |
| 2c4f716 IMPALA-1726: Move JNI / Thrift utilities to separate header |
| --> |
| |
| <concept id="IMPALA-1919"> |
| <title>Avoid calling ProcessBatch with out_batch->AtCapacity in right joins</title> |
| <conbody> |
| <p> |
| Queries including <codeph>RIGHT OUTER JOIN</codeph>, <codeph>RIGHT ANTI JOIN</codeph>, or <codeph>FULL OUTER JOIN</codeph> |
| clauses and involving a high volume of data could encounter a serious error. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1919">IMPALA-1919</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.4" id="fixed_issues_214"> |
| |
| <title>Issues Fixed in Impala 2.1.4</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant Impala issues fixed in Impala 2.1.4. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| d8bce5d IMPALA-1519: Fix wrapping of exprs via a TupleIsNullPredicate with analytics. |
| 42e4b8d IMPALA-1952: Expand parsing of decimals to include scientific notation |
| d4cdb61 IMPALA-1860: INSERT/CTAS evaluates and applies constant predicates. |
| b97920d IMPALA-1900: Assign predicates below analytic functions with a compatible partition by clause |
| cdf547a IMPALA-1376: Split up Planner into multiple classes. |
| 47d87ea IMPALA-1888: FIRST_VALUE may produce incorrect results with preceding windows |
| 16725e5 IMPALA-1559: FIRST_VALUE rewrite fn type might not match slot type |
| c132c75 IMPALA-1808: AnalyticEvalNode cannot handle partition/order by exprs with NaN |
| 082b806 IMPALA-1562: AnalyticEvalNode not properly handling nullable tuples |
| --> |
| |
| <concept id="IMPALA-1519"> |
| <title>Crash: impala::TupleIsNullPredicate::Prepare</title> |
| <conbody> |
| <p> |
| When expressions that tested for <codeph>NULL</codeph> were used in combination with analytic functions, an error could occur. |
| (The original crash issue was fixed by an earlier patch.) |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1519">IMPALA-1519</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1952-214"> |
| <title>Expand parsing of decimals to include scientific notation</title> |
| <conbody> |
| <p> |
| <codeph>DECIMAL</codeph> literals could include <codeph>e</codeph> scientific notation. |
| For example, now <codeph>CAST(1e3 AS DECIMAL(5,3))</codeph> is a valid expression. |
| Formerly it returned <codeph>NULL</codeph>. |
| Some scientific expressions might have worked before in <codeph>DECIMAL</codeph> context, but only when the scale was 0. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1952">IMPALA-1952</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1860"> |
| <title>INSERT/CTAS evaluates and applies constant predicates.</title> |
| <conbody> |
| <p> |
| An <codeph>INSERT OVERWRITE</codeph> statement would write new data, even if |
| a constant clause such as <codeph>WHERE 1 = 0</codeph> should have |
| prevented it from writing any rows. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1860">IMPALA-1860</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1900"> |
| <title>Assign predicates below analytic functions with a compatible partition by clause</title> |
| <conbody> |
| <p> |
| If the <codeph>PARTITION BY</codeph> clause in an analytic function refers to partition key columns in a partitioned table, |
| now Impala can perform partition pruning during the analytic query. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1900">IMPALA-1900</xref></p> |
| </conbody> |
| </concept> |
| |
| <!-- This is just code refactoring that should have no user-visible aspects. |
| (Although it did introduce some bugs that were the subject of other fixes.) |
| <concept id="IMPALA-1376"> |
| <title>Split up Planner into multiple classes.</title> |
| <conbody> |
| <p> |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1376">IMPALA-1376</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-1888"> |
| <title>FIRST_VALUE may produce incorrect results with preceding windows</title> |
| <conbody> |
| <p> |
| A query using the <codeph>FIRST_VALUE</codeph> analytic function |
| and a window defined with the <codeph>PRECEDING</codeph> keyword |
| could produce wrong results. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1888">IMPALA-1888</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1559"> |
| <title>FIRST_VALUE rewrite fn type might not match slot type</title> |
| <conbody> |
| <p> |
| A query referencing a <codeph>DECIMAL</codeph> column with the <codeph>FIRST_VALUE</codeph> analytic function |
| could encounter an error. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1559">IMPALA-1559</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1808"> |
| <title>AnalyticEvalNode cannot handle partition/order by exprs with NaN</title> |
| <conbody> |
| <p> |
| A query using an analytic function |
| could encounter an error if the |
| evaluation of an analytic <codeph>ORDER BY</codeph> or <codeph>PARTITION</codeph> expression |
| resulted in a NaN value, for example if the <codeph>ORDER BY</codeph> or <codeph>PARTITION</codeph> |
| contained a division operation where both operands were zero. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1808">IMPALA-1808</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1562"> |
| <title>AnalyticEvalNode not properly handling nullable tuples</title> |
| <conbody> |
| <p> |
| An analytic function containing only an <codeph>OVER</codeph> clause could |
| encounter an error if another part of the query (specifically an outer join) |
| produced all-<codeph>NULL</codeph> tuples. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1562">IMPALA-1562</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.3" id="fixed_issues_213"> |
| |
| <title>Issues Fixed in Impala 2.1.3</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.1.3. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-1658"> |
| <title>Add compatibility flag for Hive-Parquet-Timestamps</title> |
| <conbody> |
| <p> |
| When Hive writes <codeph>TIMESTAMP</codeph> values, it represents them |
| in the local time zone of the server. Impala expects <codeph>TIMESTAMP</codeph> |
| values to always be in the UTC time zone, possibly leading to inconsistent |
| results depending on which component created the data files. |
| This patch introduces a new startup flag, |
| <codeph>-convert_legacy_hive_parquet_utc_timestamps</codeph> |
| for the <cmdname>impalad</cmdname> daemon. |
| Specify <codeph>-convert_legacy_hive_parquet_utc_timestamps=true</codeph> |
| to make Impala recognize Parquet data files written by Hive |
| and automatically adjust <codeph>TIMESTAMP</codeph> |
| values read from those files into the UTC time zone for |
| compatibility with other Impala <codeph>TIMESTAMP</codeph> processing. |
| Although this setting is currently turned off by default, |
| consider enabling it if practical in your environment, |
| for maximum interoperability with Hive-created Parquet files. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1658">IMPALA-1658</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1738"> |
| <title>Use snprintf() instead of lexical_cast() in float-to-string casts</title> |
| <conbody> |
| <p> |
| Converting a floating-point value to a <codeph>STRING</codeph> could be slower than necessary. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1738">IMPALA-1738</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1865"> |
| <title>Fix partition spilling cleanup when new stream OOMs</title> |
| <conbody> |
| <p> |
| Certain calls to aggregate functions with <codeph>STRING</codeph> arguments could encounter a serious error |
| when the system ran low on memory and attempted to activate the spill-to-disk mechanism. |
| The error message referenced the function <codeph>impala::AggregateFunctions::StringValGetValue</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1865">IMPALA-1865</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1805-213"> |
| <title>Impala's ACLs check do not consider all group ACLs, only checked first one.</title> |
| <conbody> |
| <p> |
| If the HDFS user ID associated with the <cmdname>impalad</cmdname> process had read or write access in HDFS based on group membership, |
| Impala statements could still fail with HDFS permission errors if that group was not the first listed group for that user ID. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1805">IMPALA-1805</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1794-213"> |
| <title>Fix infinite loop opening or closing file with invalid metadata</title> |
| <conbody> |
| <p> |
| Truncating a file in HDFS, after Impala had cached the file metadata, could produce a hang when Impala |
| queried a table containing that file. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1794">IMPALA-1794</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1801"> |
| <title>external-data-source-executor leaking global jni refs</title> |
| <conbody> |
| <p> |
| Successive calls to the data source API could result in excessive memory consumption, |
| with memory allocated but never freed. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1801">IMPALA-1801</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1712-213"> |
| <title>Spurious stale block locality messages</title> |
| <conbody> |
| <p> |
| Impala could issue messages stating the block locality metadata was stale, |
| when the metadata was actually fine. |
| The internal <q>remote bytes read</q> counter was not being reset properly. |
| This issue did not cause an actual slowdown in query execution, |
| but the spurious error could result in unnecessary debugging work |
| and unnecessary use of the <codeph>INVALIDATE METADATA</codeph> statement. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1712">IMPALA-1712</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.2" id="fixed_issues_212"> |
| |
| <title>Issues Fixed in Impala 2.1.2</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.1.2. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.1.2, see |
| <xref keyref="jira_list_212"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| <!-- |
| IMPALA-1622: fix overflow in StringParser::StringToFloatInternal() |
| IMPALA-1623: unix_timestamp() does not return correct time |
| IMPALA-1535: Partition pruning with NULL - also in 5.2.4 / 2.0.3 release notes |
| IMPALA-1120: Fetch column statistics using Hive 0.13 bulk API - also in 5.2.4 / 2.0.3 release notes |
| --> |
| |
| <concept id="IMPALA-1622"> |
| <title>Impala incorrectly handles double numbers with more than 19 significant decimal digits</title> |
| <conbody> |
| <p> |
| When a floating-point value was read from a text file and interpreted as a <codeph>FLOAT</codeph> |
| or <codeph>DOUBLE</codeph> value, it could be incorrectly interpreted if it included more than |
| 19 significant digits. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1622">IMPALA-1622</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1623-213"> |
| <title>unix_timestamp() does not return correct time</title> |
| <conbody> |
| <p> |
| The <codeph>unix_timestamp()</codeph> function could return an incorrect value (a constant value of 1). |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1623">IMPALA-1623</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1535"> |
| <title>Row Count Mismatch: Partition pruning with NULL</title> |
| <conbody> |
| <p> |
| A query against a partitioned table could return incorrect results if the <codeph>WHERE</codeph> clause |
| compared the partition key to <codeph>NULL</codeph> using operators such as <codeph>=</codeph> or <codeph>!=</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1535">IMPALA-1535</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1120"> |
| <title>Fetch column stats in bulk using new (Hive .13) HMS APIs</title> |
| <conbody> |
| <p>The performance of the <codeph>COMPUTE STATS</codeph> statement and queries was improved, particularly for wide tables.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1120">IMPALA-1120</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.1.1" id="fixed_issues_211"> |
| |
| <title>Issues Fixed in Impala 2.1.1</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.1.1. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.1.1, see |
| <xref keyref="jira_list_211"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept rev="2.1.1" id="IMPALA-1674-211"> |
| |
| <title>IMPALA-1556 causes memory leak with secure connections</title> |
| |
| <conbody> |
| |
| <p> |
| <cmdname>impalad</cmdname> daemons could experience a memory leak on clusters using Kerberos |
| authentication, with memory usage growing as more data is transferred across the secure channel, either |
| to the client program or between Impala nodes. The same issue affected LDAP-secured clusters to a lesser |
| degree, because the LDAP security only covers data transferred back to client programs. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1674"/> IMPALA-1674 |
| </p> |
| |
| <!-- <p><b>Resolution:</b> Contact <keyword keyref="support_org"/> for a patch.</p> --> |
| </conbody> |
| </concept> |
| |
| <concept rev="2.1.1" id="IMPALA-1668"> |
| |
| <title>TSaslServerTransport::Factory::getTransport() leaks transport map entries</title> |
| |
| <conbody> |
| |
| <p> |
| <cmdname>impalad</cmdname> daemons in clusters secured by Kerberos or LDAP could experience a slight |
| memory leak on each connection. The accumulation of unreleased memory could cause problems on |
| long-running clusters. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1668">IMPALA-1668</xref> |
| </p> |
| |
| <!-- <p><b>Resolution:</b> Contact <keyword keyref="support_org"/> for a patch.</p> --> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="2.1.0" id="fixed_issues_210"> |
| |
| <title>Issues Fixed in Impala 2.1.0</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.1.0. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.1.0, see |
| <xref keyref="jira_list_210"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-1455"> |
| |
| <title>Kerberos fetches 3x slower</title> |
| |
| <conbody> |
| |
| <p> |
| Transferring large result sets back to the client application on Kerberos |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1455">IMPALA-1455</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1556"> |
| |
| <title>Compressed file needs to be hold on entirely in Memory</title> |
| |
| <conbody> |
| |
| <p> |
| Queries on gzipped text files required holding the entire data file and its uncompressed representation |
| in memory at the same time. <codeph>SELECT</codeph> and <codeph>COMPUTE STATS</codeph> statements could |
| fail or perform inefficiently as a result. The fix enables streaming reads for gzipped text, so that the |
| data is uncompressed as it is read. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1556">IMPALA-1556</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1611"> |
| |
| <title>Cannot read hbase metadata with NullPointerException: null</title> |
| |
| <conbody> |
| |
| <p> |
| Impala might not be able to access HBase tables, depending on the associated levels of Impala and HBase |
| on the system. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1611">IMPALA-1611</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-serious-201"> |
| |
| <title>Serious errors / crashes</title> |
| |
| <conbody> |
| |
| <p> |
| Improved code coverage in Impala testing uncovered a number of potentially serious errors that could |
| occur with specific query syntax. These errors are resolved in Impala 2.1. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1553">IMPALA-1553</xref>, |
| <xref keyref="IMPALA-1528">IMPALA-1528</xref>, |
| <xref keyref="IMPALA-1526">IMPALA-1526</xref>, |
| <xref keyref="IMPALA-1524">IMPALA-1524</xref>, |
| <xref keyref="IMPALA-1508">IMPALA-1508</xref>, |
| <xref keyref="IMPALA-1493">IMPALA-1493</xref>, |
| <xref keyref="IMPALA-1501">IMPALA-1501</xref>, |
| <xref keyref="IMPALA-1483">IMPALA-1483</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <!-- All 2.0.x subsections go under here --> |
| |
| <concept rev="2.0.5" id="fixed_issues_205"> |
| |
| <title>Issues Fixed in Impala 2.0.5</title> |
| |
| <conbody> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.5, see |
| <xref keyref="jira_list_205"/>. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept rev="2.0.4" id="fixed_issues_204"> |
| |
| <title>Issues Fixed in Impala 2.0.4</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.0.4. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.4, see |
| <xref keyref="jira_list_204"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| 2c87782 IMPALA-1658: Add compatibility flag for Hive-Parquet-Timestamps |
| 9c5d858 IMPALA-1794: Fix infinite loop opening/closing file w/ invalid metadata |
| |
| Not going to list this one, 'external data source' feature is not documented or supported: |
| db3362f IMPALA-1801: external-data-source-executor leaking global jni refs |
| --> |
| |
| <concept id="IMPALA-1658-526"> |
| <title>Add compatibility flag for Hive-Parquet-Timestamps</title> |
| <conbody> |
| <p> |
| When Hive writes <codeph>TIMESTAMP</codeph> values, it represents them |
| in the local time zone of the server. Impala expects <codeph>TIMESTAMP</codeph> |
| values to always be in the UTC time zone, possibly leading to inconsistent |
| results depending on which component created the data files. |
| This patch introduces a new startup flag, |
| <codeph>-convert_legacy_hive_parquet_utc_timestamps</codeph> |
| for the <cmdname>impalad</cmdname> daemon. |
| Specify <codeph>-convert_legacy_hive_parquet_utc_timestamps=true</codeph> |
| to make Impala recognize Parquet data files written by Hive |
| and automatically adjust <codeph>TIMESTAMP</codeph> |
| values read from those files into the UTC time zone for |
| compatibility with other Impala <codeph>TIMESTAMP</codeph> processing. |
| Although this setting is currently turned off by default, |
| consider enabling it if practical in your environment, |
| for maximum interoperability with Hive-created Parquet files. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1658">IMPALA-1658</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1794-526"> |
| <title>IoMgr infinite loop opening/closing file when shorter than cached metadata size</title> |
| <conbody> |
| <p> |
| If a table data file was replaced by a shorter file outside of Impala, |
| such as with <codeph>INSERT OVERWRITE</codeph> in Hive producing an empty |
| output file, subsequent Impala queries could hang. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1794">IMPALA-1794</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.0.3" id="fixed_issues_203"> |
| |
| <title>Issues Fixed in Impala 2.0.3</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.0.3. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.3, see |
| <xref keyref="jira_list_203"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-1471"> |
| <title>Anti join could produce incorrect results when spilling</title> |
| <conbody> |
| <p> |
| An anti-join query (or a <codeph>NOT EXISTS</codeph> operation that was rewritten internally into an anti-join) could produce incorrect results |
| if Impala reached its memory limit, causing the query to write temporary results to disk. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1471">IMPALA-1471</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1535-52x"> |
| <title>Row Count Mismatch: Partition pruning with NULL</title> |
| <conbody> |
| <p> |
| A query against a partitioned table could return incorrect results if the <codeph>WHERE</codeph> clause |
| compared the partition key to <codeph>NULL</codeph> using operators such as <codeph>=</codeph> or <codeph>!=</codeph>. |
| </p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1535">IMPALA-1535</xref></p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1120-52x"> |
| <title>Fetch column stats in bulk using new (Hive .13) HMS APIs</title> |
| <conbody> |
| <p>The performance of the <codeph>COMPUTE STATS</codeph> statement and queries was improved, particularly for wide tables.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1120">IMPALA-1120</xref></p> |
| </conbody> |
| </concept> |
| |
| </concept> |
| |
| <concept rev="2.0.2" id="fixed_issues_202"> |
| |
| <title>Issues Fixed in Impala 2.0.2</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.0.2. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.2, see |
| <xref keyref="jira_list_202"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-1453"> |
| |
| <title>GROUP BY on STRING column produces inconsistent results</title> |
| |
| <conbody> |
| |
| <p> |
| Some operations in queries submitted through Hue or other HiveServer2 clients could produce inconsistent |
| results. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1453">IMPALA-1453</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IoMgr_522"> |
| |
| <title>Fix leaked file descriptor and excessive file descriptor use</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could encounter an error from running out of file descriptors. The fix reduces the amount of time |
| file descriptors are kept open, and avoids leaking file descriptors when read operations encounter |
| errors. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1623-52x"> |
| |
| <title>unix_timestamp() does not return correct time</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>unix_timestamp()</codeph> function could return a constant value <codeph>1</codeph> instead |
| of a representation of the time. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1623">IMPALA-1623</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1586"> |
| |
| <title>Impala should randomly select cached replica</title> |
| |
| <conbody> |
| |
| <p> |
| To avoid putting too heavy a load on any one node, Impala now randomizes which scan node processes each |
| HDFS data block rather than choosing the first cached block replica. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1586">IMPALA-1586</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1606"> |
| |
| <title>Impala does not always give short name to Llama.</title> |
| |
| <conbody> |
| |
| <p> |
| In clusters secured by Kerberos or LDAP, a discrepancy in internal transmission of user names could cause |
| a communication error with Llama. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1606">IMPALA-1606</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1475"> |
| |
| <title>accept unmangled native UDF symbols</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>CREATE FUNCTION</codeph> statement could report that it could not find a function entry point |
| within the <codeph>.so</codeph> file for a UDF written in C++, even if the corresponding function was |
| present. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1475">IMPALA-1475</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="2.0.1" id="fixed_issues_201"> |
| |
| <title>Issues Fixed in Impala 2.0.1</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.0.1. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.1, see |
| <xref keyref="jira_list_201"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-1416"> |
| |
| <title>Queries fail with metastore exception after upgrade and compute stats</title> |
| |
| <conbody> |
| |
| <p> |
| After running the <codeph>COMPUTE STATS</codeph> statement on an Impala table, subsequent queries on that |
| table could fail with the exception message <codeph>Failed to load metadata for table: |
| default.stats_test</codeph>. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1416"/> IMPALA-1416 |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Upgrading to a level of <keyword keyref="distro"/> that includes the fix for HIVE-8627, |
| prevents the problem from affecting future <codeph>COMPUTE STATS</codeph> statements. On affected levels |
| of <keyword keyref="distro"/>, or for Impala tables that have become inaccessible, the workaround is to disable the |
| <codeph>hive.metastore.try.direct.sql</codeph> setting in the Hive metastore |
| <filepath>hive-site.xml</filepath> file and issue the <codeph>INVALIDATE METADATA</codeph> statement for |
| the affected table. You do not need to rerun the <codeph>COMPUTE STATS</codeph> statement for the table. |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="2.0.0" id="fixed_issues_200"> |
| |
| <title>Issues Fixed in Impala 2.0.0</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 2.0.0. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 2.0.0, see |
| <xref keyref="jira_list_200"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| |
| <!-- Preliminary list from Alex: |
| |
| [IMPALA-89] - OVERWRITE behaviour is different from Hive for statically partitioned inserts |
| [IMPALA-642] - Conjunctive predicates on HBase table not working in some scenarios. |
| [IMPALA-648] - Timestamp Parser Does Not like "T" |
| [IMPALA-677] - The columns of the rhs or a LEFT SEMI JOIN should not be visible outside the ON clause. |
| [IMPALA-755] - Escaped quote within quotes hangs the shell |
| [IMPALA-757] - Like predicate with "%%" pattern returns empty result set. |
| [IMPALA-995] - Join Hint is dropped when used inside a view |
| [IMPALA-1072] - Parquet writer is miscounting the byte estimate of the current file. |
| [IMPALA-1087] - Loading UDF/UDA should return with the correct message. |
| [IMPALA-1100] - AnalysisException: duplicated inline view column alias, when definition has "with" and inline view |
| [IMPALA-1101] - WHERE condition ignored in simple query with RIGHT JOIN |
| [IMPALA-1102] - Query with self joined table may produce incorrect results |
| [IMPALA-1105] - Usage of TRUNC with string timestamp reliably crashes node |
| [IMPALA-1109] - Timestamp Cast Returns invalid TIMESTAMP |
| [IMPALA-1110] - group_concat agg function does not work with optional separator |
| [IMPALA-1118] - Incorrect plan after reordering predicates (inner join following outer join) |
| [IMPALA-1119] - Analysis Exception: CTAS, query runs fine on its own |
| [IMPALA-1121] - IllegalStateException upon JOIN of DECIMAL columns with different precision |
| [IMPALA-1123] - Combining fragments with compatible data partitions can lead to incorrect results due to type incompatibilities (missing casts). |
| [IMPALA-1126] - Unable to disable strict unicode mode in the shell |
| [IMPALA-1128] - IllegalArgumentException with UNION and BIGINT and DECIMAL(19, 0) |
| [IMPALA-1129] - Queries with NOT IN predicates do not handle nulls correctly and return wrong results when codegen is enabled. |
| [IMPALA-1133] - Ensure all webserver output is escaped |
| [IMPALA-1138] - Compute Stats does not report proper error |
| [IMPALA-1164] - NDV Aggregate Function returns a STRING not a BIGINT |
| [IMPALA-1165] - Predicate dropped: Inline view + DISTINCT aggregate in outer query |
| [IMPALA-1187] - Optionally auto transform multiple count distincts as NDV |
| [IMPALA-1224] - 'illegal state exception' on using scientific notation in where condition in the query for bigint data type |
| [IMPALA-1235] - impala-shell prompt gets out of synch with connected host |
| [IMPALA-1236] - Queries with union in inline view have empty resource requests |
| [IMPALA-1252] - Parquet writer double counts when computing the file size estimate leading to smaller than expected files |
| [IMPALA-1272] - setting compression codec that parquet can't handle crashes impalad |
| [IMPALA-1279] - Impala does not employ ACLs when checking path permissions for LOAD and INSERT |
| [IMPALA-1334] - Impala does not map principals to lowercase, affecting Sentry authorisation |
| [IMPALA-1336] - Set the shell's unix environment's locale settings to allow for UTF-8 compatibility. |
| [IMPALA-1353] - Reuse of a column in JOIN predicate may lead to incorrect results |
| [IMPALA-491] - Improve error message when queries fail due to BE nodes dying |
| [IMPALA-526] - Impala should report expression evaluation error instead of always returning null |
| [IMPALA-601] - Shell should optionally read its configuration from a file |
| [IMPALA-603] - Impala should be more robust against metastore connection failures and issue user-friendly error message if Hive metastore connection fails |
| [IMPALA-1058] - Don't throw away SUMMARY until next successful statement |
| [IMPALA-1104] - Allow creating Avro tables without column definitions. Allow COMPUTE STATS to always work on Impala-created Avro tables. |
| [IMPALA-700] - Show functions should also list built-in functions |
| [IMPALA-731] - DECODE function |
| [IMPALA-1080] - Implement "SET <query_option>" as SQL statement |
| [IMPALA-52] - Add support for compressed text |
| --> |
| </conbody> |
| |
| <concept id="IMPALA-995"> |
| |
| <title>Join Hint is dropped when used inside a view</title> |
| |
| <conbody> |
| |
| <p> |
| Hints specified within a view query did not take effect when the view was queried, leading to slow |
| performance. As part of this fix, Impala now supports hints embedded within comments. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-995">IMPALA-995"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1101"> |
| |
| <title>WHERE condition ignored in simple query with RIGHT JOIN</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1101">IMPALA-1101"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1102"> |
| |
| <title>Query with self joined table may produce incorrect results</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1102">IMPALA-1102"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1118"> |
| |
| <title>Incorrect plan after reordering predicates (inner join following outer join)</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1118">IMPALA-1118"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1123"> |
| |
| <title>Combining fragments with compatible data partitions can lead to incorrect results due to type incompatibilities (missing casts).</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1123">IMPALA-1123"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1165"> |
| |
| <title>Predicate dropped: Inline view + DISTINCT aggregate in outer query</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1165">IMPALA-1165"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1353"> |
| |
| <title>Reuse of a column in JOIN predicate may lead to incorrect results</title> |
| |
| <conbody> |
| |
| <p> |
| Potential wrong results for some types of queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1353">IMPALA-1353"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1105"> |
| |
| <title>Usage of TRUNC with string timestamp reliably crashes node</title> |
| |
| <conbody> |
| |
| <p> |
| Serious error for certain combinations of function calls and data types. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1105">IMPALA-1105"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1109"> |
| |
| <title>Timestamp Cast Returns invalid TIMESTAMP</title> |
| |
| <conbody> |
| |
| <p> |
| Serious error for certain combinations of function calls and data types. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1109">IMPALA-1109"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1121"> |
| |
| <title>IllegalStateException upon JOIN of DECIMAL columns with different precision</title> |
| |
| <conbody> |
| |
| <p> |
| <codeph>DECIMAL</codeph> columns with different precision could not be compared in join predicates. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1121">IMPALA-1121"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1104"> |
| |
| <title>Allow creating Avro tables without column definitions. Allow COMPUTE STATS to always work on Impala-created Avro tables.</title> |
| |
| <conbody> |
| |
| <p> |
| Hive-created Avro tables with columns specified by a JSON file or literal could produce errors when |
| queried in Impala, and could not be used with the <codeph>COMPUTE STATS</codeph> statement. Now you can |
| create such tables in Impala to avoid such errors. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1104">IMPALA-1104"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1133"> |
| |
| <title>Ensure all webserver output is escaped</title> |
| |
| <conbody> |
| |
| <p> |
| The Impala debug web UI did not properly encode all output. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1133">IMPALA-1133"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1236"> |
| |
| <title>Queries with union in inline view have empty resource requests</title> |
| |
| <conbody> |
| |
| <p> |
| Certain queries could run without obeying the limits imposed by resource management. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1236">IMPALA-1236"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1279"> |
| |
| <title>Impala does not employ ACLs when checking path permissions for LOAD and INSERT</title> |
| |
| <conbody> |
| |
| <p> |
| Certain <codeph>INSERT</codeph> and <codeph>LOAD DATA</codeph> statements could fail unnecessarily, if |
| the target directories in HDFS had restrictive HDFS permissions, but those permissions were overridden by |
| HDFS extended ACLs. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1279">IMPALA-1279"</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1334"> |
| |
| <title>Impala does not map principals to lowercase, affecting Sentry authorisation</title> |
| |
| <conbody> |
| |
| <p> |
| In a Kerberos environment, the principal name was not mapped to lowercase, causing issues when a user |
| logged in with an uppercase principal name and Sentry authorization was enabled. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1334">IMPALA-1334"</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.4.4" id="fixed_issues_144"> |
| <title>Issues Fixed in Impala 1.4.4</title> |
| <conbody> |
| |
| <p> |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept rev="1.4.3" id="fixed_issues_143"> |
| |
| <title>Issues Fixed in Impala 1.4.3</title> |
| |
| <conbody> |
| |
| <p> |
| Impala 1.4.3 includes fixes to address what is known as the POODLE vulnerability in SSLv3. SSLv3 access is |
| disabled in the Impala debug web UI. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept rev="1.4.2" id="fixed_issues_142"> |
| |
| <title>Issues Fixed in Impala 1.4.2</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.4.2. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 1.4.2, see |
| <xref keyref="jira_list_142"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| </concept> |
| |
| <concept rev="1.4.1" id="fixed_issues_141"> |
| |
| <title>Issues Fixed in Impala 1.4.1</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.4.1. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 1.4.1, see |
| <xref keyref="jira_list_141"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="impalad_boost_exception"> |
| |
| <title>impalad terminating with Boost exception</title> |
| |
| <conbody> |
| |
| <p> |
| Occasionally, a non-trivial query run through Llama could encounter a serious error. The detailed error |
| in the log was: |
| </p> |
| |
| <codeblock>boost::exception_detail::clone_impl |
| <boost::exception_detail::error_info_injector<boost::lock_error> > |
| </codeblock> |
| |
| <p> |
| <b>Severity:</b> High |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="string_format_logs"> |
| |
| <title>Impalad uses wrong string format when writing logs</title> |
| |
| <conbody> |
| |
| <p> |
| Impala log files could contain internal error messages due to a problem formatting certain strings. The |
| messages consisted of a Java call stack starting with: |
| </p> |
| |
| <codeblock>jni-util.cc:177] java.util.MissingFormatArgumentException: Format specifier 's' |
| </codeblock> |
| |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1107"> |
| |
| <title>Update HS2 client API.</title> |
| |
| <conbody> |
| |
| <p> |
| A downlevel version of the HiveServer2 API could cause difficulty retrieving the precision and scale of a |
| <codeph>DECIMAL</codeph> value. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1107">IMPALA-1107</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1093"> |
| |
| <title>Impalad catalog updates can fail with error: "IllegalArgumentException: fromKey out of range"</title> |
| |
| <conbody> |
| |
| <p> |
| The error in the title could occur following a DDL statement. This issue was discovered during internal |
| testing and has not been reported in customer environments. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1093">IMPALA-1093</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1131"> |
| |
| <title>"Total" time counter does not capture all the network transmit time</title> |
| |
| <conbody> |
| |
| <p> |
| The time for some network operations was not counted in the report of total time for a query, making it |
| difficult to diagnose network-related performance issues. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1131">IMPALA-1131</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-1130"> |
| <title>Multi-line query with non UTF-8 compatible input throws UnicodeEncodeError</title> |
| <conbody> |
| <p>Although <cmdname>impala-shell</cmdname> added Unicode support in Impala 1.4.0, queries entered across multiple lines could still encounter errors related to Unicode processing.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-1130">IMPALA-1130</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-1149"> |
| |
| <title>Impala will crash when reading certain Avro files containing bytes data</title> |
| |
| <conbody> |
| |
| <p> |
| Certain Avro fields for byte data could cause Impala to be unable to read an Avro data file, even if the |
| field was not part of the Impala table definition. With this fix, Impala can now read these Avro data |
| files, although Impala queries cannot refer to the <q>bytes</q> fields. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1149">IMPALA-1149</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1142"> |
| |
| <title>Support specifying a custom AuthorizationProvider in Impala</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>--authorization_policy_provider_class</codeph> option for <cmdname>impalad</cmdname> was |
| added back. This option specifies a custom <codeph>AuthorizationProvider</codeph> class rather than the |
| default <codeph>HadoopGroupAuthorizationProvider</codeph>. It had been used for internal testing, then |
| removed in Impala 1.4.0, but it was considered useful by some customers. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1142">IMPALA-1142</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.4.0" id="fixed_issues_140"> |
| |
| <title>Issues Fixed in Impala 1.4.0</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.4.0. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 1.4.0, see |
| <xref keyref="jira_list_140"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| [IMPALA-489] - impala-shell only works with ascii characters |
| [IMPALA-962] - The extended view definition SQL text in Views created by Impala should always have fully-qualified table names. |
| [IMPALA-741] - Impala forgets about partitions with non-existant locations |
| [IMPALA-834] - CREATE TABLE LIKE fails if source is a view |
| [IMPALA-864] - Inserting into table with many cols takes a long time. |
| [IMPALA-887] - Improve partition pruning time |
| [IMPALA-1003] - Improve compute stats performance |
| [IMPALA-185] - When I run CREATE TABLE new_table LIKE avro_table, the schema does not get mapped properly from an avro schema to a hive schema |
| [IMPALA-1046] - Race condition in IoMgr. Blocked ranges enqueued after cancel. |
| [IMPALA-1083] - Deadlock in scan node |
| --> |
| |
| <!-- Use as a template for new issues. |
| <concept id=""> |
| <title></title> |
| <conbody> |
| <p> |
| </p> |
| <p><b>Bug:</b> <xref keyref=""></xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| |
| --> |
| |
| <concept id="IMPALA-1019"> |
| |
| <!-- This issue gets propagated to some older release notes too because it was backported as the only bug fix for Impala 1.3.2. --> |
| |
| <title>Failed DCHECK in disk-io-mgr-reader-context.cc:174</title> |
| |
| <conbody> |
| |
| <p> |
| The serious error in the title could occur, with the supplemental message: |
| </p> |
| |
| <codeblock>num_used_buffers_ < 0: #used=-1 during cancellation HDFS cached data</codeblock> |
| |
| <p> |
| The issue was due to the use of HDFS caching with data files accessed by Impala. Support for HDFS caching |
| in Impala was introduced in <keyword keyref="impala140"/>. The fix for this issue was backported to Impala |
| 1.3.x, and is the only change in Impala 1.3.2. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1019">IMPALA-1019</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> This issue is fixed in Impala 1.3.2. The addition of HDFS caching |
| support in Impala 1.4 means that this issue does not apply to any new level of Impala. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-489"> |
| |
| <title>impala-shell only works with ASCII characters</title> |
| |
| <conbody> |
| |
| <p> |
| The <cmdname>impala-shell</cmdname> interpreter could encounter errors processing SQL statements |
| containing non-ASCII characters. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-489">IMPALA-489</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-962"> |
| |
| <title>The extended view definition SQL text in Views created by Impala should always have fully-qualified table names</title> |
| |
| <conbody> |
| |
| <p> |
| When a view was accessed while inside a different database, references to tables were not resolved unless |
| the names were fully qualified when the view was created. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-962">IMPALA-962</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-741"> |
| |
| <title>Impala forgets about partitions with non-existant locations</title> |
| |
| <conbody> |
| |
| <p> |
| If an <codeph>ALTER TABLE</codeph> specified a non-existent HDFS location for a partition, afterwards |
| Impala would not be able to access the partition at all. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-741">IMPALA-741</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-834"> |
| |
| <title>CREATE TABLE LIKE fails if source is a view</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>CREATE TABLE LIKE</codeph> clause was enhanced to be able to create a table with the same |
| column definitions as a view. The resulting table is a text table unless the <codeph>STORED AS</codeph> |
| clause is specified, because a view does not have an associated file format to inherit. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-834">IMPALA-834</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <!-- Not really fixed yet. Dupe of IMPALA-428 which is unresolved. |
| <concept id="IMPALA-864"> |
| <title>Inserting into table with many cols takes a long time.</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-864">IMPALA-864</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-887"> |
| |
| <title>Improve partition pruning time</title> |
| |
| <conbody> |
| |
| <p> |
| Operations on tables with many partitions could be slow due to the time to evaluate which partitions were |
| affected. The partition pruning code was speeded up substantially. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-887">IMPALA-887</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1003"> |
| |
| <title>Improve compute stats performance</title> |
| |
| <conbody> |
| |
| <p> |
| The performance of the <codeph>COMPUTE STATS</codeph> statement was improved substantially. The |
| efficiency of its internal operations was improved, and some statistics are no longer gathered because |
| they are not currently used for planning Impala queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1003">IMPALA-1003</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-185"> |
| |
| <title>When I run CREATE TABLE new_table LIKE avro_table, the schema does not get mapped properly from an avro schema to a hive schema</title> |
| |
| <conbody> |
| |
| <p> |
| After a <codeph>CREATE TABLE LIKE</codeph> statement using an Avro table as the source, the new table |
| could have incorrect metadata and be inaccessible, depending on how the original Avro table was created. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-185">IMPALA-185</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1046"> |
| |
| <title>Race condition in IoMgr. Blocked ranges enqueued after cancel.</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could encounter a serious error after a query was cancelled. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1046">IMPALA-1046</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-1083"> |
| |
| <title>Deadlock in scan node</title> |
| |
| <conbody> |
| |
| <p> |
| A deadlock condition could make all <cmdname>impalad</cmdname> daemons hang, making the cluster |
| unresponsive for Impala queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1083">IMPALA-1083</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.3.3" id="fixed_issues_133"> |
| |
| <title>Issues Fixed in Impala 1.3.3</title> |
| |
| <conbody> |
| |
| <p> |
| Impala 1.3.3 includes fixes to address what is known as the POODLE vulnerability in SSLv3. SSLv3 access is |
| disabled in the Impala debug web UI. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| </concept> |
| |
| <concept rev="1.3.2" id="fixed_issues_132"> |
| |
| <title>Issues Fixed in Impala 1.3.2</title> |
| |
| <conbody> |
| |
| <p> |
| This backported bug fix is the only change between Impala 1.3.1 and Impala 1.3.2. |
| </p> |
| |
| </conbody> |
| |
| <concept id="IMPALA-1019-132"> |
| |
| <!-- This issue gets propagated to some older release notes too because it was backported as the only bug fix for Impala 1.3.2. --> |
| |
| <title>Failed DCHECK in disk-io-mgr-reader-context.cc:174</title> |
| |
| <conbody> |
| |
| <p> |
| The serious error in the title could occur, with the supplemental message: |
| </p> |
| |
| <codeblock>num_used_buffers_ < 0: #used=-1 during cancellation HDFS cached data</codeblock> |
| |
| <p> |
| The issue was due to the use of HDFS caching with data files accessed by Impala. Support for HDFS caching |
| in Impala was introduced in <keyword keyref="impala140"/>. The fix for this issue was backported to Impala |
| 1.3.x, and is the only change in Impala 1.3.2. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-1019">IMPALA-1019</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> This issue is fixed in Impala 1.3.2. The addition of HDFS caching |
| support in Impala 1.4 means that this issue does not apply to any new level of Impala. |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.3.1" id="fixed_issues_131"> |
| |
| <title>Issues Fixed in Impala 1.3.1</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.3.1. |
| </p> |
| |
| <p> |
| For the full list of fixed issues in Impala 1.3.1, see |
| <xref keyref="jira_list_131"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| [IMPALA-13] - Text data with carriage returns generates wrong results for count(*) |
| [IMPALA-488] - IO Mgr should take instance memory limit into account when creating io buffers |
| [IMPALA-827] - Impala should provide an option for new sub directories to automatically inherit the permissions of the parent directory |
| [IMPALA-888] - Illegal state exception (or crash) in query with UNION in inline view |
| [IMPALA-945] - INSERT column reordering doesn't work with SELECT clause |
| --> |
| |
| <concept id="IMPALA-904"> |
| |
| <title>Impalad crashes when left joining inline view that has aggregate using distinct</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could encounter a severe error in a query combining a left outer join with an inline view |
| containing a <codeph>COUNT(DISTINCT)</codeph> operation. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-904">IMPALA-904</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-901"> |
| |
| <title>Incorrect result with group by query with null value in group by data</title> |
| |
| <conbody> |
| |
| <p> |
| If the result of a <codeph>GROUP BY</codeph> operation is <codeph>NULL</codeph>, the resulting row might |
| be omitted from the result set. This issue depends on the data values and data types in the table. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-901">IMPALA-901</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-786"> |
| |
| <title>Drop Function does not clear local library cache</title> |
| |
| <conbody> |
| |
| <p> |
| When a UDF is dropped through the <codeph>DROP FUNCTION</codeph> statement, and then the UDF is |
| re-created with a new <codeph>.so</codeph> library or JAR file, the original version of the UDF is still |
| used when the UDF is called from queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-786">IMPALA-786</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Restart the <cmdname>impalad</cmdname> daemon on all nodes. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-762"> |
| |
| <title>Compute stats doesn't propagate underlying error correctly</title> |
| |
| <conbody> |
| |
| <p> |
| If a <codeph>COMPUTE STATS</codeph> statement encountered an error, the error message is <q>Query |
| aborted</q> with no further detail. Common reasons why a <codeph>COMPUTE STATS</codeph> statement might |
| fail include network errors causing the coordinator node to lose contact with other |
| <cmdname>impalad</cmdname> instances, and column names that match Impala |
| <xref href="impala_reserved_words.xml#reserved_words">reserved words</xref>. (Currently, if a column name |
| is an Impala reserved word, <codeph>COMPUTE STATS</codeph> always returns an error.) |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-762">IMPALA-762</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-624"> |
| |
| <title>Inserts should respect changes in partition location</title> |
| |
| <conbody> |
| |
| <p> |
| After an <codeph>ALTER TABLE</codeph> statement that changes the <codeph>LOCATION</codeph> property of a |
| partition, a subsequent <codeph>INSERT</codeph> statement would always use a path derived from the base |
| data directory for the table. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-624">IMPALA-624</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-13"> |
| |
| <title>Text data with carriage returns generates wrong results for count(*)</title> |
| |
| <conbody> |
| |
| <p> |
| A <codeph>COUNT(*)</codeph> operation could return the wrong result for text tables using nul characters |
| (ASCII value 0) as delimiters. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-13">IMPALA-13</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Impala adds support for ASCII 0 characters as delimiters through the clause |
| <codeph>FIELDS TERMINATED BY '\0'</codeph>. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-488"> |
| |
| <title>IO Mgr should take instance memory limit into account when creating io buffers</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could allocate more memory than necessary during certain operations. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-488">IMPALA-488</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Before issuing a <codeph>COMPUTE STATS</codeph> statement for a Parquet table, reduce |
| the number of threads used in that operation by issuing <codeph>SET NUM_SCANNER_THREADS=2</codeph> in |
| <cmdname>impala-shell</cmdname>. Then issue <codeph>UNSET NUM_SCANNER_THREADS</codeph> before continuing |
| with queries. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-827"> |
| |
| <title>Impala should provide an option for new sub directories to automatically inherit the permissions of the parent directory</title> |
| |
| <conbody> |
| |
| <p> |
| When new subdirectories are created underneath a partitioned table by an <codeph>INSERT</codeph> |
| statement, previously the new subdirectories always used the default HDFS permissions for the |
| <codeph>impala</codeph> user, which might not be suitable for directories intended to be read and written |
| by other components also. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-827">IMPALA-827</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> In Impala 1.3.1 and higher, you can specify the |
| <codeph>--insert_inherit_permissions</codeph> configuration when starting the <cmdname>impalad</cmdname> |
| daemon. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-888"> |
| |
| <title>Illegal state exception (or crash) in query with UNION in inline view</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could encounter a severe error in a query where the <codeph>FROM</codeph> list contains an inline |
| view that includes a <codeph>UNION</codeph>. The exact type of the error varies. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-888">IMPALA-888</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-945"> |
| |
| <title>INSERT column reordering doesn't work with SELECT clause</title> |
| |
| <conbody> |
| |
| <p> |
| The ability to specify a subset of columns in an <codeph>INSERT</codeph> statement, with order different |
| than in the target table, was not working as intended. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-945">IMPALA-945</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.3.0" id="fixed_issues_130"> |
| |
| <title>Issues Fixed in Impala 1.3.0</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.3.0, primarily issues that could cause |
| wrong results, or cause problems running the <codeph>COMPUTE STATS</codeph> statement, which is very |
| important for performance and scalability. |
| </p> |
| |
| <p> |
| For the full list of fixed issues, see |
| <xref keyref="jira_list_130"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| My first cut at the important issues: |
| |
| Wrong results: |
| 860 |
| 850 |
| 845 |
| 831 |
| 817 |
| 765 |
| 723 |
| 729 |
| |
| Bad stats: |
| 777 |
| 903 |
| 880 |
| 867 |
| |
| --> |
| |
| <concept id="IMPALA-860"> |
| |
| <title>Inner join after right join may produce wrong results</title> |
| |
| <conbody> |
| |
| <p> |
| The automatic join reordering optimization could incorrectly reorder queries with an outer join or semi |
| join followed by an inner join, producing incorrect results. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-860">IMPALA-860</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Including the <codeph>STRAIGHT_JOIN</codeph> keyword in the query prevented the issue |
| from occurring. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-850"> |
| |
| <title>Incorrect results with codegen on multi-column group by with NULLs.</title> |
| |
| <conbody> |
| |
| <p> |
| A query with a <codeph>GROUP BY</codeph> clause referencing multiple columns could introduce incorrect |
| <codeph>NULL</codeph> values in some columns of the result set. The incorrect <codeph>NULL</codeph> |
| values could appear in rows where a different <codeph>GROUP BY</codeph> column actually did return |
| <codeph>NULL</codeph>. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-850">IMPALA-850</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-845"> |
| |
| <title>Using distinct inside aggregate function may cause incorrect result when using having clause</title> |
| |
| <conbody> |
| |
| <p> |
| A query could return incorrect results if it combined an aggregate function call, a |
| <codeph>DISTINCT</codeph> operator, and a <codeph>HAVING</codeph> clause, without a <codeph>GROUP |
| BY</codeph> clause. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-845">IMPALA-845</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-831"> |
| |
| <title>Aggregation on union inside (inline) view not distributed properly.</title> |
| |
| <conbody> |
| |
| <p> |
| An aggregation query or a query with <codeph>ORDER BY</codeph> and <codeph>LIMIT</codeph> could be |
| executed on a single node in some cases, rather than distributed across the cluster. This issue affected |
| queries whose <codeph>FROM</codeph> clause referenced an inline view containing a <codeph>UNION</codeph>. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-831">IMPALA-831</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-817"> |
| |
| <title>Wrong expression may be used in aggregate query if there are multiple similar expressions</title> |
| |
| <conbody> |
| |
| <p> |
| If a <codeph>GROUP BY</codeph> query referenced the same columns multiple times using different |
| operators, result rows could contain multiple copies of the same expression. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-817">IMPALA-817</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-765"> |
| |
| <title>Incorrect results when changing the order of aggregates in the select list with codegen enabled</title> |
| |
| <conbody> |
| |
| <p> |
| Referencing the same columns in both a <codeph>COUNT()</codeph> and a <codeph>SUM()</codeph> call in the |
| same query, or some other combinations of aggregate function calls, could incorrectly return a result of |
| 0 from one of the aggregate functions. This issue affected references to <codeph>TINYINT</codeph> and |
| <codeph>SMALLINT</codeph> columns, but not <codeph>INT</codeph> or <codeph>BIGINT</codeph> columns. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-765">IMPALA-765</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Setting the query option <codeph>DISABLE_CODEGEN=TRUE</codeph> prevented the incorrect |
| results. Switching the order of the function calls could also prevent the issue from occurring. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-723"> |
| |
| <title>Union queries give Wrong result in a UNION followed by SIGSEGV in another union</title> |
| |
| <conbody> |
| |
| <p> |
| A <codeph>UNION</codeph> query could produce a wrong result, followed by a serious error for a subsequent |
| <codeph>UNION</codeph> query. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-723">IMPALA-723</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-729"> |
| |
| <title>String data in MR-produced parquet files may be read incorrectly</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could return incorrect string results when reading uncompressed Parquet data files containing |
| multiple row groups. This issue only affected Parquet data files produced by MapReduce jobs. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-729">IMPALA-729</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-777"> |
| |
| <title>Compute stats need to use quotes with identifiers that are Impala keywords</title> |
| |
| <conbody> |
| |
| <p> |
| Using a column or table name that conflicted with Impala keywords could prevent running the |
| <codeph>COMPUTE STATS</codeph> statement for the table. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-777">IMPALA-777</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-903"> |
| |
| <title>COMPUTE STATS child queries do not inherit parent query options.</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>COMPUTE STATS</codeph> statement did not use the setting of the <codeph>MEM_LIMIT</codeph> |
| query option in <cmdname>impala-shell</cmdname>, potentially causing problems gathering statistics for |
| wide Parquet tables. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-903">IMPALA-903</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-880"> |
| |
| <title>COMPUTE STATS should update partitions in batches</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>COMPUTE STATS</codeph> statement could be slow or encounter a timeout while analyzing a table |
| with many partitions. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-880">IMPALA-880</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-867"> |
| |
| <title>Fail early (in analysis) when COMPUTE STATS is run against Avro table with no columns</title> |
| |
| <conbody> |
| |
| <p> |
| If the columns for an Avro table were all defined in the <codeph>TBLPROPERTIES</codeph> or |
| <codeph>SERDEPROPERTIES</codeph> clauses, the <codeph>COMPUTE STATS</codeph> statement would fail after |
| completely analyzing the table, potentially causing a long delay. Although the <codeph>COMPUTE |
| STATS</codeph> statement still does not work for such tables, now the problem is detected and reported |
| immediately. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-867">IMPALA-867</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Re-create the Avro table with columns defined in SQL style, using the output of |
| <codeph>SHOW CREATE TABLE</codeph>. (See the JIRA page for detailed steps.) |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.2.4" id="fixed_issues_124"> |
| |
| <title>Issues Fixed in the 1.2.4 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.2.4. For the full list of fixed issues, |
| see |
| <xref keyref="jira_list_124"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-818"> |
| |
| <title>The Catalog Server exits with an OOM error after a certain number of CREATE statements</title> |
| |
| <conbody> |
| |
| <p> |
| A large number of concurrent <codeph>CREATE TABLE</codeph> statements can cause the |
| <cmdname>catalogd</cmdname> process to consume excessive memory, and potentially be killed due to an |
| out-of-memory condition. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-818">IMPALA-818</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Restart the <cmdname>catalogd</cmdname> service and re-try the DDL operations that |
| failed. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-821"> |
| |
| <title>Catalog Server consumes excessive cpu cycle</title> |
| |
| <conbody> |
| |
| <p> |
| A large number of tables and partitions could result in unnecessary CPU overhead during Impala idle time |
| and background operations. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-821">IMPALA-821</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Catalog server processing was optimized in several ways. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-828"> |
| |
| <title>Query against Avro table crashes Impala with codegen enabled</title> |
| |
| <conbody> |
| |
| <p> |
| A query against a <codeph>TIMESTAMP</codeph> column in an Avro table could encounter a serious issue. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-828">IMPALA-828</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Set the query option <codeph>DISABLE_CODEGEN=TRUE</codeph> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-809"> |
| |
| <title>Statestore seems to send concurrent heartbeats to the same subscriber leading to repeated "Subscriber '<varname>hostname</varname>' is registering with statestore, ignoring update" messages</title> |
| |
| <conbody> |
| |
| <p> |
| Impala nodes could produce repeated error messages after recovering from a communication error with the |
| statestore service. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-809">IMPALA-809</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-805"> |
| |
| <title>Join predicate incorrectly ignored</title> |
| |
| <conbody> |
| |
| <p> |
| A join query could produce wrong results if multiple equality comparisons between the same tables |
| referred to the same column. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-805">IMPALA-805</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-1258"> |
| |
| <title>Query result differing between Impala and Hive</title> |
| |
| <conbody> |
| |
| <p> |
| Certain outer join queries could return wrong results. If one of the tables involved in the join was an |
| inline view, some tests from the <codeph>WHERE</codeph> clauses could be applied to the wrong phase of |
| the query. |
| </p> |
| |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-715"> |
| |
| <title>ArrayIndexOutOfBoundsException / Invalid query handle when reading large HBase cell</title> |
| |
| <conbody> |
| |
| <p> |
| An HBase cell could contain a value larger than 32 KB, leading to a serious error when Impala queries |
| that table. The error could occur even if the applicable row is not part of the result set. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-715">IMPALA-715</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Use smaller values in the HBase table, or exclude the column containing the large |
| value from the result set. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-735"> |
| |
| <title>select with distinct and full outer join, impalad coredump</title> |
| |
| <conbody> |
| |
| <p> |
| A query involving a <codeph>DISTINCT</codeph> operator combined with a <codeph>FULL OUTER JOIN</codeph> |
| could encounter a serious error. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-735">IMPALA-735</xref> |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Set the query option <codeph>DISABLE_CODEGEN=TRUE</codeph> |
| </p> |
| </conbody> |
| </concept> |
| |
| <!-- Actually a new feature, so removing from list of fixed issues. |
| <concept id="IMPALA-736"> |
| <title>INVALIDATE METADATA <varname>table_name</varname> should add the table to the catalog if it doesn't already exist</title> |
| <conbody> |
| <p/> |
| <p><b>Bug:</b> <xref keyref="IMPALA-736">IMPALA-736</xref></p> |
| <p><b>Severity:</b> High</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-749"> |
| |
| <title>Impala cannot load tables with more than Short.MAX_VALUE number of partitions</title> |
| |
| <conbody> |
| |
| <p> |
| If a table had more than 32,767 partitions, Impala would not recognize the partitions above the 32K limit |
| and query results could be incomplete. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-749">IMPALA-749</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-1188"> |
| |
| <title>Various issues with HBase row key specification</title> |
| |
| <conbody> |
| |
| <p> |
| Queries against HBase tables could fail with an error if the row key was compared to a function return |
| value rather than a string constant. Also, queries against HBase tables could fail if the |
| <codeph>WHERE</codeph> clause contained combinations of comparisons that could not possibly match any row |
| key. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Queries now return appropriate results when function calls are used in the row key |
| comparison. For queries involving non-existent row keys, such as <codeph>WHERE <varname>row_key</varname> |
| IS NULL</codeph> or where the lower bound is greater than the upper bound, the query succeeds and returns |
| an empty result set. |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.2.3" id="fixed_issues_123"> |
| |
| <title>Issues Fixed in the 1.2.3 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This release is a fix release that supercedes Impala 1.2.2, with the same features and fixes as 1.2.2 plus |
| one additional fix for compatibility with Parquet files generated outside of Impala by components such as |
| Hive, Pig, or MapReduce. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-720"> |
| |
| <title>Impala cannot read Parquet files with multiple row groups</title> |
| |
| <conbody> |
| |
| <p> |
| An early version of the <codeph>parquet-mr</codeph> library writes files that are not readable by |
| Impala, due to the presence of multiple row groups. Queries involving these data files might result in a |
| crash or a failure with an error such as <q>Column chunk should not contain two dictionary pages</q>. |
| </p> |
| |
| <p> |
| This issue does not occur for Parquet files produced by Impala <codeph>INSERT</codeph> statements, |
| because Impala only produces files with a single row group. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-720">IMPALA-720</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.2.2" id="fixed_issues_122"> |
| |
| <title>Issues Fixed in the 1.2.2 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.2.2. For the full list of fixed issues, |
| see <xref keyref="jira_list_122"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="join_order"> |
| |
| <title>Order of table references in FROM clause is critical for optimal performance</title> |
| |
| <conbody> |
| |
| <p> |
| Impala does not currently optimize the join order of queries; instead, it joins tables in the order in |
| which they are listed in the FROM clause. Queries that contain one or more large tables on the right hand |
| side of joins (either an explicit join expressed as a JOIN statement or a join implicit in the list of |
| table references in the FROM clause) may run slowly or crash Impala due to out-of-memory errors. For |
| example: |
| </p> |
| |
| <codeblock>SELECT ... FROM small_table JOIN large_table</codeblock> |
| |
| <p> |
| <b>Anticipated Resolution</b>: Fixed in Impala 1.2.2. |
| </p> |
| |
| <p> |
| <b>Workaround</b>: In Impala 1.2.2 and higher, use the <codeph>COMPUTE STATS</codeph> statement to gather |
| statistics for each table involved in the join query, after data is loaded. Prior to Impala 1.2.2, modify |
| the query, if possible, to join the largest table first. For example: |
| </p> |
| |
| <codeblock>SELECT ... FROM small_table JOIN large_table</codeblock> |
| |
| <p> |
| should be modified to: |
| </p> |
| |
| <codeblock>SELECT ... FROM large_table JOIN small_table</codeblock> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-694"> |
| |
| <title>Parquet in CDH4.5 writes data files that are sometimes unreadable by Impala</title> |
| |
| <conbody> |
| |
| <p> |
| Some Parquet files could be generated by other components that Impala could not read. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-694">IMPALA-694</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> The underlying issue is being addressed by a fix in the Parquet libraries. Impala |
| 1.2.2 works around the problem and reads the existing data files. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-699"> |
| |
| <title>Deadlock in statestore when unregistering a subscriber and building a topic update</title> |
| |
| <conbody> |
| |
| <p> |
| The statestore service cound experience an internal error leading to a hang. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-699">IMPALA-699</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-687"> |
| |
| <title>IllegalStateException when doing a union involving a group by</title> |
| |
| <conbody> |
| |
| <p> |
| A <codeph>UNION</codeph> query where one side involved a <codeph>GROUP BY</codeph> operation could cause |
| a serious error. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-687">IMPALA-687</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-689"> |
| |
| <title>Impala Parquet Writer hit DCHECK in RleEncoder</title> |
| |
| <conbody> |
| |
| <p> |
| A serious error could occur when doing an <codeph>INSERT</codeph> into a Parquet table. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-689">IMPALA-689</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-695"> |
| |
| <title>Hive UDF jars cannot be loaded by the FE</title> |
| |
| <conbody> |
| |
| <p> |
| If the JAR file for a Java-based Hive UDF was not in the <codeph>CLASSPATH</codeph>, the UDF could not be |
| called during a query. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-695">IMPALA-695</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept rev="1.2.1" id="fixed_issues_121"> |
| |
| <title>Issues Fixed in the 1.2.1 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.2.1. For the full list of fixed issues, |
| see <xref keyref="jira_list_121"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-525"> |
| |
| <title>Scanners use too much memory when reading past scan range</title> |
| |
| <conbody> |
| |
| <p> |
| While querying a table with long column values, Impala could over-allocate memory leading to an |
| out-of-memory error. This problem was observed most frequently with tables using uncompressed RCFile or |
| text data files. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-525">IMPALA-525</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 1.2.1 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-657"> |
| |
| <title>Join node consumes memory way beyond mem-limit</title> |
| |
| <conbody> |
| |
| <p> |
| A join query could allocate a temporary work area that was larger than needed, leading to an |
| out-of-memory error. The fix makes Impala return unused memory to the system when the memory limit is |
| reached, avoiding unnecessary memory errors. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-657">IMPALA-657</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 1.2.1 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-652"> |
| |
| <title>Excessive memory consumption when query tables with 1k columns (Parquet file)</title> |
| |
| <conbody> |
| |
| <p> |
| Impala could encounter an out-of-memory condition setting up work areas for Parquet tables with many |
| columns. The fix reduces the size of the allocated memory when not actually needed to hold table data. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-652">IMPALA-652</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 1.2.1 |
| </p> |
| </conbody> |
| </concept> |
| |
| <!-- |
| <concept id="IMPALA-520"> |
| <title>Fail early (in analysis) when COMPUTE STATS is run against Avro table with no columns</title> |
| <conbody> |
| <p></p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-520">IMPALA-520</xref></p> |
| <p><b>Severity:</b> </p> |
| <p><b>Resolution:</b> </p> |
| </conbody> |
| </concept> |
| --> |
| </concept> |
| |
| <concept rev="1.2" id="fixed_issues_120"> |
| |
| <title>Issues Fixed in the 1.2.0 Beta Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.2 (beta). For the full list of fixed |
| issues, see <xref keyref="jira_list_120"/>. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="fixed_issues_111"> |
| |
| <title>Issues Fixed in the 1.1.1 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.1.1. For the full list of fixed issues, |
| see <xref keyref="jira_list_111"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-477"> |
| |
| <title>Unexpected LLVM Crash When Querying Doubles on CentOS 5.x</title> |
| |
| <conbody> |
| |
| <p> |
| Certain queries involving <codeph>DOUBLE</codeph> columns could fail with a serious error. The fix |
| improves the generation of native machine instructions for certain chipsets. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-477">IMPALA-477</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-482"> |
| |
| <title>"block size is too big" error with Snappy-compressed RCFile containing null</title> |
| |
| <conbody> |
| |
| <p> |
| Queries could fail with a <q>block size is too big</q> error, due to <codeph>NULL</codeph> values in |
| RCFile tables using Snappy compression. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-482">IMPALA-482</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-510"> |
| |
| <title>Cannot query RC file for table that has more columns than the data file</title> |
| |
| <conbody> |
| |
| <p> |
| Queries could fail if an Impala RCFile table was defined with more columns than in the corresponding |
| RCFile data files. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-510">IMPALA-510</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-495"> |
| |
| <title>Views Sometimes Not Utilizing Partition Pruning</title> |
| |
| <conbody> |
| |
| <p> |
| Certain combinations of clauses in a view definition for a partitioned table could result in inefficient |
| performance and incorrect results. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-495">IMPALA-495</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-485"> |
| |
| <title>Update the serde name we write into the metastore for Parquet tables</title> |
| |
| <conbody> |
| |
| <p> |
| The SerDes class string written into Parquet data files created by Impala was updated for compatibility |
| with Parquet support in Hive. See <xref href="impala_incompatible_changes.xml#incompatible_changes_111"/> |
| for the steps to update older Parquet data files for Hive compatibility. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-485">IMPALA-485</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-534"> |
| |
| <title>Selective queries over large tables produce unnecessary memory consumption</title> |
| |
| <conbody> |
| |
| <p> |
| A query returning a small result sets from a large table could tie up memory unnecessarily for the |
| duration of the query. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-534">IMPALA-534</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-538"> |
| |
| <title>Impala stopped to query AVRO tables</title> |
| |
| <conbody> |
| |
| <p> |
| Queries against Avro tables could fail depending on whether the Avro schema URL was specified in the |
| <codeph>TBLPROPERTIES</codeph> or <codeph>SERDEPROPERTIES</codeph> field. The fix causes Impala to check |
| both fields for the schema URL. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-538">IMPALA-538</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-520"> |
| |
| <title>Impala continues to allocate more memory even though it has exceed its mem-limit</title> |
| |
| <conbody> |
| |
| <p> |
| Queries could allocate substantially more memory than specified in the <cmdname>impalad</cmdname> |
| <codeph>-mem_limit</codeph> startup option. The fix causes more frequent checking of the limit during |
| query execution. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-520">IMPALA-520</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_110"> |
| |
| <title>Issues Fixed in the 1.1.0 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.1. For the full list of fixed issues, see |
| <xref keyref="jira_list_110"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-335"> |
| |
| <title>10-20% perf regression for most queries across all table formats</title> |
| |
| <conbody> |
| |
| <p> |
| This issue is due to a performance tradeoff between systems running many queries concurrently, and |
| systems running a single query. Systems running only a single query could experience lower performance |
| than in early beta releases. Systems running many queries simultaneously should experience higher |
| performance than in the beta releases. |
| </p> |
| |
| <!-- Bug was actually deleted from JIRA system. |
| <p> |
| <b>Bug:</b> <xref keyref="IMPALA-335">IMPALA-335</xref> |
| </p> |
| --> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-85"> |
| |
| <title>planner fails with "Join requires at least one equality predicate between the two tables" when "from" table order does not match "where" join order</title> |
| |
| <conbody> |
| |
| <p> |
| A query could fail if it involved 3 or more tables and the last join table was specified as a subquery. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-85">IMPALA-85</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-257"> |
| |
| <title>Parquet writer uses excessive memory with partitions</title> |
| |
| <conbody> |
| |
| <p> |
| <codeph>INSERT</codeph> statements against partitioned tables using the Parquet format could use |
| excessive amounts of memory as the number of partitions grew large. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-257">IMPALA-257</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-192"> |
| |
| <title>Comments in impala-shell in interactive mode are not handled properly causing syntax errors or wrong results</title> |
| |
| <conbody> |
| |
| <p> |
| The <cmdname>impala-shell</cmdname> interpreter did not accept comment entered at the command line, |
| making it problematic to copy and paste from scripts or other code examples. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-192">IMPALA-192</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-364"> |
| |
| <title>Cancelled queries sometimes aren't removed from the inflight query list</title> |
| |
| <conbody> |
| |
| <p> |
| The Impala web UI would sometimes display a query as if it were still running, after the query was |
| cancelled. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-364">IMPALA-364</xref> |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-396"> |
| |
| <title>Impala's 1.0.1 Shell Broke Python 2.4 Compatibility (AttributeError: 'module' object has no attribute 'field_size_limit)</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>impala-shell</codeph> command in Impala 1.0.1 does not work with Python 2.4, which is the |
| default on Red Hat 5. |
| </p> |
| |
| <p> |
| For the <codeph>impala-shell</codeph> command in Impala 1.0, the <codeph>-o</codeph> option (pipe output |
| to a file) does not work with Python 2.4. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-396">IMPALA-396</xref> |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_101"> |
| |
| <title>Issues Fixed in the 1.0.1 Release</title> |
| |
| <conbody> |
| |
| <p> |
| This section lists the most significant issues fixed in Impala 1.0.1. For the full list of fixed issues, |
| see <xref keyref="jira_list_101"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <!-- |
| <concept id="IMPALA-325"> |
| <title>Impala may crash when running large number of concurrent queries against a single coordinator</title> |
| <conbody> |
| <p>This issue occurs when a large number of queries are submitted to the same instance of <codeph>impalad</codeph> and are running simultaneously.</p> |
| <p><b>Bug:</b> <xref keyref="IMPALA-325">IMPALA-325</xref></p> |
| <p><b>Severity:</b> High</p> |
| <p><b>Resolution:</b> To be fixed in a future release</p> |
| <p><b>Workaround:</b> Use round-robin scheduling to submit queries to different Impala nodes.</p> |
| </conbody> |
| </concept> |
| --> |
| |
| <concept id="IMPALA-333"> |
| |
| <title>Impala parquet scanner cannot read all data files generated by |
| other frameworks</title> |
| |
| <conbody> |
| |
| <p> |
| Impala might issue an erroneous error message when processing a Parquet data file produced by a |
| non-Impala Hadoop component. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-333">IMPALA-333</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-293"> |
| |
| <title>Impala is unable to query RCFile tables which describe fewer columns than the file's header.</title> |
| |
| <conbody> |
| |
| <p> |
| If an RCFile table definition had fewer columns than the fields actually in the data files, queries would |
| fail. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-293">IMPALA-293</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-351"> |
| |
| <title>Impala does not correctly substitute _HOST with hostname in --principal</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>_HOST</codeph> placeholder in the <codeph>--principal</codeph> startup option was not |
| substituted with the correct hostname, potentially leading to a startup error in setups using Kerberos |
| authentication. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-351">IMPALA-351</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-356"> |
| |
| <title>HBase query missed the last region</title> |
| |
| <conbody> |
| |
| <p> |
| A query for an HBase table could omit data from the last region. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-356">IMPALA-356</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-300"> |
| |
| <title>Hbase region changes are not handled correctly</title> |
| |
| <conbody> |
| |
| <p> |
| After a region in an HBase table was split or moved, an Impala query might return incomplete or |
| out-of-date results. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-300">IMPALA-300</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-349"> |
| |
| <title>Query state for successful create table is EXCEPTION</title> |
| |
| <conbody> |
| |
| <p> |
| After a successful <codeph>CREATE TABLE</codeph> statement, the corresponding query state would be |
| incorrectly reported as <codeph>EXCEPTION</codeph>. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-349">IMPALA-349</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-358"> |
| |
| <title>Double check release of JNI-allocated byte-strings</title> |
| |
| <conbody> |
| |
| <p> |
| Operations involving calls to the Java JNI subsystem (for example, queries on HBase tables) could |
| allocate memory but not release it. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-358">IMPALA-358</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="unix_timestamp"> |
| |
| <title>Impala returns 0 for bad time values in UNIX_TIMESTAMP, Hive returns NULL</title> |
| |
| <conbody> |
| |
| <p> |
| Impala returns 0 for bad time values in UNIX_TIMESTAMP, Hive returns NULL. |
| </p> |
| |
| <p> |
| <b>Impala:</b> |
| </p> |
| |
| <codeblock>impala> select UNIX_TIMESTAMP('10:02:01') ; |
| impala> 0</codeblock> |
| |
| <p> |
| <b>Hive:</b> |
| </p> |
| |
| <codeblock>hive> select UNIX_TIMESTAMP('10:02:01') FROM tmp; |
| hive> NULL</codeblock> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-16">IMPALA-16</xref> |
| </p> |
| |
| <p> |
| <b>Anticipated Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-231"> |
| |
| <title>INSERT INTO TABLE SELECT <constant> does not work.</title> |
| |
| <conbody> |
| |
| <p> |
| Insert INTO TABLE SELECT <constant> will not insert any data and may return an error. |
| </p> |
| |
| <p> |
| <b>Anticipated Resolution</b>: Fixed |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_10"> |
| |
| <title>Issues Fixed in the 1.0 GA Release</title> |
| |
| <conbody> |
| |
| <p> |
| Here are the major user-visible issues fixed in Impala 1.0. For a full list of fixed issues, see |
| <xref keyref="jira_list_100"/>. |
| </p> |
| |
| <p outputclass="toc inpage"/> |
| </conbody> |
| |
| <concept id="IMPALA-183"> |
| |
| <title>Undeterministically receive "ERROR: unknown row bach destination..." and "ERROR: Invalid query handle" from impala shell when running union query</title> |
| |
| <conbody> |
| |
| <p> |
| A query containing both <codeph>UNION</codeph> and <codeph>LIMIT</codeph> clauses could intermittently |
| cause the <codeph>impalad</codeph> process to halt with a segmentation fault. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-183">IMPALA-183</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-190"> |
| |
| <title>Insert with NULL partition keys results in SIGSEGV.</title> |
| |
| <conbody> |
| |
| <p> |
| An <codeph>INSERT</codeph> statement specifying a <codeph>NULL</codeph> value for one of the partitioning |
| columns could cause the <codeph>impalad</codeph> process to halt with a segmentation fault. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-190">IMPALA-190</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-217"> |
| |
| <title>INSERT queries don't show completed profiles on the debug webpage</title> |
| |
| <conbody> |
| |
| <p> |
| In the Impala web user interface, the profile page for an <codeph>INSERT</codeph> statement showed |
| obsolete information for the statement once it was complete. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-217">IMPALA-217</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-231"> |
| |
| <title>Impala HBase scan is very slow</title> |
| |
| <conbody> |
| |
| <p> |
| Queries involving an HBase table could be slower than expected, due to excessive memory usage on the |
| Impala nodes. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-231">IMPALA-231</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-234"> |
| |
| <title>Add some library version validation logic to impalad when loading impala-lzo shared library</title> |
| |
| <conbody> |
| |
| <p> |
| No validation was done to check that the <codeph>impala-lzo</codeph> shared library was compatible with |
| the version of Impala, possibly leading to a crash when using LZO-compressed text files. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-234">IMPALA-234</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Always upgrade the <codeph>impala-lzo</codeph> library at the same time as you upgrade |
| Impala itself. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-238"> |
| |
| <title>Problems inserting into tables with TIMESTAMP partition columns leading table metadata loading failures and failed dchecks</title> |
| |
| <conbody> |
| |
| <p> |
| <codeph>INSERT</codeph> statements for tables partitioned on columns involving datetime types could |
| appear to succeed, but cause errors for subsequent queries on those tables. The problem was especially |
| serious if an improperly formatted timestamp value was specified for the partition key. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-238">IMPALA-238</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-243"> |
| |
| <title>Ctrl-C sometimes interrupts shell in system call, rather than cancelling query</title> |
| |
| <conbody> |
| |
| <p> |
| Pressing Ctrl-C in the <codeph>impala-shell</codeph> interpreter could sometimes display an error and |
| return control to the shell, making it impossible to cancel the query. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-243">IMPALA-243</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-252"> |
| |
| <title>Empty string partition value causes metastore update failure</title> |
| |
| <conbody> |
| |
| <p> |
| Specifying an empty string or <codeph>NULL</codeph> for a partition key in an <codeph>INSERT</codeph> |
| statement would fail. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-252">IMPALA-252</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed. The behavior for empty partition keys was made more compatible with the |
| corresponding Hive behavior. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-266"> |
| |
| <title>Round() does not output the right precision</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>round()</codeph> function did not always return the correct number of significant digits. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-266">IMPALA-266</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-267"> |
| |
| <title>Cannot cast string literal to string</title> |
| |
| <conbody> |
| |
| <p> |
| Casting from a string literal back to the same type would cause an <q>invalid type cast</q> error rather |
| than leaving the original value unchanged. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-267">IMPALA-267</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-288"> |
| |
| <title>Excessive mem usage for certain queries which are very selective</title> |
| |
| <conbody> |
| |
| <p> |
| Some queries that returned very few rows experienced unnecessary memory usage. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-288">IMPALA-288</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-289"> |
| |
| <title>HdfsScanNode crashes in UpdateCounters</title> |
| |
| <conbody> |
| |
| <p> |
| A serious error could occur for relatively small and inexpensive queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-289">IMPALA-289</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-292"> |
| |
| <title>Parquet performance issues on large dataset</title> |
| |
| <conbody> |
| |
| <p> |
| Certain aggregation queries against Parquet tables were inefficient due to lower than required thread |
| utilization. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-292">IMPALA-292</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-295"> |
| |
| <title>impala not populating hive metadata correctly for create table</title> |
| |
| <conbody> |
| |
| <p> |
| The Impala <codeph>CREATE TABLE</codeph> command did not fill in the <codeph>owner</codeph> and |
| <codeph>tbl_type</codeph> columns in the Hive metastore database. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-295">IMPALA-295</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed. The metadata was made more Hive-compatible. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-312"> |
| |
| <title>impala daemons die if statestore goes down</title> |
| |
| <conbody> |
| |
| <p> |
| The <codeph>impalad</codeph> instances in a cluster could halt when the <codeph>statestored</codeph> |
| process became unavailable. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-312">IMPALA-312</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-67"> |
| |
| <title>Constant SELECT clauses do not work in subqueries</title> |
| |
| <conbody> |
| |
| <p> |
| A subquery would fail if the <codeph>SELECT</codeph> statement inside it returned a constant value rather |
| than querying a table. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-67">IMPALA-67</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-90"> |
| |
| <title>Right outer Join includes NULLs as well and hence wrong result count</title> |
| |
| <conbody> |
| |
| <p> |
| The result set from a right outer join query could include erroneous rows containing |
| <codeph>NULL</codeph> values. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-90">IMPALA-90</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-204"> |
| |
| <title>Parquet scanner hangs for some queries</title> |
| |
| <conbody> |
| |
| <p> |
| The Parquet scanner non-deterministically hangs when executing some queries. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-204">IMPALA-204</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_07"> |
| |
| <title>Issues Fixed in Version 0.7 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="IMPALA-167"> |
| |
| <title>Impala does not gracefully handle unsupported Hive table types (INDEX and VIEW tables)</title> |
| |
| <conbody> |
| |
| <p> |
| When attempting to load metadata from an unsupported Hive table type (INDEX and VIEW tables), Impala |
| fails with an unclear error message. |
| </p> |
| |
| <p> |
| Bug: |
| <xref keyref="IMPALA-167">IMPALA-167</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-474"> |
| |
| <title>DDL statements (CREATE/ALTER/DROP TABLE) are not supported in the Impala Beta Release</title> |
| |
| <conbody> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="avro_support"> |
| |
| <title>Avro is not supported in the Impala Beta Release</title> |
| |
| <conbody> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| |
| <p> |
| <b>Workaround:</b> None |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="mem_limit_query"> |
| |
| <title>Impala does not currently allow limiting the memory consumption of a single query</title> |
| |
| <conbody> |
| |
| <p> |
| It is currently not possible to limit the memory consumption of a single query. All tables on the right |
| hand side of JOIN statements need to be able to fit in memory. If they do not, Impala may crash due to |
| out of memory errors. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-20"> |
| |
| <title>Aggregate of a subquery result set returns wrong results if the subquery contains a 'limit' and data is distributed across multiple nodes</title> |
| |
| <conbody> |
| |
| <p> |
| Aggregate of a subquery result set returns wrong results if the subquery contains a 'limit' clause and |
| data is distributed across multiple nodes. From the query plan, it looks like we are just summing the |
| results from each worker node. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-20">IMPALA-20</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-144"> |
| |
| <title>Partition pruning for arbitrary predicates that are fully bound by a particular partition column</title> |
| |
| <conbody> |
| |
| <p> We currently cannot utilize a predicate like "country_code in ('DE', |
| 'FR', 'US')" to do partitioning pruning, because that requires an |
| equality predicate or a binary comparison. </p> |
| |
| <p> |
| We should create a superclass of planner.ValueRange, ValueSet, that can be constructed with an arbitrary |
| predicate, and whose isInRange(analyzer, valueExpr) constructs a literal predicate by substitution of the |
| valueExpr into the predicate. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-144">IMPALA-144</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.7 |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_06"> |
| |
| <title>Issues Fixed in Version 0.6 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="IMP-56"> |
| |
| <title>Impala reads the NameNode address and port as command line parameters</title> |
| |
| <conbody> |
| |
| <p> |
| Impala reads the NameNode address and port as command line parameters rather than reading them from |
| <codeph>core-site.xml</codeph>. Updating the NameNode address in the <codeph>core-site.xml</codeph> file |
| does not propagate to Impala. |
| </p> |
| |
| <p> |
| <b>Severity:</b> Low |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.6 - Impala reads the namenode location and port from the Hadoop |
| configuration files, though setting <codeph>-nn</codeph> and <codeph>-nn_port</codeph> overrides this. |
| Users are advised not to set <codeph>-nn</codeph> or <codeph>-nn_port</codeph>. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-64"> |
| |
| <title>Queries may fail on secure environment due to impalad Kerberos ticket expiration</title> |
| |
| <conbody> |
| |
| <p> |
| Queries may fail on secure environment due to <codeph>impalad</codeph> Kerberos tickets expiring. This |
| can happen if the Impala <codeph>-kerberos_reinit_interval</codeph> flag is set to a value ten minutes or |
| less. This may lead to an <codeph>impalad</codeph> requesting a ticket with a lifetime that is less than |
| the time to the next ticket renewal. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-64">IMPALA-64</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.6 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-48"> |
| |
| <title>Concurrent queries may fail when Impala uses Thrift to communicate with the Hive Metastore</title> |
| |
| <conbody> |
| |
| <p> |
| Concurrent queries may fail when Impala is using Thrift to communicate with part of the Hive Metastore |
| such as the Hive Metastore Service. In such a case, the error <codeph>get_fields failed: out of sequence |
| response"</codeph> may occur because Impala shared a single Hive Metastore Client connection across |
| threads. With Impala 0.6, a separate connection is used for each metadata request. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-48">IMPALA-48</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.6 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-58"> |
| |
| <title>impalad fails to start if unable to connect to the Hive Metastore</title> |
| |
| <conbody> |
| |
| <p> |
| Impala fails to start if it is unable to establish a connection with the Hive Metastore. This behavior |
| was fixed, allowing Impala to start, even when no Metastore is available. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-58">IMPALA-58</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.6 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-44"> |
| |
| <title>Impala treats database names as case-sensitive in some contexts</title> |
| |
| <conbody> |
| |
| <p> |
| In some queries (including "USE database" statements), database names are treated as case-sensitive. This |
| may lead queries to fail with an IllegalStateException. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-44">IMPALA-44</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.6 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-18"> |
| |
| <title>Impala does not ignore hidden HDFS files</title> |
| |
| <conbody> |
| |
| <p> |
| Impala does not ignore hidden HDFS files, meaning those files prefixed with a period '.' or underscore |
| '_'. This diverges from Hive/MapReduce, which skips these files. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-18">IMPALA-18</xref> |
| </p> |
| |
| <p id="p_7"> |
| <b>Resolution</b>: Fixed in 0.6 |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_05"> |
| |
| <title>Issues Fixed in Version 0.5 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="many_partitions"> |
| |
| <title>Impala may have reduced performance on tables that contain a large number of partitions</title> |
| |
| <conbody> |
| |
| <p> |
| Impala may have reduced performance on tables that contain a large number of partitions. This is due to |
| extra overhead reading/parsing the partition metadata. |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.5 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-38"> |
| |
| <title>Backend client connections not getting cached causes an observable latency in secure clusters</title> |
| |
| <conbody> |
| |
| <p> |
| Backend impalads do not cache connections to the coordinator. On a secure cluster, this introduces a |
| latency proportional to the number of backend clients involved in query execution, as the cost of |
| establishing a secure connection is much higher than in the non-secure case. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-38">IMPALA-38</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.5 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-30"> |
| |
| <title>Concurrent queries may fail with error: "Table object has not been been initialised : `PARTITIONS`"</title> |
| |
| <conbody> |
| |
| <p> |
| Concurrent queries may fail with error: <codeph>"Table object has not been been initialised : |
| `PARTITIONS`"</codeph>. This was due to a lack of locking in the Impala table/database metadata cache. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-30">IMPALA-30</xref> |
| </p> |
| |
| <p> |
| <b>Resolution</b>: Fixed in 0.5 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-15"> |
| |
| <title>UNIX_TIMESTAMP format behaviour deviates from Hive when format matches a prefix of the time value</title> |
| |
| <conbody> |
| |
| <p> |
| The Impala UNIX_TIMESTAMP(val, format) operation compares the length of format and val and returns NULL |
| if they do not match. Hive instead effectively truncates val to the length of the format parameter. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-15">IMPALA-15</xref> |
| </p> |
| |
| <p id="p_10"> |
| <b>Resolution:</b> Fixed in 0.5 |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_04"> |
| |
| <title>Issues Fixed in Version 0.4 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="HIVE-3596"> |
| |
| <title>Impala fails to refresh the Hive metastore if a Hive temporary configuration file is removed</title> |
| |
| <conbody> |
| |
| <p> |
| Impala is impacted by Hive bug |
| <xref href="https://issues.apache.org/jira/browse/HIVE-3596" scope="external" format="html">HIVE-3596</xref> |
| which may cause metastore refreshes to fail if a Hive temporary configuration file is deleted (normally |
| located at <codeph>/tmp/hive-<user>-<tmp_number>.xml</codeph>). Additionally, the |
| impala-shell will incorrectly report that the failed metadata refresh completed successfully. |
| </p> |
| |
| <p> |
| <b>Anticipated Resolution:</b> To be fixed in a future release |
| </p> |
| |
| <p> |
| <b>Workaround:</b> Restart the <codeph>impalad</codeph> service. Use the <codeph>impalad</codeph> log to |
| check for metadata refresh errors. |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="lpad_rpad"> |
| |
| <title>lpad/rpad builtin functions is not correct.</title> |
| |
| <conbody> |
| |
| <p> |
| The lpad/rpad builtin functions generate the wrong results. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.4 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMPALA-14"> |
| |
| <title>Files with .gz extension reported as 'not supported'</title> |
| |
| <conbody> |
| |
| <p> |
| Compressed files with extensions incorrectly generate an exception. |
| </p> |
| |
| <p> |
| <b>Bug:</b> |
| <xref keyref="IMPALA-14">IMPALA-14</xref> |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.4 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="large_limit_hang"> |
| |
| <title>Queries with large limits would hang.</title> |
| |
| <conbody> |
| |
| <p> |
| Some queries with large limits were hanging. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.4 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-601"> |
| |
| <title>Order by on a string column produces incorrect results if there are empty strings</title> |
| |
| <conbody> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.4 |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_03"> |
| |
| <title>Issues Fixed in Version 0.3 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="IMP-298"> |
| |
| <title>All table loading errors show as unknown table</title> |
| |
| <conbody> |
| |
| <p> |
| If Impala is unable to load the metadata for a table for any reason, a subsequent query referring to that |
| table will return an <codeph>unknown table</codeph> error message, even if the table is known. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.3 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-298-2"> |
| |
| <title>A table that cannot be loaded will disappear from SHOW TABLES</title> |
| |
| <conbody> |
| |
| <p> |
| After failing to load metadata for a table, Impala removes that table from the list of known tables |
| returned in <codeph>SHOW TABLES</codeph>. Subsequent attempts to query the table returns 'unknown table', |
| even if the metadata for that table is fixed. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.3 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-581"> |
| |
| <title>Impala cannot read from HBase tables that are not created as external tables in the hive metastore.</title> |
| |
| <conbody> |
| |
| <p> |
| Attempting to select from these tables fails. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.3 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-137"> |
| |
| <title>Certain queries that contain OUTER JOINs may return incorrect results</title> |
| |
| <conbody> |
| |
| <p> |
| Queries that contain OUTER JOINs may not return the correct results if there are predicates referencing |
| any of the joined tables in the WHERE clause. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.3. |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| |
| <concept id="fixed_issues_02"> |
| |
| <title>Issues Fixed in Version 0.2 of the Beta Release</title> |
| |
| <conbody/> |
| |
| <concept id="IMP-491"> |
| |
| <title>Subqueries which contain aggregates cannot be joined with other tables or Impala may crash</title> |
| |
| <conbody> |
| |
| <p> |
| Subqueries that contain an aggregate cannot be joined with another table or Impala may crash. For |
| example: |
| </p> |
| |
| <codeblock>SELECT * FROM (SELECT sum(col1) FROM some_table GROUP BY col1) t1 JOIN other_table ON (...);</codeblock> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.2 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-497"> |
| |
| <title>An insert with a limit that runs as more than one query fragment inserts more rows than the limit.</title> |
| |
| <conbody> |
| |
| <p> |
| For example: |
| </p> |
| |
| <codeblock>INSERT OVERWRITE TABLE test SELECT * FROM test2 LIMIT 1;</codeblock> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.2 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-535"> |
| |
| <title>Query with limit clause might fail.</title> |
| |
| <conbody> |
| |
| <p> |
| For example: |
| </p> |
| |
| <codeblock>SELECT * FROM test2 LIMIT 1;</codeblock> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.2 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-270"> |
| |
| <title>Files in unsupported compression formats are read as plain text.</title> |
| |
| <conbody> |
| |
| <p> |
| Attempting to read such files does not generate a diagnostic. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.2 |
| </p> |
| </conbody> |
| </concept> |
| |
| <concept id="IMP-522"> |
| |
| <title>Impala server raises a null pointer exception when running an HBase query.</title> |
| |
| <conbody> |
| |
| <p> |
| When querying an HBase table whose row-key is string type, the Impala server may raise a null pointer |
| exception. |
| </p> |
| |
| <p> |
| <b>Resolution:</b> Fixed in 0.2 |
| </p> |
| </conbody> |
| </concept> |
| </concept> |
| </concept> |