-
Notifications
You must be signed in to change notification settings - Fork 110
Comparing changes
Open a pull request
base repository: ossc-db/pg_hint_plan
base: master
head repository: ossc-db/pg_hint_plan
compare: PG17
- 16 commits
- 46 files changed
- 3 contributors
Commits on Jul 22, 2024
-
Add CI tests using github actions.
CI tests run on a branch where a commit is pushed or a pull-request is created, with the corresponding PostgreSQL version. Also, there is a scheduled test on every Sunday. This is required as of the creation of the new branch PG17, as it is the new branch created for compatibility of pg_hint_plan with PostgreSQL 17.
Configuration menu - View commit details
-
Copy full SHA for 239d19e - Browse repository at this point
Copy the full SHA 239d19eView commit details -
Update expected output for oldextversions
Thinko in 9087784. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for e34c09a - Browse repository at this point
Copy the full SHA e34c09aView commit details
Commits on Aug 6, 2024
-
Improve portability of tests with compute_query_id
Running installcheck on a cluster with compute_query_id disabled would cause the tests to fail because it is not possible to retrieve the query ID on the first call of get_query_id(). compute_query_id is forcibly set when enabling the hint table, which is something this test relies on, so let's just set pg_hint_plan.enable_hint_table in this case. Per offline report from the author. Author: Yogesh Sharma Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 54082fe - Browse repository at this point
Copy the full SHA 54082feView commit details -
Improve test portability of plpgsql scenario
This test expects query IDs to be computed without the hint table, checking that compute_query_id is either "on" or "auto" when running the tests. The test would fail should compute_query_id be set to off on a cluster where the regression tests are run. There are no reasons why the test should not just use compute_query_id = on now that we don't depend on pg_stat_statements anymore since 8e296b6 for the regression tests of pg_hint_plan. So let's just force it, improving the portability of the tests. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for daf31ab - Browse repository at this point
Copy the full SHA daf31abView commit details
Commits on Aug 16, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7757374 - Browse repository at this point
Copy the full SHA 7757374View commit details
Commits on Aug 20, 2024
-
Remove dependency to shell scripts for EXPLAIN output filtering
pg_hint_plan has depended for a long time on a set of non-portable shell scripts to filter the output of the plans of any unstable output, like costs or widths. This had the disadvantage to be usable only on Linux, while depending on \o and temporary output files. This is replaced in this commit by a solution closer to PostgreSQL upstream, where we use a PL/pgSQL function to process the EXPLAIN queries whose output need to be stabilized. The style used in this commit may arguably be improved more in the future, but the changes done here make the diffs more pallatable than anything I have considered, with all the plans generated remaining the same. Some queries that included quotes in ut-R required a couple more quotes to work in the filtering function. Some extra CONTEXT messages coming from the filtering function are generated, as well as some extra LOG messages for cases related unused indexes, but let's live with that for now. Author: Yogesh Sharma, Michael Paquier Backpatch-through: 17 Per pull request #198 and issue #181.
Configuration menu - View commit details
-
Copy full SHA for 63cf84e - Browse repository at this point
Copy the full SHA 63cf84eView commit details -
Remove dependency to pg_stat_statements in the CI
Since 8e296b6, the tests can run without pg_stat_statements, so let's make things lighter as well in the CI. While on it, remove the dependency to file_fdw in shared_preload_libraries: this is not required as the library does not need to be loaded for the sake of the regression tests.
Configuration menu - View commit details
-
Copy full SHA for 48a71d4 - Browse repository at this point
Copy the full SHA 48a71d4View commit details -
Add Parallel hint tests for empty tables.
As a result of the discussion with Sami Imseih, this commit adds tests showing that for empty tables, only parallel index scans can be enforced and not sequential scans. This is an old, historical, rather weird behavior, that may not be worth changing in the long run as empry tables are not something users rely a lot when using pg_hint_plan, but let's add a test tracking if any future change impacts the plans generated. Author: Sami Imseih Backpatch-through: 17 Per discussion on issue #164.
Configuration menu - View commit details
-
Copy full SHA for e92d75f - Browse repository at this point
Copy the full SHA e92d75fView commit details -
Remove use of session_preload_libraries in regression tests
session_preload_libraries was not really required with its set of ALTER DATABASE SET commands to updates some GUCs. There were equivalent LOAD and SET commands used in the tests where session_preload_libraries was defined, and the same GUCs were set twice. This simplifies the tests, while shaving some cycles to run the tests. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 0c08be4 - Browse repository at this point
Copy the full SHA 0c08be4View commit details -
Remove non-functional code for module unloading
Upstream never had support for library unloading, and it has been officially simplified in ab02d702ef08. Let's do the same for pg_hint_plan, to shave some code. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 3c0464f - Browse repository at this point
Copy the full SHA 3c0464fView commit details -
Refresh upstream code copy with update_copied_funcs.pl
This is required for the next release, to be in sync with the planner code pg_hint_plan depends on. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 6a1f91a - Browse repository at this point
Copy the full SHA 6a1f91aView commit details
Commits on Aug 21, 2024
-
Improve style around manipulation of AppendPath node
As coded, the logic in charge of computing parallel_workers based on the lookup of the paths would assign AppendPath before making sure that it is a node of the expected type. The code was not wrong, but that would encourage incorrect logic, like looking at the values inside the AppendPath before checking that it is of the correct type. Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 9849b00 - Browse repository at this point
Copy the full SHA 9849b00View commit details
Commits on Aug 22, 2024
-
Handle better the hint table if the extension is not created
An environment enabling pg_hint_plan.enable_hint_table while pg_hint_plan has not been created as an extension would fail all its queries as the table created by the extension does not exist. This commit adds a check at the top of get_hints_from_table() to check if the extension is installed before attempting to use the hint table, generating a WARNING. We have discussed about a few options, but a WARNING is more consistent with how duplicated hints or compute_query_id disabled are handled. This does not completely close the failure hole, though, as it is still possible to see the table lookup failure for the CREATE EXTENSION command enabling pg_hint_plan as an extension if enable_hint_table is enabled. In terms of code simplicity, I am not really convinced that we need to do more just for that. This commit relies on 490f869d92e5 that has introduced syscache entries for pg_extension. On stable branches, we will need a different logic with a check on the table itself with its namespace. Idea based on some feedback from Julien Rouhaud. The tests are from me. Author: Sami Imseih, Michael Paquier Backpatch-through: 12 Per issue #191.
Configuration menu - View commit details
-
Copy full SHA for 44f73c6 - Browse repository at this point
Copy the full SHA 44f73c6View commit details
Commits on Aug 26, 2024
-
Improve stability of tests when compiling with --with-llvm
Some tests have been generating diffs when linking pg_hint_plan to LLVM, and generated extra information in the plans without changing their stability. Let's disable JIT in the tests where this happened, for now, improving the stability of the tests. Per issue #199. Reported-by: Shinya Kato Backpatch-through: 17
Configuration menu - View commit details
-
Copy full SHA for 85e07af - Browse repository at this point
Copy the full SHA 85e07afView commit details
Commits on Oct 15, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 6c308e9 - Browse repository at this point
Copy the full SHA 6c308e9View commit details
Commits on Mar 18, 2025
-
Bump jinja2 from 3.1.4 to 3.1.6 in /docs
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.4 to 3.1.6. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](pallets/jinja@3.1.4...3.1.6) --- updated-dependencies: - dependency-name: jinja2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0dc7002 - Browse repository at this point
Copy the full SHA 0dc7002View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...PG17