mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-09 08:10:09 +08:00
d92b1cdbab
This reverts commit 9f984ba6d2
.
It was making the buildfarm unhappy, apparently setting client_min_messages
in a regression test produces different output if log_statement='all'.
Another issue is that I now suspect the bit sortsupport function was in
fact not correct to call byteacmp(). Revert to investigate both of those
issues.
212 lines
4.9 KiB
Plaintext
212 lines
4.9 KiB
Plaintext
-- timestamptz check
|
|
CREATE TABLE timestamptztmp (a timestamptz);
|
|
\copy timestamptztmp from 'data/timestamptz.data'
|
|
SET enable_seqscan=on;
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+3';
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+3';
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+3';
|
|
count
|
|
-------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+3';
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+3';
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+2';
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+2';
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+2';
|
|
count
|
|
-------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+2';
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+2';
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+4';
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+4';
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+4';
|
|
count
|
|
-------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+4';
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+4';
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
SELECT a, a <-> '2018-12-18 10:59:54 GMT+2' FROM timestamptztmp ORDER BY a <-> '2018-12-18 10:59:54 GMT+2' LIMIT 3;
|
|
a | ?column?
|
|
------------------------------+-----------------------------------
|
|
Tue Dec 18 05:59:54 2018 PST | @ 1 hour
|
|
Thu Jan 10 03:01:34 2019 PST | @ 22 days 22 hours 1 min 40 secs
|
|
Thu Jan 24 12:28:12 2019 PST | @ 37 days 7 hours 28 mins 18 secs
|
|
(3 rows)
|
|
|
|
CREATE INDEX timestamptzidx ON timestamptztmp USING gist ( a );
|
|
SET enable_seqscan=off;
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+3'::timestamptz;
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+3'::timestamptz;
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+3'::timestamptz;
|
|
count
|
|
-------
|
|
1
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+3'::timestamptz;
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+3'::timestamptz;
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+2'::timestamptz;
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+2'::timestamptz;
|
|
count
|
|
-------
|
|
391
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+2'::timestamptz;
|
|
count
|
|
-------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+2'::timestamptz;
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+2'::timestamptz;
|
|
count
|
|
-------
|
|
158
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a < '2018-12-18 10:59:54 GMT+4'::timestamptz;
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a <= '2018-12-18 10:59:54 GMT+4'::timestamptz;
|
|
count
|
|
-------
|
|
392
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a = '2018-12-18 10:59:54 GMT+4'::timestamptz;
|
|
count
|
|
-------
|
|
0
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a >= '2018-12-18 10:59:54 GMT+4'::timestamptz;
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
SELECT count(*) FROM timestamptztmp WHERE a > '2018-12-18 10:59:54 GMT+4'::timestamptz;
|
|
count
|
|
-------
|
|
157
|
|
(1 row)
|
|
|
|
EXPLAIN (COSTS OFF)
|
|
SELECT a, a <-> '2018-12-18 10:59:54 GMT+2' FROM timestamptztmp ORDER BY a <-> '2018-12-18 10:59:54 GMT+2' LIMIT 3;
|
|
QUERY PLAN
|
|
------------------------------------------------------------------------------------
|
|
Limit
|
|
-> Index Only Scan using timestamptzidx on timestamptztmp
|
|
Order By: (a <-> 'Tue Dec 18 04:59:54 2018 PST'::timestamp with time zone)
|
|
(3 rows)
|
|
|
|
SELECT a, a <-> '2018-12-18 10:59:54 GMT+2' FROM timestamptztmp ORDER BY a <-> '2018-12-18 10:59:54 GMT+2' LIMIT 3;
|
|
a | ?column?
|
|
------------------------------+-----------------------------------
|
|
Tue Dec 18 05:59:54 2018 PST | @ 1 hour
|
|
Thu Jan 10 03:01:34 2019 PST | @ 22 days 22 hours 1 min 40 secs
|
|
Thu Jan 24 12:28:12 2019 PST | @ 37 days 7 hours 28 mins 18 secs
|
|
(3 rows)
|
|
|