← Leaderboard

DuckDB 1.5.6

Substrait consumer: substrait community extension

Run in this repository's CI, 2026-10-24 17:26 UTC · the CI run

62.0%Overall
69.5%Functions
54.5%TPC-H

Findings

What fails and why, grouped by cause. Each finding lists every case it affects. Upstream issue links are maintained in docs/engine-findings.yaml.

Substrait consumer gaps

These cases fail when run as Substrait plans but pass as the engine's own SQL (or were not run as SQL), so the gap is in the engine's Substrait consumer.

The consumer maps these functions to names DuckDB does not have

340 cases · Extended functions 180, Functions 160

Not yet reported upstream

The same cases pass as DuckDB SQL, so DuckDB can compute them; the Substrait extension needs a mapping from the Substrait function name to DuckDB's.

Functions: regexp_count_substring (50), regexp_match_substring (48), negate (38), shift_right (37), bitwise_not (33), shift_right_unsigned (31), regexp_string_split (29), add_intervals (25), shift_left (12), and_not (9), is_false (6), is_not_false (6), is_not_true (6), is_true (6), logb (4)

CatalogException: Catalog Error: Scalar Function with name bitwise_not does not exist!
All 340 cases
CaseTestExpectedMessage, where it differs
arithmetic/bitwise_not.test:5bitwise_not(0::i8)-1::i8
arithmetic/bitwise_not.test:6bitwise_not(1::i8)-2::i8
arithmetic/bitwise_not.test:7bitwise_not(-127::i8)126::i8
arithmetic/bitwise_not.test:8bitwise_not(31766::i16)-31767::i16
arithmetic/bitwise_not.test:9bitwise_not(-31766::i16)31765::i16
arithmetic/bitwise_not.test:10bitwise_not(2147483647::i32)-2147483648::i32
arithmetic/bitwise_not.test:11bitwise_not(9223372036854775807::i64)-9223372036854775808::i64
arithmetic/bitwise_not.test:12bitwise_not(-9223372036854775807::i64)9223372036854775806::i64
arithmetic/bitwise_not.test:13bitwise_not(null::i64?)null::i64?
arithmetic/negate.test:5negate(25::i8)-25::i8CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:6negate(-200::i16)200::i16CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:7negate(30000::i32)-30000::i32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:8negate(9223372036854775800::i64)-9223372036854775800::i64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:9negate(2.50::fp32)-2.50::fp32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:10negate(2.000002861022949::fp64)-2.000002861022949::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:11negate(inf::fp64)-inf::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:14negate(null::i8?)null::i8?CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/shift_left.test:5shift_left(2::i32, 1::i32)4::i32CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:6shift_left(511::i32, 8::i32)130816::i32CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:7shift_left(301989888::i64, 3::i32)2415919104::i64CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:8shift_left(301989888::i64, 8::i32)77309411328::i64CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:13shift_left(null::i64?, 2::i32)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:14shift_left(127::i64, null::i32?)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_right.test:5shift_right(2::i32, 1::i32)1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:6shift_right(1024::i32, 8::i32)4::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:7shift_right(301989888::i64, 3::i32)37748736::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:8shift_right(301989888::i64, 16::i32)4608::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:9shift_right(-3::i32, 1::i32)-2::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:10shift_right(-3::i32, 2::i32)-1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:11shift_right(-3::i64, 1::i32)-2::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:12shift_right(-3::i64, 2::i32)-1::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:13shift_right(null::i64?, 2::i32)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:14shift_right(127::i64, null::i32?)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right_unsigned.test:5shift_right_unsigned(2::i32, 1::i32)1::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:6shift_right_unsigned(1024::i32, 8::i32)4::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:7shift_right_unsigned(301989888::i64, 3::i32)37748736::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:8shift_right_unsigned(301989888::i64, 16::i32)4608::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:9shift_right_unsigned(-3::i32, 1::i32)2147483646::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:10shift_right_unsigned(-3::i32, 2::i32)1073741823::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:11shift_right_unsigned(-3::i64, 1::i32)9223372036854775806::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:12shift_right_unsigned(-3::i64, 2::i32)4611686018427387903::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:13shift_right_unsigned(null::i64?, 2::i32)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:14shift_right_unsigned(127::i64, null::i32?)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic_decimal/negate.test:5negate(25::dec<2, 0>)-25::dec<2, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:6negate(-25::dec<2, 0>)25::dec<2, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:7negate(1.23::dec<3, 2>)-1.23::dec<3, 2>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:8negate(-0.001::dec<4, 3>)0.001::dec<4, 3>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:11negate(0::dec<1, 0>)0::dec<1, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:12negate(0.00::dec<3, 2>)0.00::dec<3, 2>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:15negate(99999999999999999999999999999999999999::dec<38, 0>)-99999999999999999999999999999999999999::dec<38, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:16negate(-99999999999999999999999999999999999999::dec<38, 0>)99999999999999999999999999999999999999::dec<38, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:19negate(null::dec?<38, 0>)null::dec?<38, 0>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic_decimal/negate.test:20negate(null::dec?<3, 2>)null::dec?<3, 2>CatalogException: Catalog Error: Scalar Function with name negate does not exist!
boolean/and_not.test:5and_not(true::bool, false::bool)true::boolCatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:6and_not(true::bool, true::bool)false::boolCatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:7and_not(false::bool, true::bool)false::boolCatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:8and_not(false::bool, false::bool)false::boolCatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:11and_not(true::bool, null::bool?)null::bool?CatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:12and_not(null::bool?, false::bool)null::bool?CatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:13and_not(false::bool, null::bool?)false::bool?CatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:14and_not(null::bool?, true::bool)false::bool?CatalogException: Catalog Error: Scalar Function with name and_not does not exist!
boolean/and_not.test:15and_not(null::bool?, null::bool?)null::bool?CatalogException: Catalog Error: Scalar Function with name and_not does not exist!
comparison/is_false.test:5is_false(true::bool)false::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_false.test:6is_false(false::bool)true::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_false.test:7is_false(null::bool?)false::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_not_false.test:5is_not_false(true::bool)true::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_false.test:6is_not_false(false::bool)false::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_false.test:7is_not_false(null::bool?)true::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_true.test:5is_not_true(true::bool)false::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_not_true.test:6is_not_true(false::bool)true::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_not_true.test:7is_not_true(null::bool?)true::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_true.test:5is_true(true::bool)true::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
comparison/is_true.test:6is_true(false::bool)false::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
comparison/is_true.test:7is_true(null::bool?)false::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
datetime/add_intervals.test:5add_intervals(PT10H::iday, PT5H::iday)P0DT15H0M0S::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:6add_intervals(P10D::iday, P5D::iday)P15D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:7add_intervals(P1D::iday, PT10H::iday)P1DT10H0M0S::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:10add_intervals(null::iyear?, P1Y::iyear)null::iyear?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:11add_intervals(null::iday?, P1D::iday)null::iday?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
logarithmic/logb.test:5logb(100000::i64, 10::i64)5.0::fp64CatalogException: Catalog Error: Scalar Function with name logb does not exist!
logarithmic/logb.test:6logb(1.0::fp64, 7::fp64)0::fp64CatalogException: Catalog Error: Scalar Function with name logb does not exist!
logarithmic/logb.test:7logb(7::fp64, 2::fp64)2.8073549220576041::fp64CatalogException: Catalog Error: Scalar Function with name logb does not exist!
logarithmic/logb.test:10logb(inf::fp64, 2.34::fp64)inf::fp64CatalogException: Catalog Error: Scalar Function with name logb does not exist!
string/regexp_count_substring.test:5regexp_count_substring('foobarboopzoo'::str, 'o{1,}'::str, 1::i64)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:6regexp_count_substring('foobarboopzoo'::str, 'o{1}'::str, 1::i64)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:7regexp_count_substring('abcabcacb'::str, '[bc]'::str, 1::i64)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:8regexp_count_substring('abcdefc'::str, '(.*)c'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:9regexp_count_substring('abcdefc'::str, '(.*)c?'::str, 1::i64)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:10regexp_count_substring('foobarboopzoo'::vchar<13>, 'o{1,}'::vchar<5>, 1::i64)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:11regexp_count_substring('foobarboopzoo'::fchar<13>, 'o{1,}'::fchar<5>, 1::i64)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:12regexp_count_substring('foobarboopzoo'::str, 'o{1,}'::str)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:13regexp_count_substring('foobarboopzoo'::str, 'o{1}'::str)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:14regexp_count_substring('abcabcacb'::str, '[bc]'::str)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:15regexp_count_substring('abcdefc'::str, '(.*)c'::str)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:16regexp_count_substring('abcdefc'::str, '(.*)c?'::str)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:17regexp_count_substring('foobarboopzoo'::vchar<13>, 'o{1,}'::vchar<5>)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:18regexp_count_substring('foobarboopzoo'::fchar<13>, 'o{1,}'::fchar<5>)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:21regexp_count_substring('Hello'::str, null::str?, 1::i64)null::i64?CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:22regexp_count_substring(null::str?, ' '::str, 1::i64)null::i64?CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:23regexp_count_substring('Hello'::str, null::str?)null::i64?CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:24regexp_count_substring(null::str?, ' '::str)null::i64?CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:27regexp_count_substring('abc1abc'::str, '\d'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:28regexp_count_substring('abc1abc'::str, '\D'::str, 1::i64)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:29regexp_count_substring('abc def ghi'::str, '\s'::str, 1::i64)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:30regexp_count_substring('abc def ghi'::str, '\S'::str, 1::i64)9::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:31regexp_count_substring('abc def ghi'::str, '\w'::str, 1::i64)9::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:32regexp_count_substring('abc def ghi,'::str, '\W'::str, 1::i64)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:33regexp_count_substring('abc1abc'::str, '\d'::str)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:34regexp_count_substring('abc1abc'::str, '\D'::str)6::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:35regexp_count_substring('abc def ghi'::str, '\s'::str)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:36regexp_count_substring('abc def ghi'::str, '\S'::str)9::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:37regexp_count_substring('abc def ghi'::str, '\w'::str)9::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:38regexp_count_substring('abc def ghi,'::str, '\W'::str)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_match_substring.test:5regexp_match_substring('foobarboopzoo'::str, 'o{1,}'::str, 1::i64, 1::i64, 0::i64)'oo'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:6regexp_match_substring('foobarboopzoo'::str, 'o{1}'::str, 1::i64, 1::i64, 0::i64)'o'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:7regexp_match_substring('abcabcacb'::str, '[bc]'::str, 1::i64, 1::i64, 0::i64)'b'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:8regexp_match_substring('abcdefghi'::str, '(.*)c'::str, 1::i64, 1::i64, 0::i64)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:9regexp_match_substring('abcdefghi'::str, '(.*)c?'::str, 1::i64, 1::i64, 0::i64)'abcdefghi'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:10regexp_match_substring('foobarboopzoo'::vchar<13>, 'o{1,}'::vchar<5>, 1::i64, 1::i64, 0::i64)'oo'::vchar<13>CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:11regexp_match_substring('foobarboopzoo'::str, 'o{1,}'::str)'oo'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:12regexp_match_substring('foobarboopzoo'::str, 'o{1}'::str)'o'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:13regexp_match_substring('abcabcacb'::str, '[bc]'::str)'b'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:14regexp_match_substring('abcdefghi'::str, '(.*)c'::str)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:15regexp_match_substring('abcdefghi'::str, '(.*)c?'::str)'abcdefghi'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:16regexp_match_substring('foobarboopzoo'::vchar<13>, 'o{1,}'::vchar<5>)'oo'::vchar<13>CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:19regexp_match_substring('Hello'::str, null::str?, 1::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:20regexp_match_substring(null::str?, ' '::str, 1::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:21regexp_match_substring('Hello'::str, null::str?)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:22regexp_match_substring(null::str?, ' '::str)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:25regexp_match_substring('abc1abc'::str, '\d'::str, 1::i64, 1::i64, 0::i64)'1'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:26regexp_match_substring('abc1abc'::str, '\D'::str, 1::i64, 1::i64, 0::i64)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:27regexp_match_substring('abc def ghi'::str, '\s'::str, 1::i64, 1::i64, 0::i64)' '::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:28regexp_match_substring('abc def ghi'::str, '\S'::str, 1::i64, 1::i64, 0::i64)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:29regexp_match_substring('abc def ghi'::str, '\S+'::str, 1::i64, 1::i64, 0::i64)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:30regexp_match_substring('abc def ghi'::str, '\w'::str, 1::i64, 1::i64, 0::i64)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:31regexp_match_substring('abc def ghi'::str, '\w+'::str, 1::i64, 1::i64, 0::i64)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:32regexp_match_substring('abc def ghi,'::str, '\W'::str, 1::i64, 1::i64, 0::i64)' '::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:33regexp_match_substring('abc1abc'::str, '\d'::str)'1'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:34regexp_match_substring('abc1abc'::str, '\D'::str)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:35regexp_match_substring('abc def ghi'::str, '\s'::str)' '::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:36regexp_match_substring('abc def ghi'::str, '\S'::str)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:37regexp_match_substring('abc def ghi'::str, '\S+'::str)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:38regexp_match_substring('abc def ghi'::str, '\w'::str)'a'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:39regexp_match_substring('abc def ghi'::str, '\w+'::str)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:40regexp_match_substring('abc def ghi,'::str, '\W'::str)' '::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_string_split.test:5regexp_string_split('Hello'::str, 'Hel+?'::str)['', 'lo']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:6regexp_string_split('Hello'::str, 'Hel+'::str)['', 'o']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:9regexp_string_split('HHHelloooo'::str, 'Hel+'::str)['HH', 'oooo']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:12regexp_string_split('abcdefg'::str, '\Aabc'::str)['', 'defg']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:13regexp_string_split('abcdefg'::str, 'efg$'::str)['abcd', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:16regexp_string_split('abc1abc'::str, '\d'::str)['abc', 'abc']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:17regexp_string_split('111a111'::str, '\D'::str)['111', '111']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:18regexp_string_split('abc def'::str, '\s'::str)['abc', 'def']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:19regexp_string_split('a bcdef'::str, '\S'::str)['', ' ', '', '', '', '', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:20regexp_string_split(' abcdef'::str, '\w'::str)[' ', '', '', '', '', '', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:21regexp_string_split('a bcdef'::str, '\W'::str)['a', 'bcdef']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:24regexp_string_split('abc123abc'::str, '[0-9]+'::str)['abc', 'abc']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:25regexp_string_split('abc123abc'::str, '[bc]'::str)['a', '', '123a', '', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:26regexp_string_split('abcde'::str, '(.*)c'::str)['', 'de']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:27regexp_string_split('abbbbc'::str, '[b]{2,3}'::str)['a', 'bc']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
arithmetic/bitwise_not.test:5bitwise_not(-128::i8)127::i8
arithmetic/bitwise_not.test:6bitwise_not(127::i8)-128::i8
arithmetic/bitwise_not.test:7bitwise_not(-32768::i16)32767::i16
arithmetic/bitwise_not.test:8bitwise_not(32767::i16)-32768::i16
arithmetic/bitwise_not.test:9bitwise_not(-2147483648::i32)2147483647::i32
arithmetic/bitwise_not.test:10bitwise_not(-9223372036854775808::i64)9223372036854775807::i64
arithmetic/bitwise_not.test:13bitwise_not(null::i8?)null::i8?
arithmetic/bitwise_not.test:14bitwise_not(null::i16?)null::i16?
arithmetic/bitwise_not.test:15bitwise_not(null::i32?)null::i32?
arithmetic/bitwise_not.test:18bitwise_not(0::i16)-1::i16
arithmetic/bitwise_not.test:19bitwise_not(0::i32)-1::i32
arithmetic/bitwise_not.test:20bitwise_not(0::i64)-1::i64
arithmetic/bitwise_not.test:21bitwise_not(-1::i8)0::i8
arithmetic/bitwise_not.test:22bitwise_not(-1::i16)0::i16
arithmetic/bitwise_not.test:23bitwise_not(-1::i32)0::i32
arithmetic/bitwise_not.test:24bitwise_not(-1::i64)0::i64
arithmetic/bitwise_not.test:27bitwise_not(42::i8)-43::i8
arithmetic/bitwise_not.test:28bitwise_not(-42::i8)41::i8
arithmetic/bitwise_not.test:29bitwise_not(1000::i16)-1001::i16
arithmetic/bitwise_not.test:30bitwise_not(-1000::i16)999::i16
arithmetic/bitwise_not.test:31bitwise_not(100000::i32)-100001::i32
arithmetic/bitwise_not.test:32bitwise_not(-100000::i32)99999::i32
arithmetic/bitwise_not.test:35bitwise_not(1000000000000::i64)-1000000000001::i64
arithmetic/bitwise_not.test:36bitwise_not(-1000000000000::i64)999999999999::i64
arithmetic/negate.test:5negate(127::i8)-127::i8CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:6negate(32767::i16)-32767::i16CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:7negate(2147483647::i32)-2147483647::i32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:8negate(9223372036854775807::i64)-9223372036854775807::i64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:22negate(-inf::fp32)inf::fp32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:23negate(-inf::fp64)inf::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:24negate(nan::fp32)nan::fp32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:25negate(nan::fp64)nan::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:28negate(0::i8)0::i8CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:29negate(0::i16)0::i16CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:30negate(0::i32)0::i32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:31negate(0::i64)0::i64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:32negate(0.0::fp32)-0.0::fp32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:33negate(-0.0::fp32)0.0::fp32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:34negate(0.0::fp64)-0.0::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:35negate(-0.0::fp64)0.0::fp64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:38negate(-1::i8)1::i8CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:39negate(-1::i16)1::i16CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:40negate(-1::i32)1::i32CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/negate.test:41negate(-1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name negate does not exist!
arithmetic/shift_left.test:5shift_left(null::i32?, null::i32?)null::i32?CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:6shift_left(null::i64?, null::i32?)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:9shift_left(0::i32, 5::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:10shift_left(1::i32, 0::i32)1::i32CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:11shift_left(0::i64, 10::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_left.test:12shift_left(1::i64, 0::i32)1::i64CatalogException: Catalog Error: Scalar Function with name shift_left does not exist!
arithmetic/shift_right.test:5shift_right(2147483647::i32, 1::i32)1073741823::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:6shift_right(-2147483648::i32, 1::i32)-1073741824::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:7shift_right(9223372036854775807::i64, 1::i32)4611686018427387903::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:8shift_right(-9223372036854775808::i64, 1::i32)-4611686018427387904::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:9shift_right(2147483647::i32, 31::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:10shift_right(-2147483648::i32, 31::i32)-1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:11shift_right(-128::i32, 4::i32)-8::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:12shift_right(2147483647::i32, 16::i32)32767::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:13shift_right(-2147483648::i32, 16::i32)-32768::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:14shift_right(9223372036854775807::i64, 32::i32)2147483647::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:15shift_right(-9223372036854775808::i64, 32::i32)-2147483648::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:18shift_right(0::i32, 5::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:19shift_right(100::i32, 0::i32)100::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:20shift_right(0::i64, 32::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:21shift_right(1::i32, 31::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:22shift_right(1::i64, 63::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:23shift_right(1024::i32, 32::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:24shift_right(1024::i32, 40::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:25shift_right(1024::i64, 64::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:26shift_right(1024::i64, 100::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:29shift_right(-1::i32, 31::i32)-1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:30shift_right(-1::i64, 63::i32)-1::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:31shift_right(-1::i32, 1::i32)-1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:32shift_right(-1::i32, 16::i32)-1::i32CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:33shift_right(-1::i64, 1::i32)-1::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:34shift_right(-1::i64, 32::i32)-1::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right.test:35shift_right(-256::i64, 8::i32)-1::i64CatalogException: Catalog Error: Scalar Function with name shift_right does not exist!
arithmetic/shift_right_unsigned.test:5shift_right_unsigned(2147483647::i32, 1::i32)1073741823::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:6shift_right_unsigned(-2147483648::i32, 1::i32)1073741824::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:7shift_right_unsigned(9223372036854775807::i64, 1::i32)4611686018427387903::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:8shift_right_unsigned(-9223372036854775808::i64, 1::i32)4611686018427387904::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:9shift_right_unsigned(-1::i32, 16::i32)65535::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:10shift_right_unsigned(-1::i64, 32::i32)4294967295::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:11shift_right_unsigned(2147483647::i32, 0::i32)2147483647::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:12shift_right_unsigned(-2147483648::i32, 0::i32)-2147483648::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:13shift_right_unsigned(255::i32, 31::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:14shift_right_unsigned(-2147483648::i32, 31::i32)1::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:15shift_right_unsigned(-9223372036854775808::i64, 63::i32)1::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:16shift_right_unsigned(-1::i32, 1::i32)2147483647::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:17shift_right_unsigned(-1::i64, 1::i32)9223372036854775807::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:20shift_right_unsigned(null::i32?, null::i32?)null::i32?CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:21shift_right_unsigned(null::i64?, null::i32?)null::i64?CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:24shift_right_unsigned(8::i32, 0::i32)8::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:25shift_right_unsigned(123456789::i64, 0::i32)123456789::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:26shift_right_unsigned(1::i32, 31::i32)0::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:27shift_right_unsigned(1::i64, 63::i32)0::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:30shift_right_unsigned(-1::i32, 8::i32)16777215::i32CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
arithmetic/shift_right_unsigned.test:31shift_right_unsigned(-1::i64, 8::i32)72057594037927935::i64CatalogException: Catalog Error: Scalar Function with name shift_right_unsigned does not exist!
comparison/is_false.test:5is_false(is_false(null::bool?))true::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_false.test:8is_false(is_false(true::bool))true::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_false.test:9is_false(is_false(false::bool))false::boolCatalogException: Catalog Error: Scalar Function with name is_false does not exist!
comparison/is_not_false.test:5is_not_false(is_not_false(null::bool?))true::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_false.test:8is_not_false(is_not_false(false::bool))false::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_false.test:9is_not_false(is_not_false(true::bool))true::boolCatalogException: Catalog Error: Scalar Function with name is_not_false does not exist!
comparison/is_not_true.test:5is_not_true(is_not_true(null::bool?))false::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_not_true.test:8is_not_true(is_not_true(true::bool))true::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_not_true.test:9is_not_true(is_not_true(false::bool))false::boolCatalogException: Catalog Error: Scalar Function with name is_not_true does not exist!
comparison/is_true.test:5is_true(is_true(null::bool?))false::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
comparison/is_true.test:8is_true(is_true(true::bool))true::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
comparison/is_true.test:9is_true(is_true(false::bool))false::boolCatalogException: Catalog Error: Scalar Function with name is_true does not exist!
datetime/add_intervals.test:5add_intervals(P2147483646D::iday, P1D::iday)P2147483647D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:6add_intervals(PT2147483646S::iday, PT1S::iday)PT2147483647S::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:9add_intervals(P1Y::iyear, null::iyear?)null::iyear?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:10add_intervals(null::iyear?, null::iyear?)null::iyear?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:11add_intervals(P5D::iday, null::iday?)null::iday?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:12add_intervals(null::iday?, null::iday?)null::iday?CatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:15add_intervals(PT5H::iday, PT-3H::iday)PT2H::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:16add_intervals(P10D::iday, P-3D::iday)P7D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:17add_intervals(P-1D::iday, P2D::iday)P1D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:18add_intervals(P5Y::iyear, P-2Y::iyear)P3Y::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:19add_intervals(P1Y6M::iyear, P-6M::iyear)P1Y::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:22add_intervals(P0D::iday, PT0H::iday)P0D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:23add_intervals(P5D::iday, P0D::iday)P5D::idayCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:24add_intervals(P0Y::iyear, P0M::iyear)P0Y::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:25add_intervals(P2Y3M::iyear, P0Y::iyear)P2Y3M::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:26add_intervals(P1Y::iyear, P2Y::iyear)P3Y::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:27add_intervals(P1Y2M::iyear, P3M::iyear)P1Y5M::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:28add_intervals(P0Y6M::iyear, P0Y8M::iyear)P1Y2M::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:29add_intervals(P10Y::iyear, P5Y11M::iyear)P15Y11M::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
datetime/add_intervals.test:30add_intervals(P0Y11M::iyear, P0Y3M::iyear)P1Y2M::iyearCatalogException: Catalog Error: Scalar Function with name add_intervals does not exist!
string/regexp_count_substring.test:5regexp_count_substring(''::str, 'a'::str, 1::i64)0::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:6regexp_count_substring(''::str, 'a'::str)0::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:7regexp_count_substring('abcabc'::str, 'a'::str, -1::i64)0::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:8regexp_count_substring('abcabc'::str, 'a'::str, 10::i64)0::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:11regexp_count_substring('abc'::str, ''::str, 1::i64)4::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:12regexp_count_substring(''::str, ''::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:13regexp_count_substring('abc'::str, ''::str)4::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:16regexp_count_substring('abcabc'::str, 'a'::str, 4::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:17regexp_count_substring('abcabc'::str, 'abc'::str, 2::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:18regexp_count_substring('AaBbCc'::str, 'a'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:19regexp_count_substring('AaBbCc'::str, 'A'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:20regexp_count_substring('HELLO hello HeLLo'::str, 'hello'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:21regexp_count_substring('AaBbCc'::str, '[a-z]'::str, 1::i64)3::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:22regexp_count_substring('aaa'::str, 'aa'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:23regexp_count_substring('aaaa'::str, 'aa'::str, 1::i64)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:24regexp_count_substring('ababa'::str, 'aba'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:25regexp_count_substring('Москва'::str, '[а-я]'::str, 1::i64)5::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:28regexp_count_substring('café'::str, 'é'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:29regexp_count_substring('你好世界'::str, '好'::str, 1::i64)1::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_count_substring.test:30regexp_count_substring('🎉🎊🎉'::str, '🎉'::str, 1::i64)2::i64CatalogException: Catalog Error: Scalar Function with name regexp_count_substring does not exist!
string/regexp_match_substring.test:5regexp_match_substring('abc'::str, 'a'::str, 1::i64, 5::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:6regexp_match_substring('abc'::str, 'a'::str, 10::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:7regexp_match_substring('hello'::str, 'xyz'::str, 1::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:8regexp_match_substring('123'::str, '[a-z]+'::str, 1::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:9regexp_match_substring('hello world'::str, '^world'::str, 1::i64, 1::i64, 0::i64)null::str?CatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:12regexp_match_substring('foobarboopzoo'::str, 'o{1,}'::str, 1::i64, 2::i64, 0::i64)'oo'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:13regexp_match_substring('abcabcacb'::str, '[bc]'::str, 1::i64, 2::i64, 0::i64)'c'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:14regexp_match_substring('abcabcacb'::str, '[bc]'::str, 1::i64, 3::i64, 0::i64)'b'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:15regexp_match_substring('foobarboopzoo'::str, 'o{1,}'::str, 5::i64, 1::i64, 0::i64)'oo'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:16regexp_match_substring('abcabcacb'::str, 'abc'::str, 4::i64, 1::i64, 0::i64)'abc'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:17regexp_match_substring('hello world'::str, 'o'::str, 6::i64, 1::i64, 0::i64)'o'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:18regexp_match_substring(''::str, 'a*'::str, 1::i64, 1::i64, 0::i64)''::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:19regexp_match_substring(''::str, '.*'::str, 1::i64, 1::i64, 0::i64)''::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:20regexp_match_substring('abc'::str, ''::str, 1::i64, 1::i64, 0::i64)''::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:21regexp_match_substring('hello world'::str, '^hello'::str, 1::i64, 1::i64, 0::i64)'hello'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_match_substring.test:22regexp_match_substring('hello world'::str, 'world$'::str, 1::i64, 1::i64, 0::i64)'world'::strCatalogException: Catalog Error: Scalar Function with name regexp_match_substring does not exist!
string/regexp_string_split.test:5regexp_string_split(null::str?, 'pattern'::str)null::list?<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:7regexp_string_split(null::str?, null::str?)null::list?<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:10regexp_string_split(''::str, 'a'::str)['']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:11regexp_string_split(''::str, ''::str)['']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:12regexp_string_split('abc'::str, 'abc'::str)['', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:13regexp_string_split('aaa'::str, 'a'::str)['', '', '', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:14regexp_string_split('bbbbb'::str, 'b+'::str)['', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:15regexp_string_split('aaabbbccc'::str, '[abc]'::str)['', '', '', '', '', '', '', '', '', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:18regexp_string_split('café'::str, 'é'::str)['caf', '']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:19regexp_string_split('你好世界'::str, '好'::str)['你', '世界']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:22regexp_string_split('abc'::str, 'xyz'::str)['abc']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:23regexp_string_split('hello world'::str, 'z+'::str)['hello world']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:24regexp_string_split('hello🌍world'::str, '🌍'::str)['hello', 'world']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!
string/regexp_string_split.test:25regexp_string_split('AbCdEf'::str, '(?i)b'::str)['A', 'CdEf']::list<str>CatalogException: Catalog Error: Scalar Function with name regexp_string_split does not exist!

The engine crashes on these plans

75 cases · Functions 58, Extended functions 17

Not yet reported upstream

DuckDB exits with a segmentation fault while running the plan. Each crash fails one case; the run continues in a fresh process.

Functions: variance (41), std_dev (34)

engine crashed on this plan: EngineCrashed: DuckDB crashed (exit code -11) while running run_plan
All 75 cases
CaseTestExpected
arithmetic/std_dev.test:5((1.0), (2.0), (3.0), (4.0), (5.0)) std_dev(SAMPLE::enum, col0::fp32)1.5811388::fp32?
arithmetic/std_dev.test:6((1.0), (2.0), (3.0), (4.0), (5.0)) std_dev(SAMPLE::enum, col0::fp64)1.5811388300841898::fp64?
arithmetic/std_dev.test:7((1.0), (2.0), (3.0), (4.0), (5.0)) std_dev(POPULATION::enum, col0::fp32)1.4142135::fp32?
arithmetic/std_dev.test:8((1.0), (2.0), (3.0), (4.0), (5.0)) std_dev(POPULATION::enum, col0::fp64)1.4142135623730951::fp64?
arithmetic/std_dev.test:11((5.0), (5.0), (5.0), (5.0)) std_dev(SAMPLE::enum, col0::fp32)0.0::fp32?
arithmetic/std_dev.test:12((5.0), (5.0), (5.0), (5.0)) std_dev(POPULATION::enum, col0::fp64)0.0::fp64?
arithmetic/std_dev.test:15((42.0)) std_dev(SAMPLE::enum, col0::fp32)Null::fp32?
arithmetic/std_dev.test:16((42.0)) std_dev(POPULATION::enum, col0::fp64)0.0::fp64?
arithmetic/std_dev.test:19((-5.0), (-3.0), (-1.0), (1.0), (3.0), (5.0)) std_dev(SAMPLE::enum, col0::fp32)3.7416575::fp32?
arithmetic/std_dev.test:20((-5.0), (-3.0), (-1.0), (1.0), (3.0), (5.0)) std_dev(SAMPLE::enum, col0::fp64)3.7416573867739413::fp64?
arithmetic/std_dev.test:21((-10.0), (-5.0), (0.0), (5.0), (10.0)) std_dev(POPULATION::enum, col0::fp32)7.0710678::fp32?
arithmetic/std_dev.test:22((-10.0), (-5.0), (0.0), (5.0), (10.0)) std_dev(POPULATION::enum, col0::fp64)7.0710678118654755::fp64?
arithmetic/std_dev.test:25((1.5), (2.5), (3.5), (4.5), (5.5)) std_dev(SAMPLE::enum, col0::fp32)1.5811388::fp32?
arithmetic/std_dev.test:26((1.5), (2.5), (3.5), (4.5), (5.5)) std_dev(SAMPLE::enum, col0::fp64)1.5811388300841898::fp64?
arithmetic/std_dev.test:27((0.1), (0.2), (0.3), (0.4), (0.5)) std_dev(POPULATION::enum, col0::fp64)0.14142135623730953::fp64?
arithmetic/std_dev.test:30((1000.0), (2000.0), (3000.0), (4000.0), (5000.0)) std_dev(SAMPLE::enum, col0::fp32)1581.1388::fp32?
arithmetic/std_dev.test:31((1000.0), (2000.0), (3000.0), (4000.0), (5000.0)) std_dev(SAMPLE::enum, col0::fp64)1581.1388300841898::fp64?
arithmetic/std_dev.test:34((0.001), (0.002), (0.003), (0.004), (0.005)) std_dev(SAMPLE::enum, col0::fp64)0.0015811388300841896::fp64?
arithmetic/std_dev.test:35((0.001), (0.002), (0.003), (0.004), (0.005)) std_dev(POPULATION::enum, col0::fp64)0.0014142135623730951::fp64?
arithmetic/std_dev.test:38((Null), (Null), (Null)) std_dev(SAMPLE::enum, col0::fp32?)Null::fp32?
arithmetic/std_dev.test:39(()) std_dev(SAMPLE::enum, col0::fp32)Null::fp32?
arithmetic/std_dev.test:40((1.0), (Null), (3.0), (Null), (5.0)) std_dev(SAMPLE::enum, col0::fp32?)2.0::fp32?
arithmetic/std_dev.test:41((1.0), (Null), (3.0), (Null), (5.0)) std_dev(POPULATION::enum, col0::fp64?)1.632993161855452::fp64?
arithmetic/std_dev.test:48((10.0), (20.0)) std_dev(SAMPLE::enum, col0::fp32)7.071068::fp32?
arithmetic/std_dev.test:49((10.0), (20.0)) std_dev(POPULATION::enum, col0::fp64)5.0::fp64?
arithmetic/std_dev.test:52((0.0), (100.0), (50.0), (25.0), (75.0)) std_dev(SAMPLE::enum, col0::fp32)39.52847::fp32?
arithmetic/std_dev.test:53((0.0), (100.0), (50.0), (25.0), (75.0)) std_dev(POPULATION::enum, col0::fp64)35.35533905932738::fp64?
arithmetic/variance.test:5((1.0), (2.0), (3.0), (4.0), (5.0)) variance(SAMPLE::enum, col0::fp32)2.5::fp32?
arithmetic/variance.test:6((1.0), (2.0), (3.0), (4.0), (5.0)) variance(SAMPLE::enum, col0::fp64)2.5::fp64?
arithmetic/variance.test:7((1.0), (2.0), (3.0), (4.0), (5.0)) variance(POPULATION::enum, col0::fp32)2.0::fp32?
arithmetic/variance.test:8((1.0), (2.0), (3.0), (4.0), (5.0)) variance(POPULATION::enum, col0::fp64)2.0::fp64?
arithmetic/variance.test:11((5.0), (5.0), (5.0), (5.0)) variance(SAMPLE::enum, col0::fp32)0.0::fp32?
arithmetic/variance.test:12((5.0), (5.0), (5.0), (5.0)) variance(POPULATION::enum, col0::fp64)0.0::fp64?
arithmetic/variance.test:15((42.0)) variance(SAMPLE::enum, col0::fp32)Null::fp32?
arithmetic/variance.test:16((42.0)) variance(POPULATION::enum, col0::fp64)0.0::fp64?
arithmetic/variance.test:19((-5.0), (-3.0), (-1.0), (1.0), (3.0), (5.0)) variance(SAMPLE::enum, col0::fp32)14.0::fp32?
arithmetic/variance.test:20((-5.0), (-3.0), (-1.0), (1.0), (3.0), (5.0)) variance(SAMPLE::enum, col0::fp64)14.0::fp64?
arithmetic/variance.test:21((-10.0), (-5.0), (0.0), (5.0), (10.0)) variance(POPULATION::enum, col0::fp32)50.0::fp32?
arithmetic/variance.test:22((-10.0), (-5.0), (0.0), (5.0), (10.0)) variance(POPULATION::enum, col0::fp64)50.0::fp64?
arithmetic/variance.test:25((1.5), (2.5), (3.5), (4.5), (5.5)) variance(SAMPLE::enum, col0::fp32)2.5::fp32?
arithmetic/variance.test:26((1.5), (2.5), (3.5), (4.5), (5.5)) variance(SAMPLE::enum, col0::fp64)2.5::fp64?
arithmetic/variance.test:27((0.1), (0.2), (0.3), (0.4), (0.5)) variance(POPULATION::enum, col0::fp64)0.020000000000000004::fp64?
arithmetic/variance.test:30((1000.0), (2000.0), (3000.0), (4000.0), (5000.0)) variance(SAMPLE::enum, col0::fp32)2500000.0::fp32?
arithmetic/variance.test:31((1000.0), (2000.0), (3000.0), (4000.0), (5000.0)) variance(SAMPLE::enum, col0::fp64)2500000.0::fp64?
arithmetic/variance.test:34((0.001), (0.002), (0.003), (0.004), (0.005)) variance(SAMPLE::enum, col0::fp64)0.0000025::fp64?
arithmetic/variance.test:35((0.001), (0.002), (0.003), (0.004), (0.005)) variance(POPULATION::enum, col0::fp64)0.000002::fp64?
arithmetic/variance.test:38((Null), (Null), (Null)) variance(SAMPLE::enum, col0::fp32?)Null::fp32?
arithmetic/variance.test:39(()) variance(SAMPLE::enum, col0::fp32)Null::fp32?
arithmetic/variance.test:40((1.0), (Null), (3.0), (Null), (5.0)) variance(SAMPLE::enum, col0::fp32?)4.0::fp32?
arithmetic/variance.test:41((1.0), (Null), (3.0), (Null), (5.0)) variance(POPULATION::enum, col0::fp64?)2.666666666666667::fp64?
arithmetic/variance.test:48((10.0), (20.0)) variance(SAMPLE::enum, col0::fp32)50.0::fp32?
arithmetic/variance.test:49((10.0), (20.0)) variance(POPULATION::enum, col0::fp64)25.0::fp64?
arithmetic/variance.test:52((0.0), (100.0), (50.0), (25.0), (75.0)) variance(SAMPLE::enum, col0::fp32)1562.5::fp32?
arithmetic/variance.test:53((0.0), (100.0), (50.0), (25.0), (75.0)) variance(POPULATION::enum, col0::fp64)1250.0::fp64?
arithmetic/variance.test:56((-2.0), (-1.0), (0.0), (1.0), (2.0)) variance(SAMPLE::enum, col0::fp32)2.5::fp32?
arithmetic/variance.test:57((-2.0), (-1.0), (0.0), (1.0), (2.0)) variance(POPULATION::enum, col0::fp64)2.0::fp64?
arithmetic/variance.test:60((10.0), (20.0), (30.0)) variance(SAMPLE::enum, col0::fp32)100.0::fp32?
arithmetic/variance.test:61((10.0), (20.0), (30.0)) variance(POPULATION::enum, col0::fp64)66.66666666666667::fp64?
arithmetic/std_dev.test:5((2.0), (4.0), (6.0), (8.0)) std_dev(POPULATION::enum, col0::fp64)2.23606797749979::fp64
arithmetic/std_dev.test:8((10.0), (10.0), (10.0)) std_dev(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/std_dev.test:11((-2.5), (-1.5), (-0.5), (0.5), (1.5), (2.5)) std_dev(POPULATION::enum, col0::fp64)1.707825127659933::fp64
arithmetic/std_dev.test:14((3.14)) std_dev(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/std_dev.test:20((0.0), (0.0), (0.0)) std_dev(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/std_dev.test:23((1e-100), (2e-100), (3e-100)) std_dev(POPULATION::enum, col0::fp64)8.16496580927726e-101::fp64
arithmetic/std_dev.test:24((1e-50), (2e-50), (3e-50), (4e-50)) std_dev(POPULATION::enum, col0::fp64)1.118033988749895e-50::fp64
arithmetic/variance.test:5((2.0), (4.0), (6.0), (8.0)) variance(POPULATION::enum, col0::fp64)5.0::fp64
arithmetic/variance.test:8((10.0), (10.0), (10.0)) variance(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/variance.test:11((-2.5), (-1.5), (-0.5), (0.5), (1.5), (2.5)) variance(POPULATION::enum, col0::fp64)2.9166666666666665::fp64
arithmetic/variance.test:14((3.14)) variance(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/variance.test:20((5.0), (15.0)) variance(POPULATION::enum, col0::fp64)25.0::fp64
arithmetic/variance.test:21((0.0), (0.0)) variance(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/variance.test:22((1e308), (1e308), (1e308)) variance(POPULATION::enum, col0::fp64)0.0::fp64
arithmetic/variance.test:25((2.5), (-2.5), (2.5), (-2.5)) variance(POPULATION::enum, col0::fp64)6.25::fp64
arithmetic/variance.test:28((1e100), (2e100), (3e100)) variance(POPULATION::enum, col0::fp64)6.666666666666667e+199::fp64
arithmetic/variance.test:29((1e100), (-1e100), (1e100), (-1e100)) variance(POPULATION::enum, col0::fp64)1e+200::fp64

The consumer passes argument types DuckDB has no matching function for

21 cases · Functions 20, Extended functions 1

Not yet reported upstream

Functions: regexp_replace (21)

BinderException: Binder Error: No function matches the given name and argument types 'regexp_replace(STRING_LITERAL, STRING_LITERAL, STRING_LITERAL, INTEGER_LITERAL, INTEGER_LITERAL)'. You might need to add explicit t
All 21 cases
CaseTestExpected
string/regexp_replace.test:5regexp_replace('test@test.com'::str, '^\S+@\S+$'::str, 'email_found'::str, 1::i64, 0::i64)'email_found'::str
string/regexp_replace.test:6regexp_replace('17:50'::str, '[0-9]?[0-9]:[0-9][0-9]'::str, 'TIME'::str, 1::i64, 0::i64)'TIME'::str
string/regexp_replace.test:7regexp_replace('17:50'::vchar<5>, '[0-9]?[0-9]:[0-9][0-9]'::vchar<22>, 'TIME'::vchar<4>, 1::i64, 0::i64)'TIME'::vchar<5>
string/regexp_replace.test:13regexp_replace('Hello'::str, 'Hel+?'::str, '1'::str, 1::i64, 0::i64)'1lo'::str
string/regexp_replace.test:17regexp_replace('Hello'::str, 'Hel+'::str, '1'::str, 1::i64, 0::i64)'1o'::str
string/regexp_replace.test:18regexp_replace('Helo'::str, 'Hel+'::str, '1'::str, 1::i64, 0::i64)'1o'::str
string/regexp_replace.test:29regexp_replace('abcdefg'::str, '\Aabc'::str, '111'::str, 1::i64, 0::i64)'111defg'::str
string/regexp_replace.test:30regexp_replace('abcdefg'::str, 'efg$'::str, '111'::str, 1::i64, 0::i64)'abcd111'::str
string/regexp_replace.test:31regexp_replace('catdogdog'::str, '^cat'::str, 'dog'::str, 1::i64, 0::i64)'dogdogdog'::str
string/regexp_replace.test:32regexp_replace('dogcatdogdog'::str, '^cat'::str, 'dog'::str, 1::i64, 0::i64)'dogcatdogdog'::str
string/regexp_replace.test:39regexp_replace('abc1abc'::str, '\d'::str, ''::str, 1::i64, 0::i64)'abcabc'::str
string/regexp_replace.test:40regexp_replace('111a111'::str, '\D'::str, ''::str, 1::i64, 0::i64)'111111'::str
string/regexp_replace.test:41regexp_replace('abc def'::str, '\s'::str, ''::str, 1::i64, 0::i64)'abcdef'::str
string/regexp_replace.test:42regexp_replace('a bcdef'::str, '\S'::str, ','::str, 1::i64, 1::i64)', bcdef'::str
string/regexp_replace.test:43regexp_replace(' abcdef'::str, '\w'::str, '1'::str, 1::i64, 1::i64)' 1bcdef'::str
string/regexp_replace.test:44regexp_replace('a bcdef'::str, '\W'::str, 'a'::str, 1::i64, 0::i64)'aabcdef'::str
string/regexp_replace.test:53regexp_replace('abc123abc'::str, '[0-9]+'::str, 'abc'::str, 1::i64, 0::i64)'abcabcabc'::str
string/regexp_replace.test:54regexp_replace('abcabcabc'::str, '[bc]'::str, 'dd'::str, 1::i64, 1::i64)'addcabcabc'::str
string/regexp_replace.test:55regexp_replace('abc'::str, '(.*)c'::str, '\1e'::str, 1::i64, 0::i64)'abe'::str
string/regexp_replace.test:56regexp_replace('abbbbc'::str, '[b]{2,3}'::str, 'd'::str, 1::i64, 0::i64)'adbc'::str
string/regexp_replace.test:9regexp_replace(''::str, 'a'::str, 'b'::str, 1::i64, 0::i64)''::str

The consumer passes argument types DuckDB has no matching function for

11 cases · Functions 11

Not yet reported upstream

Functions: xor (8), factorial_decimal (3)

BinderException: Binder Error: No function matches the given name and argument types 'factorial(DECIMAL(1,0))'. You might need to add explicit type casts.
All 11 cases
CaseTestExpectedMessage, where it differs
arithmetic_decimal/factorial_decimal.test:5factorial(0::dec<1, 0>)1::dec<38, 0>
arithmetic_decimal/factorial_decimal.test:6factorial(1::dec<1, 0>)1::dec<38, 0>
arithmetic_decimal/factorial_decimal.test:7factorial(20::dec<2, 0>)2432902008176640000::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types 'factorial(DECIMAL(2,0))'. You might need to add explicit type casts.
boolean/xor.test:5xor(true::bool, false::bool)true::boolBinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, BOOLEAN)'. You might need to add explicit type casts.
boolean/xor.test:6xor(true::bool, true::bool)false::boolBinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, BOOLEAN)'. You might need to add explicit type casts.
boolean/xor.test:7xor(false::bool, false::bool)false::boolBinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, BOOLEAN)'. You might need to add explicit type casts.
boolean/xor.test:8xor(false::bool, true::bool)true::boolBinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, BOOLEAN)'. You might need to add explicit type casts.
boolean/xor.test:11xor(true::bool, null::bool?)null::bool?BinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, "NULL")'. You might need to add explicit type casts.
boolean/xor.test:12xor(null::bool?, true::bool)null::bool?BinderException: Binder Error: No function matches the given name and argument types 'xor("NULL", BOOLEAN)'. You might need to add explicit type casts.
boolean/xor.test:13xor(false::bool, null::bool?)null::bool?BinderException: Binder Error: No function matches the given name and argument types 'xor(BOOLEAN, "NULL")'. You might need to add explicit type casts.
boolean/xor.test:14xor(null::bool?, false::bool)null::bool?BinderException: Binder Error: No function matches the given name and argument types 'xor("NULL", BOOLEAN)'. You might need to add explicit type casts.

ConversionException: Conversion Error: … specifier "…" not recognized

11 cases · Functions 6, Extended functions 5

Not yet reported upstream

Functions: extract (11)

ConversionException: Conversion Error: extract specifier "ISO_YEAR" not recognized
All 11 cases
CaseTestExpectedMessage, where it differs
datetime/extract.test:6extract(ISO_YEAR::enum, 2016-01-01T13:30:15::pts<6>)2015::i64
datetime/extract.test:9extract(ISO_WEEK::enum, ONE::enum, 2016-12-31T13:30:15::pts<6>)52::i64ConversionException: Conversion Error: extract specifier "ISO_WEEK" not recognized
datetime/extract.test:11extract(SUNDAY_DAY_OF_WEEK::enum, ONE::enum, 2016-12-25T13:30:15::pts<6>)1::i64ConversionException: Conversion Error: extract specifier "SUNDAY_DAY_OF_WEEK" not recognized
datetime/extract.test:12extract(MONDAY_DAY_OF_WEEK::enum, ONE::enum, 2016-12-25T13:30:15::pts<6>)7::i64ConversionException: Conversion Error: extract specifier "MONDAY_DAY_OF_WEEK" not recognized
datetime/extract.test:13extract(DAY_OF_YEAR::enum, ONE::enum, 2016-12-25T13:30:15::pts<6>)360::i64ConversionException: Conversion Error: extract specifier "DAY_OF_YEAR" not recognized
datetime/extract.test:19extract(UNIX_TIME::enum, 2016-12-31T13:30:15::pts<6>)1483191015::i64ConversionException: Conversion Error: extract specifier "UNIX_TIME" not recognized
datetime/extract.test:9extract(ISO_YEAR::enum, 2020-01-01T00:00:00::pts<6>)2020::i64
datetime/extract.test:10extract(ISO_YEAR::enum, 2021-01-01T00:00:00::pts<6>)2020::i64
datetime/extract.test:22extract(DAY_OF_YEAR::enum, ONE::enum, 2020-02-29::date)60::i64ConversionException: Conversion Error: extract specifier "DAY_OF_YEAR" not recognized
datetime/extract.test:23extract(DAY_OF_YEAR::enum, ONE::enum, 2020-12-31::date)366::i64ConversionException: Conversion Error: extract specifier "DAY_OF_YEAR" not recognized
datetime/extract.test:25extract(DAY_OF_YEAR::enum, ONE::enum, 2019-12-31::date)365::i64ConversionException: Conversion Error: extract specifier "DAY_OF_YEAR" not recognized

Wrong result (got …, expected …)

7 cases · Functions 7

Not yet reported upstream

Functions: extract (4), regexp_replace (3)

got 15000, expected 0
All 7 cases
CaseTestExpectedMessage, where it differs
datetime/extract.test:17extract(MILLISECOND::enum, 2016-12-31T13:30:15::pts<6>)0::i64
datetime/extract.test:18extract(MICROSECOND::enum, 2016-12-31T13:30:15.220000::pts<6>)0::i64got 15220000, expected 0
datetime/extract.test:30extract(MILLISECOND::enum, 01:02:03.155::pt<6>)155::i64got 3155, expected 155
datetime/extract.test:31extract(MICROSECOND::enum, 01:02:03.45::pt<6>)0::i64got 3450000, expected 0
string/regexp_replace.test:48regexp_replace('a bcdef'::str, '\S'::str, ','::str)', ,,,,,'::strgot ', bcdef', expected ', ,,,,,'
string/regexp_replace.test:49regexp_replace(' abcdef'::str, '\w'::str, '1'::str)' 111111'::strgot ' 1bcdef', expected ' 111111'
string/regexp_replace.test:58regexp_replace('abcabcabc'::str, '[bc]'::str, 'dd'::str)'addddaddddadddd'::strgot 'addcabcabc', expected 'addddaddddadddd'

BinderException: Binder Error: Cardinality can only operate on MAPs

6 cases · Functions 6

Not yet reported upstream

Functions: cardinality (6)

BinderException: Binder Error: Cardinality can only operate on MAPs
All 6 cases
CaseTestExpected
list/cardinality.test:5cardinality([1, 2, 3]::list<i32>)3::i64
list/cardinality.test:6cardinality([1, 2, 3, 4, 5]::list<i32>)5::i64
list/cardinality.test:7cardinality(['a', 'b']::list<string>)2::i64
list/cardinality.test:10cardinality([]::list<i32>)0::i64
list/cardinality.test:13cardinality([1, Null, 3]::list<i32?>)3::i64
list/cardinality.test:14cardinality([Null, Null]::list<i32?>)2::i64

BinderException: Binder Error: Could not choose a best candidate function for the function call "…"NULL"…". In order to select one, please add explicit type casts.

6 cases · Functions 3, Extended functions 3

Not yet reported upstream

Functions: add_datetime (2), extract (2), subtract_datetime, contains

BinderException: Binder Error: Could not choose a best candidate function for the function call "add("NULL", INTERVAL)". In order to select one, please add explicit type casts.
All 6 cases
CaseTestExpectedMessage, where it differs
datetime/add_datetime.test:15add(null::date?, P5D::iday<6>)null::pts?<6>
datetime/add_datetime.test:16add(null::date?, P5Y::iyear)null::date?
datetime/subtract_datetime.test:15subtract(null::date?, P5D::iday<0>)null::pts?<0>BinderException: Binder Error: Could not choose a best candidate function for the function call "subtract("NULL", INTERVAL)". In order to select one, please add
datetime/extract.test:5extract(YEAR::enum, null::date?)null::i64?BinderException: Binder Error: Could not choose a best candidate function for the function call "date_part(STRING_LITERAL, "NULL")". In order to select one, ple
datetime/extract.test:6extract(MONTH::enum, ONE::enum, null::pts?<6>)null::i64?BinderException: Binder Error: Could not choose a best candidate function for the function call "date_part(STRING_LITERAL, "NULL")". In order to select one, ple
string/contains.test:6contains('abcdefg'::str, null::str?)null::bool?BinderException: Binder Error: Could not choose a best candidate function for the function call "contains(STRING_LITERAL, "NULL")". In order to select one, plea

Expected a runtime error; the consumer rejected the plan instead

6 cases · Functions 3, Extended functions 3

Not yet reported upstream

Functions: negate (4), factorial_decimal (2)

expected a runtime error, but the consumer rejected the plan: CatalogException: Catalog Error: Scalar Function with name negate does not exist!
All 6 cases
CaseTestExpectedMessage, where it differs
arithmetic/negate.test:17negate(-128::i8) [overflow:ERROR]<!ERROR>
arithmetic_decimal/factorial_decimal.test:10factorial(34::dec<2, 0>)<!ERROR>expected a runtime error, but the consumer rejected the plan: BinderException: Binder Error: No function matches the given name and argument types 'factorial(DE
arithmetic_decimal/factorial_decimal.test:13factorial(-1::dec<1, 0>)<!ERROR>expected a runtime error, but the consumer rejected the plan: BinderException: Binder Error: No function matches the given name and argument types 'factorial(DE
arithmetic/negate.test:11negate(-32768::i16) [overflow:ERROR]<!ERROR>
arithmetic/negate.test:14negate(-2147483648::i32) [overflow:ERROR]<!ERROR>
arithmetic/negate.test:17negate(-9223372036854775808::i64) [overflow:ERROR]<!ERROR>

NotImplementedException: Not implemented Error: Unsupported expression type window_function

6 cases · Functions 6

Not yet reported upstream

Functions: lag (4), row_number (2)

NotImplementedException: Not implemented Error: Unsupported expression type window_function
All 6 cases
CaseTestExpected
window/lag.test:5DEFINE f1(i32)((1998), (1999), (2000), (2001))
window/lag.test:8DEFINE f1(i32)((1998), (1999), (2000), (2001))
window/lag.test:11DEFINE f1(i32)((1998), (1999), (2000), (2001))
window/lag.test:15DEFINE f1(i32)()
window/row_number.test:5DEFINE f1(i32)((1998), (1999), (2000), (2001))
window/row_number.test:9DEFINE f1(i32)()

The consumer passes argument types DuckDB has no matching function for

3 cases · Functions 2, Extended functions 1

Not yet reported upstream

Functions: regexp_replace (3)

BinderException: Binder Error: No function matches the given name and argument types 'regexp_replace(STRING_LITERAL, "NULL", STRING_LITERAL, INTEGER_LITERAL, INTEGER_LITERAL)'. You might need to add explicit type cast
All 3 cases
CaseTestExpectedMessage, where it differs
string/regexp_replace.test:23regexp_replace('Hello'::str, null::str?, '1'::str, 1::i64, 0::i64)null::str?
string/regexp_replace.test:24regexp_replace(null::str?, ' '::str, '1'::str, 1::i64, 0::i64)null::str?BinderException: Binder Error: No function matches the given name and argument types 'regexp_replace("NULL", STRING_LITERAL, STRING_LITERAL, INTEGER_LITERAL, IN
string/regexp_replace.test:5regexp_replace('test'::str, 'e'::str, null::str?, 1::i64, 0::i64)null::str?BinderException: Binder Error: No function matches the given name and argument types 'regexp_replace(STRING_LITERAL, STRING_LITERAL, "NULL", INTEGER_LITERAL, IN

BinderException: Binder Error: Could not choose a best candidate function for the function call "…"NULL"…". In order to select one, please … explicit type casts.

2 cases · Extended functions 2

Not yet reported upstream

Functions: add (2)

BinderException: Binder Error: Could not choose a best candidate function for the function call "add("NULL", INTERVAL)". In order to select one, please add explicit type casts.
All 2 cases
CaseTestExpected
datetime/add.test:12add(null::date?, P5D::iday)null::pts?<6>
datetime/add.test:21add(null::pts?<6>, P5D::iday)null::pts?<6>

BinderException: Binder Error: Could not choose a best candidate function for the function call "…"NULL"…"NULL"…". In order to select one, please add explicit type casts.

1 case · Extended functions 1

Not yet reported upstream

Functions: contains

BinderException: Binder Error: Could not choose a best candidate function for the function call "contains("NULL", "NULL")". In order to select one, please add explicit type casts.
The case
CaseTestExpected
string/contains.test:7contains(null::str?, null::str?)null::bool?

Failing queries

Query plans that fail. There is no SQL run to compare with, so the message is the guide.

Subqueries are not supported

10 cases · TPC-H 10

Not yet reported upstream

The Substrait extension rejects plans with subquery expressions (IN, EXISTS, scalar subqueries), which these TPC-H queries use.

Queries: q02, q04, q11, q15, q16, q17, q18, q20, q21, q22

DuckDB Substrait execution failed: Not implemented Error: Unsupported expression type subquery

LINE 1: SELECT * FROM from_substrait(?)
                      ^
All 10 cases
Case
q02
q04
q11
q15
q16
q17
q18
q20
q21
q22

Engine results that differ from the Substrait definition

These cases fail in the engine's own SQL as well, so they are about the engine itself rather than its Substrait consumer.

BinderException: Binder Error: No function matches the given name and argument types '…'. You might need to add explicit type casts.

42 cases · Functions as SQL 42

Not yet reported upstream

Functions: bitwise_and (14), bitwise_or (14), bitwise_xor (14)

BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(1,0), DECIMAL(1,0))'. You might need to add explicit type casts. [SELECT (CAST('0' AS DECIMAL(1,0)) & CAST('1' AS DECIMAL(1,0)))]
All 42 cases
CaseTestExpectedMessage, where it differs
arithmetic_decimal/bitwise_and.test:5bitwise_and(0::dec<1, 0>, 1::dec<1, 0>)0::dec<1, 0>
arithmetic_decimal/bitwise_and.test:6bitwise_and(127::dec<3, 0>, 127::dec<3, 0>)127::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(3,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_and.test:7bitwise_and(-127::dec<3, 0>, -10::dec<2, 0>)-128::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(3,0), DECIMAL(2,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_and.test:8bitwise_and(31766::dec<5, 0>, 900::dec<3, 0>)4::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_and.test:9bitwise_and(-31766::dec<5, 0>, 900::dec<3, 0>)896::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_and.test:10bitwise_and(2147483647::dec<10, 0>, 1234567::dec<7, 0>)1234567::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(10,0), DECIMAL(7,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_and.test:11bitwise_and(-2147483647::dec<10, 0>, 1234567::dec<7, 0>)1::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(10,0), DECIMAL(7,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_and.test:12bitwise_and(9223372036854775807::dec<19, 0>, 127::dec<3, 0>)127::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_and.test:13bitwise_and(-9223372036854775807::dec<19, 0>, 127::dec<3, 0>)1::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_and.test:16bitwise_and(99999999999999999999999999999999999999::dec<38, 0>, 99999999999999999999999999999999999999::dec<38, 0>)99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_and.test:17bitwise_and(99999999999999999999999999999999999999::dec<38, 0>, 00000000000000000000000000000000000000::dec<38, 0>)0::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_and.test:18bitwise_and(-99999999999999999999999999999999999999::dec<38, 0>, -99999999999999999999999999999999999999::dec<38, 0>)-99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_and.test:21bitwise_and(null::dec?<1, 0>, 127::dec<3, 0>)null::dec?<3, 0>BinderException: Binder Error: No function matches the given name and argument types '&(DECIMAL(1,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_and.test:22bitwise_and(null::dec?<1, 0>, null::dec?<1, 0>)null::dec?<1, 0>
arithmetic_decimal/bitwise_or.test:5bitwise_or(0::dec<1, 0>, 1::dec<1, 0>)1::dec<1, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(1,0), DECIMAL(1,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:6bitwise_or(127::dec<3, 0>, 127::dec<3, 0>)127::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(3,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:7bitwise_or(-127::dec<3, 0>, -10::dec<2, 0>)-9::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(3,0), DECIMAL(2,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:8bitwise_or(31766::dec<5, 0>, 900::dec<3, 0>)32662::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:9bitwise_or(-31766::dec<5, 0>, 900::dec<3, 0>)-31762::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:10bitwise_or(2147483647::dec<10, 0>, 123456789::dec<9, 0>)2147483647::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(10,0), DECIMAL(9,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_or.test:11bitwise_or(-2147483647::dec<10, 0>, 123456789::dec<9, 0>)-2024026859::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(10,0), DECIMAL(9,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_or.test:12bitwise_or(9223372036854775807::dec<19, 0>, 127::dec<3, 0>)9223372036854775807::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_or.test:13bitwise_or(-9223372036854775807::dec<19, 0>, 127::dec<3, 0>)-9223372036854775681::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type casts
arithmetic_decimal/bitwise_or.test:16bitwise_or(99999999999999999999999999999999999999::dec<38, 0>, 99999999999999999999999999999999999999::dec<38, 0>)99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_or.test:17bitwise_or(99999999999999999999999999999999999999::dec<38, 0>, 00000000000000000000000000000000000000::dec<38, 0>)99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_or.test:18bitwise_or(-99999999999999999999999999999999999999::dec<38, 0>, -99999999999999999999999999999999999999::dec<38, 0>)-99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_or.test:21bitwise_or(null::dec?<1, 0>, 127::dec<3, 0>)null::dec?<3, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(1,0), DECIMAL(3,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_or.test:22bitwise_or(null::dec?<1, 0>, null::dec?<1, 0>)null::dec?<1, 0>BinderException: Binder Error: No function matches the given name and argument types '|(DECIMAL(1,0), DECIMAL(1,0))'. You might need to add explicit type casts.
arithmetic_decimal/bitwise_xor.test:5bitwise_xor(0::dec<1, 0>, 1::dec<1, 0>)1::dec<1, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(1,0), DECIMAL(1,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:6bitwise_xor(127::dec<3, 0>, 127::dec<3, 0>)0::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(3,0), DECIMAL(3,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:7bitwise_xor(-127::dec<3, 0>, -10::dec<2, 0>)119::dec<3, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(3,0), DECIMAL(2,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:8bitwise_xor(31766::dec<5, 0>, 900::dec<3, 0>)32658::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:9bitwise_xor(-31766::dec<5, 0>, 900::dec<3, 0>)-32658::dec<5, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(5,0), DECIMAL(3,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:10bitwise_xor(2147483647::dec<10, 0>, 123456789::dec<9, 0>)2024026858::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(10,0), DECIMAL(9,0))'. You might need to add explicit type cas
arithmetic_decimal/bitwise_xor.test:11bitwise_xor(-2147483647::dec<10, 0>, 123456789::dec<9, 0>)-2024026860::dec<10, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(10,0), DECIMAL(9,0))'. You might need to add explicit type cas
arithmetic_decimal/bitwise_xor.test:12bitwise_xor(9223372036854775807::dec<19, 0>, 127::dec<3, 0>)9223372036854775680::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type cas
arithmetic_decimal/bitwise_xor.test:13bitwise_xor(-9223372036854775807::dec<19, 0>, 127::dec<3, 0>)-9223372036854775682::dec<19, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(19,0), DECIMAL(3,0))'. You might need to add explicit type cas
arithmetic_decimal/bitwise_xor.test:16bitwise_xor(99999999999999999999999999999999999999::dec<38, 0>, 99999999999999999999999999999999999999::dec<38, 0>)0::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type ca
arithmetic_decimal/bitwise_xor.test:17bitwise_xor(99999999999999999999999999999999999999::dec<38, 0>, 00000000000000000000000000000000000000::dec<38, 0>)99999999999999999999999999999999999999::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type ca
arithmetic_decimal/bitwise_xor.test:18bitwise_xor(-99999999999999999999999999999999999999::dec<38, 0>, -99999999999999999999999999999999999999::dec<38, 0>)0::dec<38, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(38,0), DECIMAL(38,0))'. You might need to add explicit type ca
arithmetic_decimal/bitwise_xor.test:21bitwise_xor(null::dec?<1, 0>, 127::dec<3, 0>)null::dec?<3, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(1,0), DECIMAL(3,0))'. You might need to add explicit type cast
arithmetic_decimal/bitwise_xor.test:22bitwise_xor(null::dec?<1, 0>, null::dec?<1, 0>)null::dec?<1, 0>BinderException: Binder Error: No function matches the given name and argument types 'xor(DECIMAL(1,0), DECIMAL(1,0))'. You might need to add explicit type cast

Wrong result (got …, expected …)

33 cases · Extended functions as SQL 32, Functions as SQL 1

Not yet reported upstream

Functions: gte (6), gt (5), lt (4), lte (4), atanh (2), sign (2), between (2), equal (2), not_equal (2), rpad, degrees, regexp_string_split, string_split

got 'abcd', expected 'cdef' [SELECT rpad('abcdef', CAST(4 AS INTEGER), ' ')]
All 33 cases
CaseTestExpectedMessage, where it differs
string/rpad.test:10rpad('abcdef'::str, 4::i32, ' '::str)'cdef'::str
arithmetic/atanh.test:5atanh(-1.0::fp64)-inf::fp64got inf, expected -inf
arithmetic/atanh.test:6atanh(-1.0::fp32)-inf::fp32got inf, expected -inf
arithmetic/degrees.test:50degrees(1.401298464324817e-45::fp32)8.029052e-44::fp32got 8.028848784397557e-44, expected 7.987401246651457e-44
arithmetic/sign.test:32sign(nan::fp64)nan::fp64got 0, expected nan
arithmetic/sign.test:51sign(nan::fp32)nan::fp32got 0, expected nan
comparison/between.test:17between(3.0::fp32, 1.0::fp32, nan::fp32)false::boolgot True, expected False
comparison/between.test:22between(3.0::fp64, 1.0::fp64, nan::fp64)false::boolgot True, expected False
comparison/equal.test:16equal(nan::fp64, nan::fp64)false::boolgot True, expected False
comparison/equal.test:17equal(nan::fp32, nan::fp32)false::boolgot True, expected False
comparison/gt.test:18gt(nan::fp32, 5.0::fp32)false::boolgot True, expected False
comparison/gt.test:21gt(nan::fp32, 0.0::fp32)false::boolgot True, expected False
comparison/gt.test:22gt(nan::fp32, -inf::fp32)false::boolgot True, expected False
comparison/gt.test:24gt(nan::fp64, 5.0::fp64)false::boolgot True, expected False
comparison/gt.test:27gt(nan::fp64, inf::fp64)false::boolgot True, expected False
comparison/gte.test:31gte(nan::fp32, 1.0::fp32)false::boolgot True, expected False
comparison/gte.test:33gte(nan::fp32, nan::fp32)false::boolgot True, expected False
comparison/gte.test:34gte(nan::fp64, 1.0::fp64)false::boolgot True, expected False
comparison/gte.test:36gte(nan::fp64, nan::fp64)false::boolgot True, expected False
comparison/gte.test:37gte(nan::fp32, 0.0::fp32)false::boolgot True, expected False
comparison/gte.test:38gte(nan::fp64, -inf::fp64)false::boolgot True, expected False
comparison/lt.test:17lt(1.0::fp32, nan::fp32)false::boolgot True, expected False
comparison/lt.test:20lt(-1.0::fp32, nan::fp32)false::boolgot True, expected False
comparison/lt.test:22lt(1.0::fp64, nan::fp64)false::boolgot True, expected False
comparison/lt.test:25lt(-inf::fp64, nan::fp64)false::boolgot True, expected False
comparison/lte.test:25lte(5.0::fp32, nan::fp32)false::boolgot True, expected False
comparison/lte.test:26lte(nan::fp32, nan::fp32)false::boolgot True, expected False
comparison/lte.test:28lte(100.0::fp64, nan::fp64)false::boolgot True, expected False
comparison/lte.test:29lte(nan::fp64, nan::fp64)false::boolgot True, expected False
comparison/not_equal.test:16not_equal(nan::fp32, nan::fp32)true::boolgot False, expected True
comparison/not_equal.test:19not_equal(nan::fp64, nan::fp64)true::boolgot False, expected True
string/regexp_string_split.test:6regexp_string_split('text'::str, null::str?)null::list?<str>got ['text'], expected None
string/string_split.test:9string_split('abc'::str, null::str?)null::list?<str>got ['abc'], expected None

InvalidInputException: Invalid Input Error: invalid perl operator: …

28 cases · Functions as SQL 28

Not yet reported upstream

Functions: regexp_count_substring (8), regexp_match_substring (8), regexp_replace (8), regexp_string_split (4)

InvalidInputException: Invalid Input Error: invalid perl operator: (?= [SELECT len(regexp_extract_all('100 dollars 100 dollars', '\d+(?= dollars)'))]
All 28 cases
CaseTestExpectedMessage, where it differs
string/regexp_count_substring.test:41regexp_count_substring('100 dollars 100 dollars'::str, '\d+(?= dollars)'::str, 1::i64)2::i64
string/regexp_count_substring.test:42regexp_count_substring('100 dollars 100 dollars'::str, '\d+(?= dollars)'::str)2::i64
string/regexp_count_substring.test:45regexp_count_substring('100 pesos, 99 pesos, 98 pesos'::str, '\d+(?!\d| dollars)'::str, 1::i64)3::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_count_substring.test:46regexp_count_substring('100 pesos, 99 pesos, 98 pesos'::str, '\d+(?!\d| dollars)'::str)3::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_count_substring.test:49regexp_count_substring('USD100'::str, '(?<=USD)\d{3}'::str, 1::i64)1::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_count_substring.test:50regexp_count_substring('USD100'::str, '(?<=USD)\d{3}'::str)1::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_count_substring.test:53regexp_count_substring('JPY100JPY100'::str, '\d{3}(?<!USD\d{3})'::str, 1::i64)2::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_count_substring.test:54regexp_count_substring('JPY100JPY100'::str, '\d{3}(?<!USD\d{3})'::str)2::i64InvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_match_substring.test:43regexp_match_substring('100 dollars'::str, '\d+(?= dollars)'::str, 1::i64, 1::i64, 0::i64)'100'::str
string/regexp_match_substring.test:44regexp_match_substring('100 dollars'::str, '\d+(?= dollars)'::str)'100'::str
string/regexp_match_substring.test:47regexp_match_substring('100 pesos'::str, '\d+(?!\d| dollars)'::str, 1::i64, 1::i64, 0::i64)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_match_substring.test:48regexp_match_substring('100 pesos'::str, '\d+(?!\d| dollars)'::str)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_match_substring.test:51regexp_match_substring('USD100'::str, '(?<=USD)\d{3}'::str, 1::i64, 1::i64, 0::i64)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_match_substring.test:52regexp_match_substring('USD100'::str, '(?<=USD)\d{3}'::str)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_match_substring.test:55regexp_match_substring('JPY100'::str, '\d{3}(?<!USD\d{3})'::str, 1::i64, 1::i64, 0::i64)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_match_substring.test:56regexp_match_substring('JPY100'::str, '\d{3}(?<!USD\d{3})'::str)'100'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_replace.test:63regexp_replace('100 dollars'::str, '\d+(?= dollars)'::str, 'hundred'::str, 1::i64, 0::i64)'hundred dollars'::str
string/regexp_replace.test:64regexp_replace('100 dollars'::str, '\d+(?= dollars)'::str, 'hundred'::str)'hundred dollars'::str
string/regexp_replace.test:67regexp_replace('100 pesos'::str, '\d+(?!\d| dollars)'::str, '999'::str, 1::i64, 0::i64)'999 pesos'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_replace.test:68regexp_replace('100 pesos'::str, '\d+(?!\d| dollars)'::str, '999'::str)'999 pesos'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_replace.test:71regexp_replace('USD100'::str, '(?<=USD)\d{3}'::str, '999'::str, 1::i64, 0::i64)'USD999'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_replace.test:72regexp_replace('USD100'::str, '(?<=USD)\d{3}'::str, '999'::str)'USD999'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_replace.test:75regexp_replace('JPY100'::str, '\d{3}(?<!USD\d{3})'::str, '999'::str, 1::i64, 0::i64)'JPY999'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_replace.test:76regexp_replace('JPY100'::str, '\d{3}(?<!USD\d{3})'::str, '999'::str)'JPY999'::strInvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_string_split.test:30regexp_string_split('100 dollars'::str, '\d+(?= dollars)'::str)['', ' dollars']::list<str>
string/regexp_string_split.test:33regexp_string_split('100 pesos'::str, '\d+(?!\d| dollars)'::str)['', ' pesos']::list<str>InvalidInputException: Invalid Input Error: invalid perl operator: (?!
string/regexp_string_split.test:36regexp_string_split('USD100'::str, '(?<=USD)\d{3}'::str)['USD', '']::list<str>InvalidInputException: Invalid Input Error: invalid perl operator: (?<
string/regexp_string_split.test:39regexp_string_split('JPY100'::str, '\d{3}(?<!USD\d{3})'::str)['JPY', '']::list<str>InvalidInputException: Invalid Input Error: invalid perl operator: (?<

Expected an error, got a result

7 cases · Extended functions as SQL 5, Functions as SQL 2

Not yet reported upstream

Functions: sum (5), factorial (2)

expected an error, got 9223372046854775810 [SELECT sum(x) FROM (SELECT UNNEST(CAST(CAST([CAST(9223372036854775806 AS BIGINT), CAST(1 AS BIGINT), CAST(1 AS BIGINT), CAST(1 AS BIGINT), CAST(1 AS BIGINT), CAST(10000000000 AS BIGINT)] AS BIGINT[]) AS BIGINT[])) AS x)]
All 7 cases
CaseTestExpectedMessage, where it differs
arithmetic/sum.test:11sum((9223372036854775806, 1, 1, 1, 1, 10000000000)::i64) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/sum.test:11sum(('18446744073709551614', '1', '1', '1', '1', '10000000000')::u!u64) [overflow:ERROR]<!ERROR>expected an error, got 18446744083709551618
arithmetic/factorial.test:5factorial(13::i32) [overflow:ERROR]<!ERROR>expected an error, got 6227020800
arithmetic/factorial.test:6factorial(21::i64) [overflow:ERROR]<!ERROR>expected an error, got 51090942171709440000
arithmetic/sum.test:18sum((-9223372036854775808, -1)::i64) [overflow:ERROR]<!ERROR>expected an error, got -9223372036854775809
arithmetic/sum.test:19sum((-9223372036854775807, -2)::i64) [overflow:ERROR]<!ERROR>expected an error, got -9223372036854775809
arithmetic/sum.test:20sum((-9223372036854775808, -1, -1, -1)::i64) [overflow:ERROR]<!ERROR>expected an error, got -9223372036854775811

OutOfRangeException: Out of Range Error: input value -inf is out of range for numeric function

6 cases · Extended functions as SQL 6

Not yet reported upstream

Functions: cos (2), sin (2), tan (2)

OutOfRangeException: Out of Range Error: input value -inf is out of range for numeric function [SELECT cos(CAST('-inf' AS FLOAT))]
All 6 cases
CaseTestExpected
arithmetic/cos.test:9cos(-inf::fp32)nan::fp32
arithmetic/cos.test:10cos(-inf::fp64)nan::fp64
arithmetic/sin.test:13sin(-inf::fp32)nan::fp32
arithmetic/sin.test:14sin(-inf::fp64)nan::fp64
arithmetic/tan.test:9tan(-inf::fp32)nan::fp32
arithmetic/tan.test:10tan(-inf::fp64)nan::fp64

OutOfRangeException: Out of Range Error: input value inf is out of range for numeric function

6 cases · Extended functions as SQL 6

Not yet reported upstream

Functions: cos (2), sin (2), tan (2)

OutOfRangeException: Out of Range Error: input value inf is out of range for numeric function [SELECT cos(CAST('inf' AS FLOAT))]
All 6 cases
CaseTestExpected
arithmetic/cos.test:7cos(inf::fp32)nan::fp32
arithmetic/cos.test:8cos(inf::fp64)nan::fp64
arithmetic/sin.test:11sin(inf::fp32)nan::fp32
arithmetic/sin.test:12sin(inf::fp64)nan::fp64
arithmetic/tan.test:7tan(inf::fp32)nan::fp32
arithmetic/tan.test:8tan(inf::fp64)nan::fp64

OutOfRangeException: Out of Range Error: Cannot left-shift negative number -N

4 cases · Functions as SQL 4

Not yet reported upstream

Functions: shift_left (4)

OutOfRangeException: Out of Range Error: Cannot left-shift negative number -3 [SELECT (CAST(-3 AS INTEGER) << CAST(1 AS INTEGER))]
All 4 cases
CaseTestExpected
arithmetic/shift_left.test:9shift_left(-3::i32, 1::i32)-6::i32
arithmetic/shift_left.test:10shift_left(-3::i32, 2::i32)-12::i32
arithmetic/shift_left.test:11shift_left(-3::i64, 1::i32)-6::i64
arithmetic/shift_left.test:12shift_left(-3::i64, 2::i32)-12::i64

OutOfRangeException: Out of Range Error: STDDEV_POP is out of range!

1 case · Extended functions as SQL 1

Not yet reported upstream

Functions: std_dev

OutOfRangeException: Out of Range Error: STDDEV_POP is out of range! [SELECT stddev_pop(col0) FROM (VALUES (CAST('1.0' AS DOUBLE)), (CAST('NaN' AS DOUBLE)), (CAST('3.0' AS DOUBLE))) AS t(col0)]
The case
CaseTestExpected
arithmetic/std_dev.test:17((1.0), (NaN), (3.0)) std_dev(POPULATION::enum, col0::fp64)nan::fp64

OutOfRangeException: Out of Range Error: VARPOP is out of range!

1 case · Extended functions as SQL 1

Not yet reported upstream

Functions: variance

OutOfRangeException: Out of Range Error: VARPOP is out of range! [SELECT var_pop(col0) FROM (VALUES (CAST('NaN' AS DOUBLE)), (CAST('1.0' AS DOUBLE)), (CAST('2.0' AS DOUBLE)), (CAST('3.0' AS DOUBLE))) AS t(col0)]
The case
CaseTestExpected
arithmetic/variance.test:17((NaN), (1.0), (2.0), (3.0)) variance(POPULATION::enum, col0::fp64)nan::fp64

Not tested yet: this repository's tooling

Cases this repository cannot run yet. They are skipped and say nothing about the engine.

The plan builder cannot build these types yet

30 cases · Functions 30 · plan builder

Unsigned integers and some other types are user-defined types in Substrait; building plans with them is not implemented here yet, so these cases say nothing about the engine.

Functions: add (8), multiply (8), subtract (8), divide (6)

plan not built: user-defined type literals (u!...) are not built
All 30 cases
CaseTestExpected
arithmetic_unsigned/add.test:5add(('200')::u!u8, ('50')::u!u8)('250')::u!u8
arithmetic_unsigned/add.test:6add(('50000')::u!u16, ('10000')::u!u16)('60000')::u!u16
arithmetic_unsigned/add.test:7add(('3000000000')::u!u32, ('1000000000')::u!u32)('4000000000')::u!u32
arithmetic_unsigned/add.test:8add(('10000000000000000000')::u!u64, ('1000000000000000000')::u!u64)('11000000000000000000')::u!u64
arithmetic_unsigned/add.test:11add(('200')::u!u8, ('100')::u!u8) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/add.test:12add(('60000')::u!u16, ('10000')::u!u16) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/add.test:13add(('4000000000')::u!u32, ('1000000000')::u!u32) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/add.test:14add(('18446744073709551615')::u!u64, ('1')::u!u64) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/divide.test:5divide(('250')::u!u8, ('5')::u!u8)('50')::u!u8
arithmetic_unsigned/divide.test:6divide(('60000')::u!u16, ('100')::u!u16)('600')::u!u16
arithmetic_unsigned/divide.test:7divide(('4000000000')::u!u32, ('200')::u!u32)('20000000')::u!u32
arithmetic_unsigned/divide.test:8divide(('10000000000000000000')::u!u64, ('5000')::u!u64)('2000000000000000')::u!u64
arithmetic_unsigned/divide.test:11divide(('5')::u!u8, ('0')::u!u8) [on_division_by_zero:NULL]null::u!u8?
arithmetic_unsigned/divide.test:12divide(('5')::u!u8, ('0')::u!u8) [on_division_by_zero:ERROR]<!ERROR>
arithmetic_unsigned/multiply.test:5multiply(('25')::u!u8, ('5')::u!u8)('125')::u!u8
arithmetic_unsigned/multiply.test:6multiply(('200')::u!u16, ('100')::u!u16)('20000')::u!u16
arithmetic_unsigned/multiply.test:7multiply(('300')::u!u32, ('200')::u!u32)('60000')::u!u32
arithmetic_unsigned/multiply.test:8multiply(('80000')::u!u64, ('5000')::u!u64)('400000000')::u!u64
arithmetic_unsigned/multiply.test:11multiply(('200')::u!u8, ('2')::u!u8) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/multiply.test:12multiply(('40000')::u!u16, ('2')::u!u16) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/multiply.test:13multiply(('3000000000')::u!u32, ('2')::u!u32) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/multiply.test:14multiply(('10000000000000000000')::u!u64, ('2')::u!u64) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/subtract.test:5subtract(('250')::u!u8, ('50')::u!u8)('200')::u!u8
arithmetic_unsigned/subtract.test:6subtract(('60000')::u!u16, ('10000')::u!u16)('50000')::u!u16
arithmetic_unsigned/subtract.test:7subtract(('4000000000')::u!u32, ('1000000000')::u!u32)('3000000000')::u!u32
arithmetic_unsigned/subtract.test:8subtract(('11000000000000000000')::u!u64, ('1000000000000000000')::u!u64)('10000000000000000000')::u!u64
arithmetic_unsigned/subtract.test:11subtract(('0')::u!u8, ('1')::u!u8) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/subtract.test:12subtract(('0')::u!u16, ('1')::u!u16) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/subtract.test:13subtract(('0')::u!u32, ('1')::u!u32) [overflow:ERROR]<!ERROR>
arithmetic_unsigned/subtract.test:14subtract(('0')::u!u64, ('1')::u!u64) [overflow:ERROR]<!ERROR>

The plan builder cannot build lambda arguments yet

25 cases · Functions 25 · plan builder

Functions: all_match (8), any_match (8), filter (5), transform (4)

plan not built: lambda arguments are not built
All 25 cases
CaseTestExpected
list/all_match.test:6all_match([1, 2, 3]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>)true::bool?
list/all_match.test:7all_match([5, 6, 7]::list<i32>, (x -> gt(x, 4::i32))::func<i32 -> bool?>)true::bool?
list/all_match.test:10all_match([1, 2, 3]::list<i32>, (x -> gt(x, 2::i32))::func<i32 -> bool?>)false::bool?
list/all_match.test:11all_match([1, 2, 3]::list<i32>, (x -> lt(x, 3::i32))::func<i32 -> bool?>)false::bool?
list/all_match.test:14all_match([]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>)true::bool?
list/all_match.test:17all_match(null::list?<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>)null::bool?
list/all_match.test:23all_match([1, Null, 2]::list<i32?>, (x -> gt(x, 0::i32))::func<i32? -> bool?>)Null::bool?
list/all_match.test:24all_match([1, Null, 0]::list<i32?>, (x -> gt(x, 0::i32))::func<i32? -> bool?>)false::bool?
list/any_match.test:6any_match([1, 2, 3]::list<i32>, (x -> gt(x, 2::i32))::func<i32 -> bool?>)true::bool?
list/any_match.test:7any_match([1, 2, 3]::list<i32>, (x -> lt(x, 2::i32))::func<i32 -> bool?>)true::bool?
list/any_match.test:8any_match([5, 6, 7]::list<i32>, (x -> gt(x, 4::i32))::func<i32 -> bool?>)true::bool?
list/any_match.test:11any_match([1, 2, 3]::list<i32>, (x -> gt(x, 5::i32))::func<i32 -> bool?>)false::bool?
list/any_match.test:14any_match([]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>)false::bool?
list/any_match.test:17any_match(null::list?<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>)null::bool?
list/any_match.test:23any_match([1, Null, 3]::list<i32?>, (x -> gt(x, 2::i32))::func<i32? -> bool?>)true::bool?
list/any_match.test:24any_match([1, Null, 2]::list<i32?>, (x -> gt(x, 5::i32))::func<i32? -> bool?>)Null::bool?
list/filter.test:6filter([1, 2, 3, 4, 5]::list<i32>, (x -> gt(x, 2::i32))::func<i32 -> bool>)[3, 4, 5]::list<i32>
list/filter.test:7filter([1, 2, 3, 4, 5]::list<i32>, (x -> lt(x, 3::i32))::func<i32 -> bool>)[1, 2]::list<i32>
list/filter.test:8filter([]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool>)[]::list<i32>
list/filter.test:11filter([1, null, 3]::list<i32?>, (n -> gt(n, 0::i32))::func<i32 -> bool>)[1, 3]::list<i32?>
list/filter.test:12filter([1, null, 3]::list<i32?>, (e -> is_null(e))::func<i32 -> bool>)[null]::list<i32?>
list/transform.test:6transform([1, 2, 3]::list<i32>, (x -> multiply(x, 2::i32))::func<i32 -> i32>)[2, 4, 6]::list<i32>
list/transform.test:7transform([5, 10, 15]::list<i32>, (x -> add(x, 1::i32))::func<i32 -> i32>)[6, 11, 16]::list<i32>
list/transform.test:8transform([]::list<i32>, (x -> multiply(x, 2::i32))::func<i32 -> i32>)[]::list<i32>
list/transform.test:11transform([1, Null, 3]::list<i32?>, (x -> multiply(x, 2::i32))::func<i32? -> i32?>)[2, Null, 6]::list<i32?>

The plan builder cannot build these types yet

25 cases · Functions 24, Extended functions 1 · plan builder

Unsigned integers and some other types are user-defined types in Substrait; building plans with them is not implemented here yet, so these cases say nothing about the engine.

Functions: sum (8), max (7), min (7), all_match, any_match, is_null

plan not built: type 'u!u8?' is not built (yet)
All 25 cases
CaseTestExpectedMessage, where it differs
arithmetic_unsigned/max.test:5max(('20', '3', '1', '10', '0', '5')::u!u8)('20')::u!u8?
arithmetic_unsigned/max.test:6max(('32768', '32767', '20000', '30000')::u!u16)('32768')::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/max.test:7max(('214748648', '214748647', '21470048', '4000000')::u!u32)('214748648')::u!u32?plan not built: type 'u!u32?' is not built (yet)
arithmetic_unsigned/max.test:8max(('2000000000', '3217908979', '629000000', '100000000', '0', '987654321')::u!u64)('3217908979')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/max.test:11max((Null, Null, Null)::u!u16)Null::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/max.test:12max(()::u!u16)Null::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/max.test:13max(('200', Null, '50', '100', Null, '5')::u!u64)('200')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/min.test:5min(('20', '3', '1', '10', '0', '5')::u!u8)('0')::u!u8?
arithmetic_unsigned/min.test:6min(('32768', '32767', '20000', '30000')::u!u16)('20000')::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/min.test:7min(('214748648', '214748647', '21470048', '4000000')::u!u32)('4000000')::u!u32?plan not built: type 'u!u32?' is not built (yet)
arithmetic_unsigned/min.test:8min(('2000000000', '3217908979', '629000000', '100000000', '0', '987654321')::u!u64)('0')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/min.test:11min((Null, Null, Null)::u!u16)Null::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/min.test:12min(()::u!u16)Null::u!u16?plan not built: type 'u!u16?' is not built (yet)
arithmetic_unsigned/min.test:13min(('200', Null, '50', '100', Null, '5')::u!u64)('5')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:5sum(('0', '1', '2', '20')::u!u8)('23')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:6sum(('100', '200', '50')::u!u16)('350')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:7sum(('2000000', '3217908', '629000', '100000', '0', '987654')::u!u32)('6934562')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:8sum(('1000000000000', '2000000000000', '3000000000000')::u!u64)('6000000000000')::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:11sum(('18446744073709551614', '1', '1', '1', '1', '10000000000')::u!u64) [overflow:ERROR]<!ERROR>plan not built: type 'u!u64' is not built (yet)
arithmetic_unsigned/sum.test:14sum((Null, Null, Null)::u!u16)Null::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:15sum(()::u!u16)Null::u!u64?plan not built: type 'u!u64?' is not built (yet)
arithmetic_unsigned/sum.test:16sum(('200', Null, '50', '0', Null, '100')::u!u32)('350')::u!u64?plan not built: type 'u!u64?' is not built (yet)
list/all_match.test:20all_match([1, 2, 3]::list<i32>, null::func?<i32 -> bool?>)null::bool?plan not built: type 'func?<i32->bool?>' is not built (yet)
list/any_match.test:20any_match([1, 2, 3]::list<i32>, null::func?<i32 -> bool?>)null::bool?plan not built: type 'func?<i32->bool?>' is not built (yet)
comparison/is_null.test:50is_null(null::fixedbinary?<10>)true::boolplan not built: type 'fixedbinary?<10>' is not built (yet)

untranslatable: type '…' has no SQL equivalent here

3 cases · Functions as SQL 2, Extended functions as SQL 1 · SQL translator

Functions: all_match, any_match, is_null

untranslatable: type 'func?<i32->bool?>' has no SQL equivalent here
All 3 cases
CaseTestExpectedMessage, where it differs
list/all_match.test:20all_match([1, 2, 3]::list<i32>, null::func?<i32 -> bool?>)null::bool?
list/any_match.test:20any_match([1, 2, 3]::list<i32>, null::func?<i32 -> bool?>)null::bool?
comparison/is_null.test:50is_null(null::fixedbinary?<10>)true::booluntranslatable: type 'fixedbinary?<10>' has no SQL equivalent here

untranslatable: … result of N characters is too large to materialise

1 case · Extended functions as SQL 1 · SQL translator

Functions: repeat

untranslatable: repeat result of 9223372036854775807 characters is too large to materialise
The case
CaseTestExpected
string/repeat.test:5repeat(''::str, 9223372036854775807::i64)''::str

Option modes the engine does not claim

Cases for an option mode (overflow, rounding, ...) the engine does not implement. They are skipped: engines need to implement only one mode.

Show the 158 cases

unsupported option overflow:SATURATE (engine implements overflow:ERROR)

32 cases · Extended functions 20, Functions 12

Functions: subtract (9), multiply (8), abs (4), add (4), negate (4), divide (3)

unsupported option overflow:SATURATE (engine implements overflow:ERROR)
All 32 cases
CaseTestExpected
arithmetic/abs.test:17abs(-128::i8) [overflow:SATURATE]127::i8
arithmetic/add.test:15add(120::i8, 10::i8) [overflow:SATURATE]127::i8
arithmetic/add.test:16add(-120::i8, -10::i8) [overflow:SATURATE]-128::i8
arithmetic/divide.test:15divide(-128::i8, -1::i8) [overflow:SATURATE]127::i8
arithmetic/multiply.test:15multiply(13::i8, 10::i8) [overflow:SATURATE]127::i8
arithmetic/multiply.test:16multiply(-13::i8, -10::i8) [overflow:SATURATE]-128::i8
arithmetic/negate.test:18negate(-128::i8) [overflow:SATURATE]127::i8
arithmetic/subtract.test:15subtract(-120::i8, 10::i8) [overflow:SATURATE]-128::i8
arithmetic/subtract.test:16subtract(120::i8, -10::i8) [overflow:SATURATE]127::i8
arithmetic_unsigned/add.test:15add(('200')::u!u8, ('100')::u!u8) [overflow:SATURATE]('255')::u!u8
arithmetic_unsigned/multiply.test:15multiply(('200')::u!u8, ('2')::u!u8) [overflow:SATURATE]('255')::u!u8
arithmetic_unsigned/subtract.test:15subtract(('0')::u!u8, ('1')::u!u8) [overflow:SATURATE]('0')::u!u8
arithmetic/abs.test:16abs(-32768::i16) [overflow:SATURATE]32767::i16
arithmetic/abs.test:19abs(-2147483648::i32) [overflow:SATURATE]2147483647::i32
arithmetic/abs.test:22abs(-9223372036854775808::i64) [overflow:SATURATE]9223372036854775807::i64
arithmetic/add.test:19add(-30000::i16, -10000::i16) [overflow:SATURATE]-32768::i16
arithmetic/divide.test:6divide(-32768::i16, -1::i16) [overflow:SATURATE]32767::i16
arithmetic/divide.test:8divide(-2147483648::i32, -1::i32) [overflow:SATURATE]2147483647::i32
arithmetic/multiply.test:18multiply(-128::i8, -1::i8) [overflow:SATURATE]127::i8
arithmetic/multiply.test:20multiply(-32768::i16, -1::i16) [overflow:SATURATE]32767::i16
arithmetic/multiply.test:22multiply(-2147483648::i32, -1::i32) [overflow:SATURATE]2147483647::i32
arithmetic/multiply.test:24multiply(-9223372036854775808::i64, -1::i64) [overflow:SATURATE]9223372036854775807::i64
arithmetic/multiply.test:25multiply(-13::i8, 10::i8) [overflow:SATURATE]-128::i8
arithmetic/negate.test:12negate(-32768::i16) [overflow:SATURATE]32767::i16
arithmetic/negate.test:15negate(-2147483648::i32) [overflow:SATURATE]2147483647::i32
arithmetic/negate.test:18negate(-9223372036854775808::i64) [overflow:SATURATE]9223372036854775807::i64
arithmetic/subtract.test:20subtract(127::i8, -1::i8) [overflow:SATURATE]127::i8
arithmetic/subtract.test:21subtract(-128::i8, 1::i8) [overflow:SATURATE]-128::i8
arithmetic/subtract.test:22subtract(32767::i16, -1::i16) [overflow:SATURATE]32767::i16
arithmetic/subtract.test:23subtract(-32768::i16, 1::i16) [overflow:SATURATE]-32768::i16
arithmetic/subtract.test:24subtract(2147483647::i32, -1::i32) [overflow:SATURATE]2147483647::i32
arithmetic/subtract.test:25subtract(-2147483648::i32, 1::i32) [overflow:SATURATE]-2147483648::i32

option mode not implemented (case_sensitivity:CASE_INSENSITIVE): got False, expected True

15 cases · Extended functions 9, Functions 6

Functions: ends_with (7), starts_with (5), contains (3)

option mode not implemented (case_sensitivity:CASE_INSENSITIVE): got False, expected True
All 15 cases
CaseTestExpected
string/contains.test:7contains('abcdefg'::str, 'CdE'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/contains.test:15contains('😊a😊b😊😊'::str, 'A😊B'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:10ends_with('abcd'::str, 'CD'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:16ends_with('😊a😊b😊😊'::str, 'B😊😊'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/starts_with.test:10starts_with('abcd'::str, 'AB'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/starts_with.test:16starts_with('😊a😊b😊😊'::str, '😊A'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/contains.test:22contains('abc'::str, 'ABC'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:22ends_with('ABCD'::str, 'cd'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:23ends_with('MixedCase'::str, 'CASE'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:24ends_with('test123'::str, 'TEST123'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:25ends_with('Café'::str, 'FÉ'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/ends_with.test:26ends_with('HELLO😊'::str, 'hello😊'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/starts_with.test:26starts_with('ABC'::str, 'abc'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/starts_with.test:27starts_with('aBcD'::str, 'AbCd'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool
string/starts_with.test:31starts_with('ÄÖÜ'::str, 'ä'::str) [case_sensitivity:CASE_INSENSITIVE]true::bool

unsupported option overflow:SILENT (engine implements overflow:ERROR)

14 cases · Functions 8, Extended functions 6

Functions: abs (4), negate (4), add (2), multiply (2), subtract (2)

unsupported option overflow:SILENT (engine implements overflow:ERROR)
All 14 cases
CaseTestExpected
arithmetic/abs.test:18abs(-128::i8) [overflow:SILENT]<!UNDEFINED>
arithmetic/add.test:17add(120::i8, 10::i8) [overflow:SILENT]<!UNDEFINED>
arithmetic/multiply.test:17multiply(13::i8, 10::i8) [overflow:SILENT]<!UNDEFINED>
arithmetic/negate.test:19negate(-128::i8) [overflow:SILENT]<!UNDEFINED>
arithmetic/subtract.test:17subtract(-120::i8, 10::i8) [overflow:SILENT]<!UNDEFINED>
arithmetic_unsigned/add.test:16add(('200')::u!u8, ('100')::u!u8) [overflow:SILENT]<!UNDEFINED>
arithmetic_unsigned/multiply.test:16multiply(('200')::u!u8, ('2')::u!u8) [overflow:SILENT]<!UNDEFINED>
arithmetic_unsigned/subtract.test:16subtract(('0')::u!u8, ('1')::u!u8) [overflow:SILENT]<!UNDEFINED>
arithmetic/abs.test:17abs(-32768::i16) [overflow:SILENT]<!UNDEFINED>
arithmetic/abs.test:20abs(-2147483648::i32) [overflow:SILENT]<!UNDEFINED>
arithmetic/abs.test:23abs(-9223372036854775808::i64) [overflow:SILENT]<!UNDEFINED>
arithmetic/negate.test:13negate(-32768::i16) [overflow:SILENT]<!UNDEFINED>
arithmetic/negate.test:16negate(-2147483648::i32) [overflow:SILENT]<!UNDEFINED>
arithmetic/negate.test:19negate(-9223372036854775808::i64) [overflow:SILENT]<!UNDEFINED>

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ATANH is undefined outside [-N,N]

8 cases · Extended functions 8

Functions: atanh (8)

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ATANH is undefined outside [-1,1]
All 8 cases
CaseTestExpected
arithmetic/atanh.test:7atanh(1.5::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/atanh.test:8atanh(-1.5::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/atanh.test:9atanh(2.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/atanh.test:10atanh(-2.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/atanh.test:13atanh(inf::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/atanh.test:14atanh(-inf::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/atanh.test:15atanh(inf::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/atanh.test:16atanh(-inf::fp32) [on_domain_error:NAN]nan::fp32

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: cannot take logarithm of a negative number

8 cases · Extended functions 5, Functions 3

Functions: log10 (4), ln (3), log2

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: cannot take logarithm of a negative number
All 8 cases
CaseTestExpected
logarithmic/ln.test:11ln(-inf::fp64) [on_domain_error:NAN]nan::fp64
logarithmic/log10.test:11log10(-inf::fp64) [on_domain_error:NAN]nan::fp64
logarithmic/log2.test:12log2(-inf::fp64) [on_domain_error:NAN]nan::fp64
logarithmic/ln.test:18ln(-1.0::fp64) [on_domain_error:NAN]nan::fp64
logarithmic/ln.test:30ln(-1.0::fp32) [on_domain_error:NAN]nan::fp32
logarithmic/log10.test:20log10(-1.0::fp64) [on_domain_error:NAN]nan::fp64
logarithmic/log10.test:31log10(-1.0::fp32) [on_domain_error:NAN]nan::fp32
logarithmic/log10.test:34log10(-inf::fp32) [on_domain_error:NAN]nan::fp32

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: cannot take square root of a negative number

8 cases · Extended functions 6, Functions 2

Functions: sqrt (8)

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: cannot take square root of a negative number
All 8 cases
CaseTestExpected
arithmetic/sqrt.test:7sqrt(-1::i64) [on_domain_error:NAN]nan::fp64
arithmetic/sqrt.test:8sqrt(-9223372036854775800::i64) [on_domain_error:NAN]nan::fp64
arithmetic/sqrt.test:8sqrt(-1.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/sqrt.test:9sqrt(-1.0::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/sqrt.test:10sqrt(-100.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/sqrt.test:11sqrt(-2.5::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/sqrt.test:14sqrt(-inf::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/sqrt.test:15sqrt(-inf::fp64) [on_domain_error:NAN]nan::fp64

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ASIN is undefined outside [-N,N]

7 cases · Extended functions 7

Functions: asin (7)

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ASIN is undefined outside [-1,1]
All 7 cases
CaseTestExpected
arithmetic/asin.test:5asin(1.1::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:6asin(1.1::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/asin.test:7asin(-1.1::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:8asin(-1.1::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/asin.test:9asin(2.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:10asin(2.0::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/asin.test:11asin(-2.0::fp64) [on_domain_error:NAN]nan::fp64

option mode not implemented (on_log_zero:MINUS_INFINITY): OutOfRangeException: Out of Range Error: cannot take logarithm of zero

7 cases · Extended functions 4, Functions 3

Functions: ln (4), log10 (2), log2

option mode not implemented (on_log_zero:MINUS_INFINITY): OutOfRangeException: Out of Range Error: cannot take logarithm of zero
All 7 cases
CaseTestExpected
logarithmic/ln.test:18ln(0.0::fp64) [on_log_zero:MINUS_INFINITY]-inf::fp64
logarithmic/log10.test:18log10(0.0::fp64) [on_log_zero:MINUS_INFINITY]-inf::fp64
logarithmic/log2.test:19log2(0.0::fp64) [on_log_zero:MINUS_INFINITY]-inf::fp64
logarithmic/ln.test:29ln(0.0::fp32) [on_log_zero:MINUS_INFINITY]-inf::fp32
logarithmic/ln.test:33ln(-0.0::fp64) [on_log_zero:MINUS_INFINITY]-inf::fp64
logarithmic/ln.test:34ln(-0.0::fp32) [on_log_zero:MINUS_INFINITY]-inf::fp32
logarithmic/log10.test:30log10(0.0::fp32) [on_log_zero:MINUS_INFINITY]-inf::fp32

option mode not implemented (direction:ASC_NULLS_LAST): CatalogException: Catalog Error: Scalar Function with name … does not exist!

6 cases · Functions 6

Functions: sort (6)

option mode not implemented (direction:ASC_NULLS_LAST): CatalogException: Catalog Error: Scalar Function with name sort does not exist!
All 6 cases
CaseTestExpected
list/sort.test:5sort([3, 1, 2]::list<i32>) [direction:ASC_NULLS_LAST][1, 2, 3]::list<i32>
list/sort.test:6sort([3, Null, 1]::list<i32?>) [direction:ASC_NULLS_LAST][1, 3, Null]::list<i32?>
list/sort.test:7sort([Null, 2, Null, 1]::list<i32?>) [direction:ASC_NULLS_LAST][1, 2, Null, Null]::list<i32?>
list/sort.test:21sort([]::list<i32>) [direction:ASC_NULLS_LAST][]::list<i32>
list/sort.test:24sort([42]::list<i32>) [direction:ASC_NULLS_LAST][42]::list<i32>
list/sort.test:27sort(['c', 'a', 'b']::list<string>) [direction:ASC_NULLS_LAST]['a', 'b', 'c']::list<string>

option mode not implemented (null_handling:ACCEPT_NULLS): got '…', expected None

5 cases · Functions 3, Extended functions 2

Functions: concat (5)

option mode not implemented (null_handling:ACCEPT_NULLS): got 'abcd', expected None
All 5 cases
CaseTestExpectedMessage, where it differs
string/concat.test:8concat('abcd'::str, null::str?) [null_handling:ACCEPT_NULLS]null::str?
string/concat.test:10concat(null::str?, 'abcd'::str) [null_handling:ACCEPT_NULLS]null::str?
string/concat.test:12concat(null::str?, null::str?) [null_handling:ACCEPT_NULLS]null::str?option mode not implemented (null_handling:ACCEPT_NULLS): got '', expected None
string/concat.test:7concat(''::str, null::str?) [null_handling:ACCEPT_NULLS]null::str?option mode not implemented (null_handling:ACCEPT_NULLS): got '', expected None
string/concat.test:9concat('a'::str, null::str?, 'b'::str) [null_handling:ACCEPT_NULLS]null::str?option mode not implemented (null_handling:ACCEPT_NULLS): got 'ab', expected None

option mode not implemented (on_domain_error:ERROR): expected an error, got [nan]

5 cases · Extended functions 4, Functions 1

Functions: acosh (5)

option mode not implemented (on_domain_error:ERROR): expected an error, got [nan]
All 5 cases
CaseTestExpected
arithmetic/acosh.test:10acosh(0.01::fp32) [on_domain_error:ERROR]<!ERROR>
arithmetic/acosh.test:17acosh(-1.0::fp64) [on_domain_error:ERROR]<!ERROR>
arithmetic/acosh.test:18acosh(-1.0::fp32) [on_domain_error:ERROR]<!ERROR>
arithmetic/acosh.test:19acosh(0.99::fp64) [on_domain_error:ERROR]<!ERROR>
arithmetic/acosh.test:20acosh(0.99::fp32) [on_domain_error:ERROR]<!ERROR>

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ACOS is undefined outside [-N,N]

4 cases · Extended functions 4

Functions: acos (4)

option mode not implemented (on_domain_error:NAN): InvalidInputException: Invalid Input Error: ACOS is undefined outside [-1,1]
All 4 cases
CaseTestExpected
arithmetic/acos.test:5acos(1.1::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/acos.test:6acos(-1.1::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/acos.test:7acos(2.0::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/acos.test:8acos(-2.0::fp32) [on_domain_error:NAN]nan::fp32

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: input value inf is out of range for numeric function

4 cases · Extended functions 4

Functions: acos (2), asin (2)

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: input value inf is out of range for numeric function
All 4 cases
CaseTestExpected
arithmetic/acos.test:11acos(inf::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/acos.test:13acos(inf::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:14asin(inf::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:15asin(inf::fp64) [on_domain_error:NAN]nan::fp64

option mode not implemented (direction:DESC_NULLS_LAST): CatalogException: Catalog Error: Scalar Function with name … does not exist!

3 cases · Functions 3

Functions: sort (3)

option mode not implemented (direction:DESC_NULLS_LAST): CatalogException: Catalog Error: Scalar Function with name sort does not exist!
All 3 cases
CaseTestExpected
list/sort.test:14sort([3, 1, 2]::list<i32>) [direction:DESC_NULLS_LAST][3, 2, 1]::list<i32>
list/sort.test:15sort([3, Null, 1]::list<i32?>) [direction:DESC_NULLS_LAST][3, 1, Null]::list<i32?>
list/sort.test:28sort(['c', 'a', 'b']::list<string>) [direction:DESC_NULLS_LAST]['c', 'b', 'a']::list<string>

option mode not implemented (negative_start:LEFT_OF_BEGINNING): got '…', expected '…'

3 cases · Functions 2, Extended functions 1

Functions: substring (3)

option mode not implemented (negative_start:LEFT_OF_BEGINNING): got 'g', expected ''
All 3 cases
CaseTestExpectedMessage, where it differs
string/substring.test:16substring('abcdefg'::str, -1::i32, 2::i32) [negative_start:LEFT_OF_BEGINNING]''::str
string/substring.test:17substring('abcdefg'::str, -1::i32, 3::i32) [negative_start:LEFT_OF_BEGINNING]'a'::stroption mode not implemented (negative_start:LEFT_OF_BEGINNING): got 'g', expected 'a'
string/substring.test:18substring('abcdefg'::str, -10::i32, 5::i32) [negative_start:LEFT_OF_BEGINNING]''::stroption mode not implemented (negative_start:LEFT_OF_BEGINNING): got 'ab', expected ''

option mode not implemented (on_division_by_zero:ERROR): expected an error, got [None]

3 cases · Extended functions 2, Functions 1

Functions: divide (3)

option mode not implemented (on_division_by_zero:ERROR): expected an error, got [None]
All 3 cases
CaseTestExpected
arithmetic/divide.test:11divide(5::i8, 0::i8) [on_division_by_zero:ERROR]<!ERROR>
arithmetic/divide.test:30divide(100::i32, 0::i32) [on_division_by_zero:ERROR]<!ERROR>
arithmetic/divide.test:31divide(-50::i16, 0::i16) [on_division_by_zero:ERROR]<!ERROR>

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: input value -inf is out of range for numeric function

3 cases · Extended functions 3

Functions: asin (2), acos

option mode not implemented (on_domain_error:NAN): OutOfRangeException: Out of Range Error: input value -inf is out of range for numeric function
All 3 cases
CaseTestExpected
arithmetic/acos.test:12acos(-inf::fp64) [on_domain_error:NAN]nan::fp64
arithmetic/asin.test:16asin(-inf::fp32) [on_domain_error:NAN]nan::fp32
arithmetic/asin.test:17asin(-inf::fp64) [on_domain_error:NAN]nan::fp64

option mode not implemented (on_domain_error:NULL): OutOfRangeException: Out of Range Error: cannot take logarithm of a negative number

3 cases · Functions 3

Functions: ln, log10, log2

option mode not implemented (on_domain_error:NULL): OutOfRangeException: Out of Range Error: cannot take logarithm of a negative number
All 3 cases
CaseTestExpected
logarithmic/ln.test:12ln(-inf::fp64) [on_domain_error:NULL]null::fp64?
logarithmic/log10.test:12log10(-inf::fp64) [on_domain_error:NULL]null::fp64?
logarithmic/log2.test:13log2(-inf::fp64) [on_domain_error:NULL]null::fp64?

option mode not implemented (on_log_zero:NAN): OutOfRangeException: Out of Range Error: cannot take logarithm of zero

3 cases · Functions 3

Functions: ln, log10, log2

option mode not implemented (on_log_zero:NAN): OutOfRangeException: Out of Range Error: cannot take logarithm of zero
All 3 cases
CaseTestExpected
logarithmic/ln.test:17ln(0.0::fp64) [on_log_zero:NAN]nan::fp64
logarithmic/log10.test:17log10(0.0::fp64) [on_log_zero:NAN]nan::fp64
logarithmic/log2.test:18log2(0.0::fp64) [on_log_zero:NAN]nan::fp64

option mode not implemented (complex_number_result:ERROR): expected an error, got [nan]

2 cases · Functions 2

Functions: power, power_decimal

option mode not implemented (complex_number_result:ERROR): expected an error, got [nan]
All 2 cases
CaseTestExpected
arithmetic_decimal/power.test:19power(-1::dec<1, 0>, 0.5::dec<38, 1>) [complex_number_result:ERROR]<!ERROR>
arithmetic_decimal/power_decimal.test:19power(-1::dec<1, 0>, 0.5::dec<38, 1>) [complex_number_result:ERROR]<!ERROR>

option mode not implemented (direction:ASC_NULLS_FIRST): CatalogException: Catalog Error: Scalar Function with name … does not exist!

2 cases · Functions 2

Functions: sort (2)

option mode not implemented (direction:ASC_NULLS_FIRST): CatalogException: Catalog Error: Scalar Function with name sort does not exist!
All 2 cases
CaseTestExpected
list/sort.test:10sort([3, Null, 1]::list<i32?>) [direction:ASC_NULLS_FIRST][Null, 1, 3]::list<i32?>
list/sort.test:11sort([Null, 2, Null, 1]::list<i32?>) [direction:ASC_NULLS_FIRST][Null, Null, 1, 2]::list<i32?>

option mode not implemented (rounding:TIE_TO_EVEN): engine crashed on this plan: EngineCrashed: DuckDB crashed (exit code -N) while running run_plan

2 cases · Functions 2

Functions: std_dev, variance

option mode not implemented (rounding:TIE_TO_EVEN): engine crashed on this plan: EngineCrashed: DuckDB crashed (exit code -11) while running run_plan
All 2 cases
CaseTestExpected
arithmetic/std_dev.test:44((1.1), (2.2), (3.3), (4.4), (5.5)) std_dev(SAMPLE::enum, col0::fp32) [rounding:TIE_TO_EVEN]1.7392527::fp32?
arithmetic/variance.test:44((1.1), (2.2), (3.3), (4.4), (5.5)) variance(SAMPLE::enum, col0::fp32) [rounding:TIE_TO_EVEN]3.025::fp32?

option mode not implemented (rounding:TRUNCATE): engine crashed on this plan: EngineCrashed: DuckDB crashed (exit code -N) while running run_plan

2 cases · Functions 2

Functions: std_dev, variance

option mode not implemented (rounding:TRUNCATE): engine crashed on this plan: EngineCrashed: DuckDB crashed (exit code -11) while running run_plan
All 2 cases
CaseTestExpected
arithmetic/std_dev.test:45((1.1), (2.2), (3.3), (4.4), (5.5)) std_dev(SAMPLE::enum, col0::fp64) [rounding:TRUNCATE]1.7392527130926085::fp64?
arithmetic/variance.test:45((1.1), (2.2), (3.3), (4.4), (5.5)) variance(SAMPLE::enum, col0::fp64) [rounding:TRUNCATE]3.025::fp64?

option mode not implemented (direction:DESC_NULLS_FIRST): CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: sort

option mode not implemented (direction:DESC_NULLS_FIRST): CatalogException: Catalog Error: Scalar Function with name sort does not exist!
The case
CaseTestExpected
list/sort.test:18sort([3, Null, 1]::list<i32?>) [direction:DESC_NULLS_FIRST][Null, 3, 1]::list<i32?>

option mode not implemented (on_domain_error:ERROR): expected a runtime error, but the consumer rejected the plan: CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_domain_error:ERROR): expected a runtime error, but the consumer rejected the plan: CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:11logb(-inf::fp64, 10::fp64) [on_domain_error:ERROR]<!ERROR>

option mode not implemented (on_domain_error:ERROR): expected an error, got [None]

1 case · Functions 1

Functions: modulus

option mode not implemented (on_domain_error:ERROR): expected an error, got [None]
The case
CaseTestExpected
arithmetic/modulus.test:16modulus(5::i8, 0::i8) [on_domain_error:ERROR]<!ERROR>

option mode not implemented (on_domain_error:NAN): CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_domain_error:NAN): CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:12logb(-inf::fp64, 10::fp64) [on_domain_error:NAN]nan::fp64

option mode not implemented (on_domain_error:NULL): CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_domain_error:NULL): CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:13logb(-inf::fp64, 10::fp64) [on_domain_error:NULL]null::fp64?

option mode not implemented (on_log_zero:ERROR): expected a runtime error, but the consumer rejected the plan: CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_log_zero:ERROR): expected a runtime error, but the consumer rejected the plan: CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:16logb(0.0::fp64, 2.0::fp64) [on_log_zero:ERROR]<!ERROR>

option mode not implemented (on_log_zero:MINUS_INFINITY): CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_log_zero:MINUS_INFINITY): CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:18logb(0.0::fp64, 2.0::fp64) [on_log_zero:MINUS_INFINITY]-inf::fp64

option mode not implemented (on_log_zero:NAN): CatalogException: Catalog Error: Scalar Function with name … does not exist!

1 case · Functions 1

Functions: logb

option mode not implemented (on_log_zero:NAN): CatalogException: Catalog Error: Scalar Function with name logb does not exist!
The case
CaseTestExpected
logarithmic/logb.test:17logb(0.0::fp64, 2.0::fp64) [on_log_zero:NAN]nan::fp64

unsupported option division_type:FLOOR (engine implements division_type:TRUNCATE)

1 case · Functions 1

Functions: modulus

unsupported option division_type:FLOOR (engine implements division_type:TRUNCATE)
The case
CaseTestExpected
arithmetic/modulus.test:20modulus(8::i8, -3::i8) [division_type:FLOOR]-1::i8

Detail

Functions

RunUpstream casesExtended cases
As Substrait plans69.5% (808/1163)88.0% (1928/2192)
As the engine's own SQL93.9% (1189/1266)97.7% (2151/2202)
Consumer gap (plans − SQL)−24.4 pts−9.7 pts

Upstream cases are the Substrait project's own function tests and are scored; extended cases are converted from the legacy suite and shown for detail. Consumer gap = plans − SQL: what the engine can do in SQL but not through its Substrait consumer.

Queries

SuitePassedPass rate
TPC-H (scored)12/2254.5%
TPC-H, 0.81 encoding3/2213.6%

Only the current plan encoding is scored; other encodings show whether plans from older producers still run.

Functions by extension

Upstream cases by extension. A low plan rate next to a high SQL rate points at the consumer.

ExtensionAs plansAs SQL
aggregate_approx100.0%100.0%
aggregate_generic100.0%100.0%
arithmetic65.9%98.4%
arithmetic_decimal57.1%66.7%
arithmetic_unsignedall skipped98.0%
boolean68.5%100.0%
comparison93.4%100.0%
datetime82.9%100.0%
list0.0%100.0%
logarithmic82.6%100.0%
rounding100.0%100.0%
rounding_decimal100.0%100.0%
string57.9%90.9%
window0.0%100.0%

Other results (not scored)

SuitePass ratePassed / executedSkipped
functions-legacy87.7%3237/36921345

Engine crashes during plan runs (each fails one case): functions-substrait-0.107: 62; functions-substrait-0.107-extended: 19.

Reports

Every case's result is in the reports of its run (GitHub keeps them for a limited time). This page's data: duckdb.json.