Commit a911013
committed
Remember pathkey's source expression.
To consistently estimate the number of groups using the pathkeys list in the
sorting operation, we need to identify the expression used as a sort key.
Pathkey refers to the equivalence class, which can contain a wide variety of
expressions. To somehow stabilise the expression's choice, save the link to the
origin expression, triggering the PathKey creation. While this approach doesn't
always guarantee the right choice, it makes dependence on the SQL string less
obvious.1 parent 4058c72 commit a911013
File tree
5 files changed
+59
-13
lines changed- contrib/postgres_fdw
- src
- backend/optimizer/path
- include
- nodes
- optimizer
5 files changed
+59
-13
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
976 | 976 | | |
977 | 977 | | |
978 | 978 | | |
| 979 | + | |
979 | 980 | | |
980 | 981 | | |
981 | 982 | | |
| |||
988 | 989 | | |
989 | 990 | | |
990 | 991 | | |
991 | | - | |
| 992 | + | |
992 | 993 | | |
993 | 994 | | |
994 | 995 | | |
995 | 996 | | |
996 | 997 | | |
997 | 998 | | |
998 | | - | |
| 999 | + | |
| 1000 | + | |
999 | 1001 | | |
1000 | 1002 | | |
1001 | 1003 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2019 | 2019 | | |
2020 | 2020 | | |
2021 | 2021 | | |
2022 | | - | |
2023 | | - | |
| 2022 | + | |
| 2023 | + | |
| 2024 | + | |
| 2025 | + | |
| 2026 | + | |
| 2027 | + | |
| 2028 | + | |
| 2029 | + | |
| 2030 | + | |
| 2031 | + | |
| 2032 | + | |
| 2033 | + | |
| 2034 | + | |
| 2035 | + | |
| 2036 | + | |
| 2037 | + | |
| 2038 | + | |
| 2039 | + | |
| 2040 | + | |
| 2041 | + | |
| 2042 | + | |
| 2043 | + | |
2024 | 2044 | | |
2025 | 2045 | | |
2026 | 2046 | | |
2027 | 2047 | | |
2028 | 2048 | | |
2029 | | - | |
| 2049 | + | |
2030 | 2050 | | |
2031 | 2051 | | |
2032 | 2052 | | |
2033 | 2053 | | |
2034 | 2054 | | |
2035 | 2055 | | |
2036 | | - | |
| 2056 | + | |
2037 | 2057 | | |
2038 | 2058 | | |
2039 | 2059 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | | - | |
| 57 | + | |
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
92 | 93 | | |
93 | 94 | | |
94 | 95 | | |
| |||
241 | 242 | | |
242 | 243 | | |
243 | 244 | | |
244 | | - | |
| 245 | + | |
245 | 246 | | |
246 | 247 | | |
247 | 248 | | |
| |||
1117 | 1118 | | |
1118 | 1119 | | |
1119 | 1120 | | |
1120 | | - | |
| 1121 | + | |
| 1122 | + | |
1121 | 1123 | | |
1122 | 1124 | | |
1123 | 1125 | | |
| |||
1199 | 1201 | | |
1200 | 1202 | | |
1201 | 1203 | | |
1202 | | - | |
| 1204 | + | |
| 1205 | + | |
1203 | 1206 | | |
1204 | 1207 | | |
1205 | 1208 | | |
| |||
1646 | 1649 | | |
1647 | 1650 | | |
1648 | 1651 | | |
| 1652 | + | |
1649 | 1653 | | |
1650 | 1654 | | |
1651 | 1655 | | |
| |||
1660 | 1664 | | |
1661 | 1665 | | |
1662 | 1666 | | |
| 1667 | + | |
1663 | 1668 | | |
1664 | 1669 | | |
1665 | 1670 | | |
| |||
1669 | 1674 | | |
1670 | 1675 | | |
1671 | 1676 | | |
| 1677 | + | |
1672 | 1678 | | |
1673 | 1679 | | |
1674 | 1680 | | |
1675 | 1681 | | |
1676 | 1682 | | |
| 1683 | + | |
1677 | 1684 | | |
| 1685 | + | |
| 1686 | + | |
1678 | 1687 | | |
| 1688 | + | |
1679 | 1689 | | |
| 1690 | + | |
| 1691 | + | |
1680 | 1692 | | |
1681 | 1693 | | |
1682 | 1694 | | |
| |||
1700 | 1712 | | |
1701 | 1713 | | |
1702 | 1714 | | |
| 1715 | + | |
| 1716 | + | |
1703 | 1717 | | |
1704 | 1718 | | |
1705 | 1719 | | |
| |||
1801 | 1815 | | |
1802 | 1816 | | |
1803 | 1817 | | |
1804 | | - | |
| 1818 | + | |
| 1819 | + | |
1805 | 1820 | | |
1806 | 1821 | | |
1807 | 1822 | | |
| |||
1855 | 1870 | | |
1856 | 1871 | | |
1857 | 1872 | | |
| 1873 | + | |
1858 | 1874 | | |
1859 | 1875 | | |
1860 | 1876 | | |
| 1877 | + | |
| 1878 | + | |
1861 | 1879 | | |
1862 | 1880 | | |
1863 | 1881 | | |
1864 | 1882 | | |
| 1883 | + | |
1865 | 1884 | | |
1866 | 1885 | | |
1867 | 1886 | | |
1868 | 1887 | | |
1869 | 1888 | | |
| 1889 | + | |
1870 | 1890 | | |
1871 | 1891 | | |
1872 | 1892 | | |
| |||
1894 | 1914 | | |
1895 | 1915 | | |
1896 | 1916 | | |
1897 | | - | |
| 1917 | + | |
| 1918 | + | |
1898 | 1919 | | |
1899 | 1920 | | |
1900 | 1921 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1469 | 1469 | | |
1470 | 1470 | | |
1471 | 1471 | | |
| 1472 | + | |
| 1473 | + | |
1472 | 1474 | | |
1473 | 1475 | | |
1474 | 1476 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
264 | 264 | | |
265 | 265 | | |
266 | 266 | | |
267 | | - | |
| 267 | + | |
| 268 | + | |
268 | 269 | | |
269 | 270 | | |
270 | 271 | | |
| |||
0 commit comments