Files
impala/testdata/workloads/functional-query/queries/QueryTest/large_strings.test
Joe McDonnell baec8cae34 IMPALA-4874: Increase maximum KRPC message size
The default value for rpc_max_message_size is 50MB.
Impala currently requires support for messages of
up to 2GB. This changes the value of rpc_max_message_size
to INT_MAX for Impala.

Testing:
- Added a test to test_very_large_strings that generates
  a row with multiple large strings. This row requires
  that the RPC framework successfully transmit over
  400MB. This works for both KRPC and Thrift.
  This query operates under the same amount of memory
  as other queries in large_strings.test.
- Tested separately that larger row sizes also work,
  including tests up to almost 2GB.

Change-Id: I876bba0536e1d85e41eacd9c0aeccfe5c2126e58
Reviewed-on: http://gerrit.cloudera.org:8080/9337
Reviewed-by: Joe McDonnell <joemcdonnell@cloudera.com>
Tested-by: Impala Public Jenkins
2018-02-21 03:17:57 +00:00

228 lines
9.5 KiB
Plaintext

====
---- QUERY
# IMPALA-1619 group_concat() error
select length(group_concat(l_comment, "!")) from (
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem) a
---- CATCH
Concatenated string length larger than allowed limit of 1 GB character data
=====
---- QUERY
# IMPALA-2620: Allocation by UDF/UDA need to take into account of memory limit.
SET mem_limit=512m;
select length(group_concat(l_comment, "!")) from (
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem union all
select l_comment from tpch_parquet.lineitem) a
---- CATCH
Memory limit exceeded
====
---- QUERY
#IMPALA-3350: Results of string functions can exceed 1GB.
select length(concat_ws(',', s, s, s, s)) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(repeat(s, 10)) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(lpad(s, 1073741830, '!')) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(rpad(s, 1073741830, '~')) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select space(1073741830);
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(regexp_replace(s, '.', '++++++++')) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(replace(s, ' ', '++++++++')) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- RESULTS
625718301
=====
---- QUERY
select replace(x, '+', '000') from (select (replace(s, ' ', '++++++++')) x from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2) t3;
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select trunc(timestamp_col, space(1073741830)) from functional.alltypes
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select extract(timestamp_col, space(1073741830)) from functional.alltypes
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(madlib_encode_vector(concat_ws(',', s, s, s, s))) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
select length(madlib_decode_vector(concat_ws(',', s, s, s, s))) from (
select group_concat(l_comment, "!") s from (
select l_comment from tpch.lineitem union all
select l_comment from tpch.lineitem) t1
) t2
---- CATCH
String length larger than allowed limit of 1 GB character data
=====
---- QUERY
# IMPALA-4874: Generate a large row made up of multiple large strings to test RPC
# transmission. This uses hashing to make this difficult to compress,
# which results in a larger row batch.
select length(group_concat(h, "!")),
length(group_concat(h, "-"))
from (
select cast(fnv_hash(concat(l_comment, 'a')) as string) as h from tpch_parquet.lineitem union all
select cast(fnv_hash(concat(l_comment, 'b')) as string) as h from tpch_parquet.lineitem union all
select cast(fnv_hash(concat(l_comment, 'c')) as string) as h from tpch_parquet.lineitem union all
select cast(fnv_hash(concat(l_comment, 'd')) as string) as h from tpch_parquet.lineitem union all
select cast(fnv_hash(concat(l_comment, 'e')) as string) as h from tpch_parquet.lineitem) a;
---- TYPES
INT,INT
---- RESULTS
611468161,611468161
=====