| From: | Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com> |
|---|---|
| To: | Alexandre Felipe <o(dot)alexandre(dot)felipe(at)gmail(dot)com> |
| Cc: | Corey Huinker <corey(dot)huinker(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: SLOPE - Planner optimizations on monotonic expressions. |
| Date: | 2026-03-25 20:57:23 |
| Message-ID: | CAN4CZFPFhdh+ky-554yMOXo-u8ALgBJKEf_a2vZOtWLuxtKDBw@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hello
- proname => 'time_pl_interval', prorettype => 'time',
- proargtypes => 'time interval', prosrc => 'time_pl_interval' },
+ proname => 'time_pl_interval', prosupport => 'addition_slope_support',
+ prorettype => 'time', proargtypes => 'time interval',
+ prosrc => 'time_pl_interval' },
I think this is incorrect, time can wrap around and isn't monotonic.
CREATE TABLE time_wrap_test (t time PRIMARY KEY);
INSERT INTO time_wrap_test VALUES
('20:00'), ('21:00'), ('22:00'), ('23:00'), ('23:30'),
('00:00'), ('01:00'), ('02:00'), ('03:00'), ('04:00');
SELECT t, t + interval '3 hours' AS t_plus_3h
FROM time_wrap_test
ORDER BY t + interval '3 hours';
+ /* Check each index on this relation */
+ foreach(lc, rel->indexlist)
+ {
+ IndexOptInfo *index = (IndexOptInfo *) lfirst(lc);
Isn't a sortopfamily check missing from this?
> Added one line to .gitignore file because I like to keep
> data related to this in the project workarea, e.g.
> ".install", ".dbdata", ".patches", and I don't want those
+
+# ignore hidden files
+.*
This doesn't seem related to the patch.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Jeff Davis | 2026-03-25 21:02:20 | Re: Use CASEFOLD() internally rather than LOWER() |
| Previous Message | David Rowley | 2026-03-25 20:40:08 | Re: SQL-level pg_datum_image_equal |