OSDN Git Service
Kyotaro Horiguchi [Thu, 20 Feb 2020 07:49:02 +0000 (16:49 +0900)]
Change version to 1.2.6.
Kyotaro Horiguchi [Thu, 20 Feb 2020 07:46:05 +0000 (16:46 +0900)]
Change copyright year to 2020.
Kyotaro Horiguchi [Thu, 20 Feb 2020 07:45:18 +0000 (16:45 +0900)]
Catch up core's change.
The commits
45f8eaa8e3 and
0255329a78 affected core.c. Catch up them.
Kyotaro Horiguchi [Mon, 17 Feb 2020 11:53:40 +0000 (20:53 +0900)]
Restore current hint state when returned from non-hinted query planning.
If no hint is given for the current level query, pg_hint_plan_planner
calls the next level of planner after erasing the
current_hint_state. But it forgot to restore the state before the
planning of the rest part of the current-level query. It is
(a-kind-of) broken by the commit
d422966 but overlooked as an
inevitable side-effect of the fix. Get back the behavior by restoring
current_hint_state after returned from the lower level planner with
unhinted query.
Issue: https://github.com/ossc-db/pg_hint_plan/issues/30
Reported-by: higuchi-daisuke
Kyotaro Horiguchi [Mon, 17 Feb 2020 07:19:48 +0000 (16:19 +0900)]
Use proper type for non-integer GUC options.
pg_hint_plan internally preserved numeric options into integer
variable regardless of their types, which leads to unintentional
change of the values. Handle double values in the proper way.
Kyotaro Horiguchi [Mon, 17 Feb 2020 05:53:27 +0000 (14:53 +0900)]
Fix Rows hint parsing
This is a long standing bug that Rows hint with no parameter causees a
crash. Fixed the Rows hint parser.
Kyotaro Horiguchi [Fri, 14 Feb 2020 03:34:55 +0000 (12:34 +0900)]
Fix crash bug caused by plancache invalidation
https://github.com/ossc-db/pg_hint_plan/issues/41
After plancache is invalidated then revaliated, get_query_string
accesses query_list of invalid plansource then crash. Ignore invalid
plancache and get the correct hint string and Query node at the next
planning time during revalidation.
On the way fixing this, a bug related to planner reentrance is
fixed. That fix causes behavioral change for nested
planning. Previously outer-level hint (wrongly) overrides inner-level
query but currenlty outer-level hint no longer affects inner-level
query.
Junseok Yang [Fri, 16 Mar 2018 20:42:44 +0000 (13:42 -0700)]
Use tuple-only mode to stablize EXPLAIN output containing @abs_srcdir@.
The line containing @abs_srcdir@ can be longer than the header line
and if it is, the test will fail. Use tuple-only mode to get rid of
the unstable part from the EXPLAIN output.
LittleWuCoding [Sat, 12 Jan 2019 10:11:04 +0000 (18:11 +0800)]
Fix compiling error on Solaris
The 'LDFLAGS+=-Wl,--build-id' option is for rpm building in Linux like
OS. The SunOS is not native support the option
'LDFLAGS+=-Wl,--build-id' . So, we disable this option in SunOS while
compiling.
Committed a bit tweaked version from the orignal.
Kyotaro Horiguchi [Thu, 13 Feb 2020 06:54:36 +0000 (15:54 +0900)]
Stabilize regression test.
Further unstability is found about stats reset. Inserted more 1 second
sleeps to stabilize it.
Kyotaro Horiguchi [Thu, 13 Feb 2020 05:23:19 +0000 (14:23 +0900)]
Do null-check of error_context_stack before use
The variable is accessed without null checking when planner is called
in the context of pl/pgsql. Fix it. Back-patched up to pg_hint_plan94.
Reporter: egashira-yusuke
Issue: https://github.com/ossc-db/pg_hint_plan/issues/42
Original-Author: sun-wei <
30999182+Dagouhan@users.noreply.github.com>
Original-patch: https://github.com/ossc-db/pg_hint_plan/pull/45/commits/
8fe092ef73a9af6cfb41e20717d7cb35aa74fce2
LittleWuCoding [Wed, 12 Dec 2018 06:47:13 +0000 (14:47 +0800)]
fix spelling mistakes in file pg_hint_plan.html
Kyotaro Horiguchi [Fri, 8 Mar 2019 04:58:52 +0000 (13:58 +0900)]
Silence some compilers
Some compilers seem to complain about the previous patch, that
prev_hint_str is used uninitialized. Actually it is not but move the
initialization code out of the PG_TRY() section so that such compilers
would be quiet.
Kyotaro Horiguchi [Tue, 26 Feb 2019 07:10:29 +0000 (16:10 +0900)]
Correctly handle planner nesting
pg_hint_plan assumed that plpgsql is the only source of nested planner
calls. Actually nested call can be made in any shapes. Most of the
cases doesn't harm but in a special case where pg_dbms_stats makes a
SPI call during query planning, that affects subsequent planner
work. Hints lose effect when pg_dbms_stats searches "locked
statistics" tables while planning the target query.
Kyotaro Horiguchi [Tue, 26 Feb 2019 06:36:44 +0000 (15:36 +0900)]
Follow the behavior change of PostgreSQL
Some behavioral changes of PostgreSQL breaks regression test. Follow
the changes.
Kyotaro Horiguchi [Tue, 26 Feb 2019 05:56:07 +0000 (14:56 +0900)]
Stabilize test on paralle hints
Planner
Kyotaro Horiguchi [Thu, 17 Jan 2019 04:43:53 +0000 (13:43 +0900)]
Change version to 1.2.5
Version bumped to 1.2.5. SPEC file is updated.
Kyotaro Horiguchi [Thu, 17 Jan 2019 07:37:15 +0000 (16:37 +0900)]
Fix reverse link of hint_list.html
pg_hint_plan.html and hint_list.html pointed to the Japanese version
of main document. Fixed it.
Kyotaro Horiguchi [Thu, 17 Jan 2019 07:07:15 +0000 (16:07 +0900)]
Fix documentation.
Fixed wrong or stale descriptions, and poor or broken styles.
Kyotaro Horiguchi [Thu, 17 Jan 2019 04:14:24 +0000 (13:14 +0900)]
Do make install for rpmbuild
Use make install to build in prmbuild directory instaed of using
install command to individual file to reduce maintenance labor.
Kyotaro Horiguchi [Thu, 17 Jan 2019 03:29:47 +0000 (12:29 +0900)]
Include all pg_hint_plan--*.sql files in installation
Glob installation/upgrade SQL scripts instead of spcifying
individually to reduce maintenance labor.
Kyotaro Horiguchi [Thu, 17 Jan 2019 03:11:17 +0000 (12:11 +0900)]
Change copyright year to 2019
With some minor fixes in the document.
Kyotaro Horiguchi [Wed, 9 Jan 2019 00:35:41 +0000 (09:35 +0900)]
Call standrad_ProcessUtility when no hook is set
The last commit
dff1e4a forgot the case of no previous hook function
in the ProcessUtility hook function. Fix it.
Kyotaro Horiguchi [Mon, 7 Jan 2019 08:01:32 +0000 (17:01 +0900)]
Support prepared statements on extended protocol
However pg_hint_plan doesn't fully consider the extended protocol,
commit
89149ce accidentially broke the case where an analyzed prepared
statement is executed on extended protocol. This patch fixes that only
for the hints-in-comment case. Hint-table still doesn't work in the
case since query-normalization needs Query, which is not available in
planner_hook.
Kyotaro Horiguchi [Mon, 7 Jan 2019 07:40:21 +0000 (16:40 +0900)]
Remove an useless variable
commit
89149ce made the variable stmt_name useless. Remove it.
Kyotaro Horiguchi [Mon, 7 Jan 2019 09:23:58 +0000 (18:23 +0900)]
Adjust regression test.
Planning behavior has been changed in core. Adjust regression test.
Kyotaro Horiguchi [Tue, 4 Dec 2018 04:19:57 +0000 (13:19 +0900)]
Fix for union-on-inheritance case
setup_hint_enforcement may pick up a wrong hint when multiple
subqueries access inheritance tables. This leads to failure to apply
hints on other than the first subquery.
Kyotaro Horiguchi [Tue, 4 Dec 2018 01:33:55 +0000 (10:33 +0900)]
Don't reset plpgsql nest level at every command end
Clean up code for global exit is forgetting about loops that run
hinted commands multiple times. This leads to pg_hint_plan's failure
to affect after the first execution of the inner commands.
The hint below worked only for the first time.
FOR outer IN EXECUTE 'outer-command' LOOP
FOR inner IN EXECUTE '/*+ hint */ inner-command' LOOP
<something>
END LOOP;
END LOOP;
Kyotaro Horiguchi [Tue, 13 Nov 2018 07:33:08 +0000 (16:33 +0900)]
Changed version to 1.2.4
Previously parse_messages and message_level were binded to the same
internal variable. Separate the two GUCs. On the way doing this some
mssages that did not honor the variable were fixed. Default behavior
is not changed but the the two variables works differently from the
previous version, perhaps closer to expected.
Kyotaro Horiguchi [Tue, 13 Nov 2018 03:43:10 +0000 (12:43 +0900)]
Fix debug output level control
Previously parse_messages and message_level were binded to the same
internal variable. Separate the two GUCs. On the way doing this some
mssages that did not honor the variable were fixed. Default behavior
is not changed but the the two variables works differently from the
previous version, perhaps closer to expected.
Kyotaro Horiguchi [Tue, 13 Nov 2018 00:27:48 +0000 (09:27 +0900)]
Fix bogus error handling
For somewhat reason set_config_int32_options does bogus error
handling. Howerver that error cannot be happen, fixed it.
Kyotaro Horiguchi [Fri, 8 Jun 2018 03:59:10 +0000 (12:59 +0900)]
Change version to 1.2.3.
1.2.2 has a crash bug in Describe message of extended protocol
path. If server receives the message after invalidation of
corresponding query cache, pg_hint_plan crashes.
On the way fixing it, this version took in the following commit of
core.
64ad85860c Change more places to be less trusting of RestrictInfo.is_pushed_down.
Kyotaro Horiguchi [Fri, 8 Jun 2018 03:48:38 +0000 (12:48 +0900)]
Took in core improvement.
Took in the following commit of core. A minor non-functional fix was
made on the way.
64ad85860c Change more places to be less trusting of RestrictInfo.is_pushed_down.
Fixed typos and removed useless include on the way.
Kyotaro Horiguchi [Thu, 24 May 2018 09:18:29 +0000 (18:18 +0900)]
Fix a crash bug in case debug_query_string is NULL
pg_hint_plan believed that debug_query_string cannot be null when
parse_analyze is called, but for example in the case under
exec_describe_statement_message, it is not. We see the query string in
pstate even in the case, so use it instead in the case. Since pstate
is storing the query of the lowermost level, we should use
debug_query_string in other cases.
Kyotaro Horiguchi [Mon, 6 Nov 2017 06:28:36 +0000 (15:28 +0900)]
Move expected/ut-W.out to output/ut-W.source
ut-W.out contained an absolute path of my working directory. Moved the
file into output so that we can remove the path replacing with
@abs_srcdir@.
Kyotaro Horiguchi [Mon, 6 Nov 2017 05:38:49 +0000 (14:38 +0900)]
Added and removed some entries in .gitignore
Removed core.c, that is not appropriate.
Added .deps and RPMS.
Arthur Zakirov [Thu, 2 Nov 2017 13:00:09 +0000 (16:00 +0300)]
Use pg_strcasecmp instead of strcasecmp for the sake of portability
Kyotaro Horiguchi [Tue, 10 Oct 2017 03:17:58 +0000 (12:17 +0900)]
Added a notice in the manual.
Added an item that explains about letter case handling of object names
in hints.
Kyotaro Horiguchi [Thu, 27 Jul 2017 07:49:29 +0000 (16:49 +0900)]
Change version to 1.2.2
1.2.1 has an assertion failure bug raised by DECLARE CURSOR with
enabling table hint. Fixed it.
Kyotaro Horiguchi [Thu, 27 Jul 2017 03:26:55 +0000 (12:26 +0900)]
Fixed a crash bug by DECLARE CURSOR and enable_hint_table = on
The previous version causes assertion failure by DECLARE CURSOR syntax
when table hint is activated. The cause is that the version forgot the
fact that DelcareCursorStmt is in a bit strange shape. Add support of
DECLARE CURSOR and regression test for table hinting.
Kyotaro Horiguchi [Thu, 27 Jul 2017 09:06:59 +0000 (18:06 +0900)]
Make core.c to the right version.
core.c in
9e5b1753d00cb1071eb44570d3c7f9e18823ba67 seems to be
somewhat different version. Fixed it to right version.
Kyotaro Horiguchi [Fri, 19 May 2017 04:33:31 +0000 (13:33 +0900)]
Change version to 1.2.1
1.2.0 has a crash bug raised by queries in specific shape involving
complex views and/or SQL functions. Also it can crash when using
Parallel hint.
They are fixed in this version.
Kyotaro Horiguchi [Fri, 19 May 2017 01:11:55 +0000 (10:11 +0900)]
Fix a bug of target query retrieval
The previous patch leaves a bug that get_query_string returns a Query
that JumbleQuery doesn't accept. This fixes that bug.
Kyotaro Horiguchi [Thu, 18 May 2017 09:43:09 +0000 (18:43 +0900)]
Fix a crash bug on complex views when enable_hint_table is on
The Query that planner receives sometimes irrelevant to
debug_query_string. If enable_hint_table is on, pg_hint_plan_planner
normalizes debug_query_string using query-jumble information created
from the irrelevant Query the can lead to crash. To avoid this
situation, retrieve hints in post_parse_analyze_hook, where
corresponding pairs of a query string and a parsed Query.
Kyotaro Horiguchi [Thu, 18 May 2017 01:40:48 +0000 (10:40 +0900)]
Follow the behavioral change of parallel execution
The behavior of parallel planning is changed until 9.6.3, let
expected/ut-W.out to follow that.
Kyotaro Horiguchi [Thu, 18 May 2017 01:28:49 +0000 (10:28 +0900)]
Fix a bug of Parallel hint
During manipulation on pathlist of a GatherPath, foreach was mitakenly
used for a loop using list_delete_cell. This leads to a crash with
SEGV.
Kyotaro Horiguchi [Tue, 21 Feb 2017 00:27:55 +0000 (09:27 +0900)]
Provide upgrade path from 1.1.3
pg_hint_plan96-1.2.0 has an upgrade path from 1.1.3. This adds
requires installation sql file and puts pointers to the files in
Makefile and spec file. It is the only upgrade path of pg_hint_plan
1.2.0 since it works only on PG9.6 and versions earlier than 1.1.3
don't support PG9.6.
Kyotaro Horiguchi [Thu, 16 Feb 2017 10:08:54 +0000 (19:08 +0900)]
Don't apply parallel hint on rels that planner considers unsafe.
pg_hint_plan considered had its own decision logic on whether
parallel-safe or not but it is dangerous and unnecessary. Just follow
planner's decision.
Kyotaro Horiguchi [Thu, 16 Feb 2017 08:41:30 +0000 (17:41 +0900)]
Reconsider hinting process
I rethinked the steps of enforcement considering the parallel planning
code. pg_hint_plan_set_rel_pathlist() gets simpler and easier to read
(maybe).
As the result of this patch, some behaviors has been changed.
- False generation of gahter path caused by hinting on the other side
of joins.
- Scan hints work with Parallel hints. (It's useless for the moment,
though).
Tatsuro Yamada [Thu, 16 Feb 2017 02:00:32 +0000 (11:00 +0900)]
Fix a typo of documentation.
Author: Tatsuro Yamada <yamatattsu@gmail.com>
Kyotaro Horiguchi [Mon, 13 Feb 2017 08:01:49 +0000 (17:01 +0900)]
Don't set_plain_rel_pathlist for other than RTE_RELATION.
pg_hint_plan_set_rel_pathlist can call set_plain_rel_pathlist for
relations other than RTE_RELATION and this results in a crash.
Kyotaro Horiguchi [Mon, 13 Feb 2017 07:56:44 +0000 (16:56 +0900)]
Following a fix in PG9.6.1.
PG9.6.2 gets a fix on planning that affects on the result of
ut-S. ut-S follows that by this fix. As the result ut-S won't success
for 9.6.1 or ealier after this patch.
Kyotaro Horiguchi [Mon, 13 Feb 2017 07:52:45 +0000 (16:52 +0900)]
Fix parallel hint error handling.
Some kind of error of a parallel hint resulted confusing log
output. Addition to that, due to improper assumption of .conf file,
ordinary setup of max_worker_processes caused failure of ut-W. Fixed
them.
Kyotaro Horiguchi [Fri, 10 Feb 2017 08:19:43 +0000 (17:19 +0900)]
Refactor hint application mechamism next step
I removed useless code forgotten to be removed in
add_paths_to_joinrel_wrapper by the previous refactoring. Addition to
that, find_scan_method_hint and find_parallel_hint are found not to
require the third parameter rel, so removed it. Some inadequate tests
are fixed and changed according to change of unclear behaviors.
Kyotaro Horiguchi [Fri, 10 Feb 2017 02:06:05 +0000 (11:06 +0900)]
Improve error handling of Parallel hint
Improve poor error report for Parallel hint.
Kyotaro Horiguchi [Fri, 10 Feb 2017 02:09:52 +0000 (11:09 +0900)]
Fix wrongly lowering max_parallel_workers_per_gather
Number of parallel workers of non-hinted relations is wrongly forced
to be zero even if max_parallel_workers_per_gather is more than
zero. Non-hinted relations get to have max_parallel_workes_per_gather
as set by this fix.
Kyotaro Horiguchi [Thu, 9 Feb 2017 01:50:29 +0000 (10:50 +0900)]
Refactor hint application mechamism
Before we have the new hook set_rel_pathlist_hook, plan enforcment is
performed in two steps, one works only for queries with one relation,
the other works only for joins. Now they are performed once and at
once in set_rel_pathlist_hook. As a byproduct of this refactoring,
index restriction no longer runs for indexes on constraint-excluded
relations and expected/ut-S.out changed a bit.
The major changes by this patch are the followings.
- Remove hook to get_relation_info_hook:
The function for the hook pg_hint_plan_get_relation_info is removed.
- pg_hint_plan_join_search no longer calls rebuild_scan_path. The
function and a copied function set_plain_rel_pathlist are removed.
- delete_indexes has been renamed to restrict_indexes, which
represents the functionality clearer. And the function was
refactored main for readablity.
- Added several regtests for parallel.
Kyotaro Horiguchi [Thu, 9 Feb 2017 00:07:14 +0000 (09:07 +0900)]
Fix default_version of extension control file
default_version in pg_hint_plan.control was left unchanged on updating
version number. Fixed it.
Kyotaro Horiguchi [Thu, 9 Feb 2017 00:06:28 +0000 (09:06 +0900)]
Edit copyright year
Kyotaro Horiguchi [Wed, 8 Feb 2017 01:34:09 +0000 (10:34 +0900)]
Properly change the state of parallel hints.
The state member of parallel hint is forgotten to be chaned on usage.
This fixes it.
Kyotaro Horiguchi [Wed, 8 Feb 2017 01:16:01 +0000 (10:16 +0900)]
Rename some functions and refactor code.
Some functions had a bit confusing naming and inconvenient interfaces.
Renamed such functions and refactored the code.
Kyotaro Horiguchi [Tue, 7 Feb 2017 11:28:18 +0000 (20:28 +0900)]
Change version to 1.2.0.
Change version number to 1.2.0 and prepare RPM build envoronment.
Kyotaro Horiguchi [Tue, 7 Feb 2017 11:05:12 +0000 (20:05 +0900)]
Add description of Parallel hint to documentation
Addition to that, documents are refactored.
Kyotaro Horiguchi [Tue, 7 Feb 2017 11:03:13 +0000 (20:03 +0900)]
New hint "Parallel"
Added a new feature to control parallel query execution.
Kyotaro Horiguchi [Tue, 7 Feb 2017 03:54:05 +0000 (12:54 +0900)]
Rename current_hint to current_hint_state
The name current_hint is quite confusing so change the name to less
confusing one.
Kyotaro Horiguchi [Mon, 6 Feb 2017 06:18:08 +0000 (15:18 +0900)]
Fix some syntax and comments.
Some following comma for the last element in enum definition and
incorrect comments are fixed.
Kyotaro Horiguchi [Mon, 5 Sep 2016 07:18:13 +0000 (16:18 +0900)]
Remove an unnecessary Makefile entry for tar file
Remove mistakenly copy'n-pasted description from outside in Makefile.
Kyotaro Horiguchi [Mon, 5 Sep 2016 07:11:30 +0000 (16:11 +0900)]
Edit copyright notices
Kyotaro Horiguchi [Thu, 1 Sep 2016 04:57:30 +0000 (13:57 +0900)]
Support PostgreSQL 9.6 RC1
Edited Makefile and renamed and edited RPM spec file.
Copied functions are updated and follow the changes of internal API.
Modified regressions to pass with 9.6 RC1.
Kyotaro Horiguchi [Fri, 13 May 2016 06:42:45 +0000 (15:42 +0900)]
Add RPM spec file forgotten in the previous commit.
Kyotaro HORIGUCHI [Tue, 26 Apr 2016 08:44:48 +0000 (17:44 +0900)]
Merge pull request #36272 (fujii_masao/pg_hint_plan/master into master).
MasaoFujii [Fri, 22 Apr 2016 04:38:42 +0000 (13:38 +0900)]
Use pg_reload_conf() to reload the configuration file in regression test.
Previously the regression test ran pg_ctl reload command for that purpose.
However in the environment where the path to PostgreSQL binaries is not set,
the regression test always failed because pg_ctl could not be found.
To reload the configuration file even in that environment, this commit
changes the regression test so that it uses pg_reload_conf function, instead.
Kyotaro Horiguchi [Fri, 15 Jan 2016 02:48:52 +0000 (11:48 +0900)]
Prepare for 1.1.3/PG95.
The pg_hint_plan version of master branch is left as 1.1.2. This
commit corrects the pg_hint_plan version, and edits RPM building
environment for PostgreSQL 9.5.
Kyotaro Horiguchi [Fri, 15 Jan 2016 02:47:17 +0000 (11:47 +0900)]
Edit copyright years.
Kyotaro Horiguchi [Fri, 15 Jan 2016 02:44:37 +0000 (11:44 +0900)]
Change for new syntax items in 9.5.
Some syntactical elements are added in 9.5. This change reflects it.
Addition to that, deleted unused parts in pg_stat_statements, which
are previously invalidated with #ifdef directives.
Kyotaro Horiguchi [Fri, 15 Jan 2016 00:27:24 +0000 (09:27 +0900)]
Follow a change of error message.
Context message of PL/pgSQL is changed so this commit refrects it to
exted/pg_hint_plan.out.
Kyotaro Horiguchi [Fri, 15 Jan 2016 00:28:29 +0000 (09:28 +0900)]
Followed the changes of 9.5.0 release.
There was some changes in 9.5.0 release affect
pg_hint_plan. set_append_rel_pathlist() no longer sets cheapest path
and it became a business of the caller. So rebuild_scan_path() does
so. core.c gets changed from changing lateral join infrastracture
(
acfcd45cacb6df23edba4cb3753a2be594238a99) and a change related to custom path(
c2ea2285e978d9289084846a3343cef7d261d880).
Kyotaro Horiguchi [Mon, 17 Aug 2015 09:33:38 +0000 (18:33 +0900)]
Made compatible with 9.5a1
Make make_join_rel.c to catch up to REL9_5_ALPHA2. Change regtests to
reflect some differences of PostgreSQL's behavior in such like
collapsing of simple VALUES clause, rows estimation and explain
representation of join filter.
Kyotaro Horiguchi [Mon, 22 Dec 2014 08:34:15 +0000 (17:34 +0900)]
Fixed a bug related to SQL statements in PL/pgSQL functions.
At least since 9.1, true query strings of SQL statements executed in
PL/pgSQL functions were found that were not obtained correctly by the
previous implement, it is because that PLpgSQL_stmt variable did not
have proper query string to be read for hints. Instead, it is changed
to read them from the top of error_context_stack in
pg_hint_plan_planner(). This change made a slight difference in
behavior which doesn't affect its work so a part of the regtest was
also changed. And added some regression tests for it.
Kyotaro Horiguchi [Mon, 22 Dec 2014 02:07:09 +0000 (11:07 +0900)]
Catch up the changes of pg_stat_statements.c
The change has nothing to do with pg_hint_plan but it's necessary to
catch it up in order to keep the difference minimal for the ease of
maintenance.
Kyotaro Horiguchi [Tue, 16 Dec 2014 10:00:50 +0000 (19:00 +0900)]
Set additional parameter of set_config_option().
9.5dev added new parameter to set_config_option(). This paramter
should be false in set_config_option_wrapper.
Kyotaro Horiguchi [Tue, 16 Dec 2014 10:12:59 +0000 (19:12 +0900)]
Fix regression test according to the changes of PostgreSQL.
PostgreSQL became to give WARNING for usage of hash indexes. This
change is to follow it.
Kyotaro Horiguchi [Wed, 17 Dec 2014 02:20:21 +0000 (11:20 +0900)]
Prepare for 1.1.2
Kyotaro Horiguchi [Fri, 19 Dec 2014 07:10:46 +0000 (16:10 +0900)]
Remove unnecessary tracker code from documentations.
Kyotaro Horiguchi [Fri, 19 Dec 2014 06:43:36 +0000 (15:43 +0900)]
Added English documentation.
Kyotaro Horiguchi [Fri, 19 Dec 2014 06:05:58 +0000 (15:05 +0900)]
Some fix and addition to the japaneses document.
It lacked the description about joni direction enforcement so added
it. Addition to it, added html language specification and updated
target PostgreSQL versions and OS version.
Kyotaro Horiguchi [Tue, 16 Dec 2014 10:12:59 +0000 (19:12 +0900)]
Fix regression test according to the changes of PostgreSQL.
Row countings of EXPLAIN results seems to be changed. This follows the
change.
Kyotaro Horiguchi [Tue, 16 Dec 2014 09:45:22 +0000 (18:45 +0900)]
Removed a stale comment.
Kyotaro Horiguchi [Tue, 16 Dec 2014 05:45:13 +0000 (14:45 +0900)]
Fix to remove plpgsql query string on non-local exit.
Pl/pgsql query string stored internally squatted after an execution
error then pg_hint_plan afterward read it for hints and ignores really
given ones. This commit makes it erased at the end of transaction.
Kyotaro Horiguchi [Tue, 16 Dec 2014 04:20:02 +0000 (13:20 +0900)]
Fix about unexpectedly living plpgsql query string.
pg_hint_plan forgot to erase plpgsql query strings when it is NOT a
static statement, so it continued to read hints from the remenbered
wrong query string after using dynamic execution of a statement. This
commit makes it to be erased for any types of pl/pgsql statement.
Kyotaro Horiguchi [Tue, 16 Dec 2014 09:31:12 +0000 (18:31 +0900)]
Enhance debug output.
Added new debug output levels detailed and verbose. These let you see
more verbose information about what pg_hint_plan does internally.
Kyotaro Horiguchi [Wed, 17 Dec 2014 01:09:32 +0000 (10:09 +0900)]
Revert "Add new join method hint "NestLoop_NM" which means force nested loop"
This reverts commit
7f6e3ce1326751c36676653ef1e81893296860b6.
Kyotaro Horiguchi [Thu, 18 Sep 2014 05:23:15 +0000 (14:23 +0900)]
Add new join method hint "NestLoop_NM" which means force nested loop
but inhibit materialize of the inner relation.
Kyotaro Horiguchi [Wed, 17 Sep 2014 08:13:57 +0000 (17:13 +0900)]
Fix a bug that index restriction by name doesn't work for UPDATEs on
inheritance parent.
Inheritance planner doesn't claim for the inheritance parent relation,
so pg_hint_plan_get_relation_info cannot have the chance to prepare
the index spec information for chlid relations. This change make the
function to try to find parent relation even if it is called for the
children with inhparent == false from the first.
Kyotaro Horiguchi [Wed, 17 Sep 2014 08:10:18 +0000 (17:10 +0900)]
Remove unused struct member.
Kyotaro Horiguchi [Fri, 5 Sep 2014 04:35:55 +0000 (13:35 +0900)]
RPM automation
Kyotaro Horiguchi [Thu, 4 Sep 2014 09:04:56 +0000 (18:04 +0900)]
Change verision to 1.1.1. Change target version to 9.4.
Kyotaro Horiguchi [Thu, 4 Sep 2014 08:55:38 +0000 (17:55 +0900)]
Make codes copied from PostgreSQL catch up to 9.4
Kyotaro Horiguchi [Thu, 4 Sep 2014 02:03:08 +0000 (11:03 +0900)]
Interim support for 9.4beta2. pg_stat_statements.c is replaced with the latest version. Regtests are rearranged and stabilized.
Kyotaro Horiguchi [Fri, 5 Sep 2014 03:34:28 +0000 (12:34 +0900)]
Merge branch 'master' into PG93