| ==== |
| ---- QUERY |
| # Due to somewhat non-determinstic way memory allocation happens in Impala now, |
| # we will just check to make sure the exception is a memory allocation failure. |
| select group_concat(l_comment) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select min(l_comment) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select max(l_comment) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select rank() over (partition by l_orderkey order by l_commitdate) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select first_value(l_comment) over (partition by l_orderkey order by l_commitdate) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select last_value(l_comment) over (partition by l_orderkey order by l_commitdate) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| select cast(l_comment as char(120)) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| # This aims to exercise malloc() failure in the Serialize() function of appx_median() but |
| # allocation can sometimes fail in the Init() functions as well. |
| select appx_median(l_quantity), appx_median(l_discount) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| # This aims to exercise malloc() failure in the Serialize() functions of distinctpc() and |
| # ndv() but allocation can sometimes fail in the Init() functions as well. |
| select ndv(l_partkey), distinctpc(l_suppkey) from tpch.lineitem |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| # IMPALA-5252: Verify HiveUdfCall allocations are checked. |
| create function replace_string(string) returns string |
| location '$FILESYSTEM_PREFIX/test-warehouse/impala-hive-udfs.jar' |
| symbol='org.apache.impala.ReplaceStringUdf'; |
| select replace_string(l_comment) from tpch.lineitem limit 10; |
| ---- CATCH |
| failed to allocate |
| ==== |
| ---- QUERY |
| with t as (select '[0,1]' as s union all select '[1,2]' union all select '[2,3]') |
| select get_json_object(t.s, '$[0]') from t; |
| ---- CATCH |
| failed to allocate |
| ==== |