Environment
Vertica Analytics Database: version 25.x, 24.x
Situation
While using a varbinary in an array, Vertica services would crash. For eg,
CREATE OR REPLACE FUNCTION reveal(input_str VARCHAR, na_string VARCHAR) RETURN VARCHAR AS BEGIN RETURN (CASE WHEN input_str IS NULL OR LENGTH(input_str) = 0 THEN NULL WHEN REGEXP_LIKE(input_str, '^-?[0-9]+(\.[0-9]+)?$') AND RIGHT(input_str, 1) = '9' THEN LEFT(CASE WHEN na_string IS NULL THEN 'N/A' ELSE na_string END, 15) WHEN REGEXP_LIKE(input_str, '^-?[0-9]+(\.[0-9]+)?$') THEN LEFT(input_str, 15) ELSE LEFT(MD5(input_str), 15) END); END; CREATE OR REPLACE FUNCTION reveal(input_str VARCHAR) RETURN VARCHAR AS BEGIN RETURN reveal(input_str, NULL); END;
Find complete article on support portal