2023-12-05 10:50:30 +00:00
|
|
|
-- Tags: no-fasttest
|
|
|
|
|
|
|
|
SET allow_suspicious_low_cardinality_types = 1;
|
|
|
|
|
|
|
|
SELECT '-- negative tests';
|
2024-01-05 21:37:30 +00:00
|
|
|
SELECT sqidEncode(); -- { serverError NUMBER_OF_ARGUMENTS_DOESNT_MATCH }
|
|
|
|
SELECT sqidDecode(); -- { serverError NUMBER_OF_ARGUMENTS_DOESNT_MATCH }
|
|
|
|
SELECT sqidEncode('1'); -- { serverError ILLEGAL_TYPE_OF_ARGUMENT }
|
|
|
|
SELECT sqidDecode(1); -- { serverError ILLEGAL_TYPE_OF_ARGUMENT }
|
2023-12-05 10:50:30 +00:00
|
|
|
|
|
|
|
SELECT '-- const UInt*';
|
2024-01-05 21:37:30 +00:00
|
|
|
SELECT sqidEncode(1) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(1, 2) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(1, 2, 3) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(1::UInt8, 2::UInt16, 3::UInt32, 4::UInt64) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(toNullable(1), toLowCardinality(2)) AS sqid;
|
2023-12-05 10:50:30 +00:00
|
|
|
|
|
|
|
SELECT '-- non-const UInt*';
|
2024-01-05 21:37:30 +00:00
|
|
|
SELECT sqidEncode(materialize(1)) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(materialize(1), materialize(2)) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(materialize(1), materialize(2), materialize(3)) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(materialize(1::UInt8), materialize(2::UInt16), materialize(3::UInt32), materialize(4::UInt64)) AS sqid, sqidDecode(sqid);
|
|
|
|
SELECT sqidEncode(toNullable(materialize(1)), toLowCardinality(materialize(2)));
|
2024-01-05 13:33:40 +00:00
|
|
|
|
2024-01-07 08:01:01 +00:00
|
|
|
SELECT '-- invalid sqid';
|
|
|
|
SELECT sqidDecode('invalid sqid');
|
|
|
|
|
2024-09-11 10:08:12 +00:00
|
|
|
SELECT '-- bug 69450';
|
|
|
|
DROP TABLE IF EXISTS tab;
|
|
|
|
CREATE TABLE tab (id String) ENGINE = MergeTree ORDER BY id;
|
|
|
|
INSERT INTO tab SELECT * FROM generateRandom() LIMIT 1000000;
|
|
|
|
SELECT sqidDecode(id) FROM tab FORMAT Null;
|
|
|
|
DROP TABLE tab;
|
|
|
|
|
2024-01-05 13:33:40 +00:00
|
|
|
SELECT '-- alias';
|
|
|
|
SELECT sqid(1, 2);
|