• R/O
  • HTTP
  • SSH

pg_hint_plan: List of commits

firtst release

Rev. Time Author
d25d592 PG96 REL96_1_2_7 2020-08-05 16:45:17 Kyotaro Horiguchi

Version 1.2.7.
Fixed some bugs.

781d653 2020-07-14 18:10:15 sherlockcpp

Add description of *ScanRegExp hints in the document.

English version of hint list is missing regexp versions of scan
hints. Add them.

5e6d40e 2020-07-14 17:27:17 Daniil Anisimov

Fix segfault when use Set, Rows and Parallel hints together

9bb8452 2020-07-14 16:33:30 Yang Rong

Fix some spelling errors in comments

78b37b6 2020-07-14 15:24:12 egashira.yusuke

Mark hint table as a configuration table.

The table hint_plan.hints is a configuration table of
pg_hint_plan. Mark it as such, as well as its sequence table.

Back patch to pg_hint_plan96.

d6dcece REL96_1_2_6 2020-02-20 16:49:45 Kyotaro Horiguchi

Change version to 1.2.6.

7276432 2020-02-20 16:46:05 Kyotaro Horiguchi

Change copyright year to 2020.

c5a1d7d 2020-02-20 16:45:18 Kyotaro Horiguchi

Catch up core's change.

The commits 45f8eaa8e3 and 0255329a78 affected core.c. Catch up them.

285b67d 2020-02-17 21:08:26 Kyotaro Horiguchi

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

789d4d7 2020-02-17 16:57:05 Kyotaro Horiguchi

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.

4bd8229 2020-02-17 14:59:15 Kyotaro Horiguchi

Fix Rows hint parsing

This is a long standing bug that Rows hint with no parameter causees a
crash. Fixed the Rows hint parser.

2c20820 2020-02-14 15:36:04 Kyotaro Horiguchi

Fix crash bug caused by plancache invalidation


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

88d3fb3 2020-02-13 20:44:35 Junseok Yang

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.

3f47bfd 2020-02-13 20:01:56 LittleWuCoding

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

Committed a bit tweaked version from the orignal.

5da0953 2020-02-13 19:40:39 Kyotaro Horiguchi

Stabilize regression test.

Further unstability is found about stats reset. Inserted more 1 second
sleeps to stabilize it.

de8e6d9 2020-02-13 14:52:10 Kyotaro Horiguchi

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

36bd012 2019-08-29 16:56:44 LittleWuCoding

fix spelling mistakes in file pg_hint_plan.html

cb78687 2019-03-08 14:05:51 Kyotaro Horiguchi

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.

009aa8b 2019-02-26 16:10:29 Kyotaro Horiguchi

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.

653f5ce 2019-02-26 15:36:44 Kyotaro Horiguchi

Follow the behavior change of PostgreSQL

Some behavioral changes of PostgreSQL breaks regression test. Follow
the changes.

d5c5bac 2019-02-26 14:56:07 Kyotaro Horiguchi

Stabilize test on paralle hints


ef58744 REL96_1_2_5 2019-01-17 16:41:13 Kyotaro Horiguchi

Change version to 1.2.5

Version bumped to 1.2.5. SPEC file is updated.

a95e41f 2019-01-17 16:41:13 Kyotaro Horiguchi

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.

d5c9890 2019-01-17 16:08:38 Kyotaro Horiguchi

Fix documentation.

Fixed wrong or stale descriptions, and poor or broken styles.

9b6a528 2019-01-17 13:38:55 Kyotaro Horiguchi

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.

9567e5a 2019-01-17 13:37:21 Kyotaro Horiguchi

Include all pg_hint_plan--*.sql files in installation

Glob installation/upgrade SQL scripts instead of spcifying
individually to reduce maintenance labor.

3bc136d 2019-01-17 13:35:38 Kyotaro Horiguchi

Change copyright year to 2019

With some minor fixes in the document.

0789606 2019-01-09 09:57:34 Kyotaro Horiguchi

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.

dff1e4a 2019-01-07 19:13:37 Kyotaro Horiguchi

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

1f00dc6 2019-01-07 19:13:37 Kyotaro Horiguchi

Remove an useless variable

commit 89149ce made the variable stmt_name useless. Remove it.

Show on old repository browser