SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
(VALUES (10::bigint), (1000::bigint), (1000000::bigint),
(1000000000::bigint), (1000000000000::bigint),
(1000000000000000::bigint)) x(size);
-stdin-:: Error: Type annotation
-stdin-::1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
-stdin-::1:1: Error: Duplicated member: pg_size_pretty
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
(VALUES (10::numeric), (1000::numeric), (1000000::numeric),
(1000000000::numeric), (1000000000000::numeric),
(1000000000000000::numeric),
(10.5::numeric), (1000.5::numeric), (1000000.5::numeric),
(1000000000.5::numeric), (1000000000000.5::numeric),
(1000000000000000.5::numeric)) x(size);
-stdin-:: Error: Type annotation
-stdin-::1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
-stdin-::1:1: Error: Duplicated member: pg_size_pretty
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
-- test where units change up
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
(VALUES (10239::bigint), (10240::bigint),
(10485247::bigint), (10485248::bigint),
(10736893951::bigint), (10736893952::bigint),
(10994579406847::bigint), (10994579406848::bigint),
(11258449312612351::bigint), (11258449312612352::bigint)) x(size);
-stdin-:: Error: Type annotation
-stdin-::1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
-- test where units change up
^
-stdin-::1:1: Error: Duplicated member: pg_size_pretty
-- test where units change up
^
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
(VALUES (10239::numeric), (10240::numeric),
(10485247::numeric), (10485248::numeric),
(10736893951::numeric), (10736893952::numeric),
(10994579406847::numeric), (10994579406848::numeric),
(11258449312612351::numeric), (11258449312612352::numeric)) x(size);
-stdin-:: Error: Type annotation
-stdin-::1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
-stdin-::1:1: Error: Duplicated member: pg_size_pretty
SELECT size, pg_size_pretty(size), pg_size_pretty(-1 * size) FROM
^
-- pg_size_bytes() tests
SELECT size, pg_size_bytes(size) FROM
(VALUES ('1'), ('123bytes'), ('1kB'), ('1MB'), (' 1 GB'), ('1.5 GB '),
('1TB'), ('3000 TB'), ('1e6 MB')) x(size);
-- case-insensitive units are supported
SELECT size, pg_size_bytes(size) FROM
(VALUES ('1'), ('123bYteS'), ('1kb'), ('1mb'), (' 1 Gb'), ('1.5 gB '),
('1tb'), ('3000 tb'), ('1e6 mb')) x(size);
-- negative numbers are supported
SELECT size, pg_size_bytes(size) FROM
(VALUES ('-1'), ('-123bytes'), ('-1kb'), ('-1mb'), (' -1 Gb'), ('-1.5 gB '),
('-1tb'), ('-3000 TB'), ('-10e-1 MB')) x(size);
-- different cases with allowed points
SELECT size, pg_size_bytes(size) FROM
(VALUES ('-1.'), ('-1.kb'), ('-1. kb'), ('-0. gb'),
('-.1'), ('-.1kb'), ('-.1 kb'), ('-.0 gb')) x(size);
-- invalid inputs
SELECT pg_size_bytes('1 AB');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
-- invalid inputs
^
-stdin-::1:1: Fatal: ERROR: invalid size: "1 AB"
DETAIL: Invalid size unit: "AB".
HINT: Valid units are "bytes", "kB", "MB", "GB", and "TB".
-- invalid inputs
^
SELECT pg_size_bytes('1 AB A');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('1 AB A');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "1 AB A"
DETAIL: Invalid size unit: "AB A".
HINT: Valid units are "bytes", "kB", "MB", "GB", and "TB".
SELECT pg_size_bytes('1 AB A');
^
SELECT pg_size_bytes('1 AB A ');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('1 AB A ');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "1 AB A "
DETAIL: Invalid size unit: "AB A".
HINT: Valid units are "bytes", "kB", "MB", "GB", and "TB".
SELECT pg_size_bytes('1 AB A ');
^
SELECT pg_size_bytes('9223372036854775807.9');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('9223372036854775807.9');
^
-stdin-::1:1: Fatal: ERROR: bigint out of range
SELECT pg_size_bytes('9223372036854775807.9');
^
SELECT pg_size_bytes('1e100');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('1e100');
^
-stdin-::1:1: Fatal: ERROR: bigint out of range
SELECT pg_size_bytes('1e100');
^
SELECT pg_size_bytes('1e1000000000000000000');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('1e1000000000000000000');
^
-stdin-::1:1: Fatal: ERROR: value overflows numeric format
SELECT pg_size_bytes('1e1000000000000000000');
^
SELECT pg_size_bytes('1 byte'); -- the singular "byte" is not supported
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('1 byte'); -- the singular "byte" is not supported
^
-stdin-::1:1: Fatal: ERROR: invalid size: "1 byte"
DETAIL: Invalid size unit: "byte".
HINT: Valid units are "bytes", "kB", "MB", "GB", and "TB".
SELECT pg_size_bytes('1 byte'); -- the singular "byte" is not supported
^
SELECT pg_size_bytes('');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('');
^
-stdin-::1:1: Fatal: ERROR: invalid size: ""
SELECT pg_size_bytes('');
^
SELECT pg_size_bytes('kb');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('kb');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "kb"
SELECT pg_size_bytes('kb');
^
SELECT pg_size_bytes('..');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('..');
^
-stdin-::1:1: Fatal: ERROR: invalid size: ".."
SELECT pg_size_bytes('..');
^
SELECT pg_size_bytes('-.');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('-.');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "-."
SELECT pg_size_bytes('-.');
^
SELECT pg_size_bytes('-.kb');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('-.kb');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "-.kb"
SELECT pg_size_bytes('-.kb');
^
SELECT pg_size_bytes('-. kb');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('-. kb');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "-. kb"
SELECT pg_size_bytes('-. kb');
^
SELECT pg_size_bytes('.+912');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('.+912');
^
-stdin-::1:1: Fatal: ERROR: invalid size: ".+912"
SELECT pg_size_bytes('.+912');
^
SELECT pg_size_bytes('+912+ kB');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('+912+ kB');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "+912+ kB"
DETAIL: Invalid size unit: "+ kB".
HINT: Valid units are "bytes", "kB", "MB", "GB", and "TB".
SELECT pg_size_bytes('+912+ kB');
^
SELECT pg_size_bytes('++123 kB');
-stdin-:: Fatal: Execution
-stdin-::1:1: Fatal: Execution of node: Result
SELECT pg_size_bytes('++123 kB');
^
-stdin-::1:1: Fatal: ERROR: invalid size: "++123 kB"
SELECT pg_size_bytes('++123 kB');
^