Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit92d1f9f

Browse files
committed
Merge branch 'PGPROEE9_6' into PGPROEE9_6_CFS_385
2 parents4eb9c64 +41d0c92 commit92d1f9f

File tree

384 files changed

+68252
-25857
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

384 files changed

+68252
-25857
lines changed

‎.gitlab-ci.yml

Lines changed: 0 additions & 58 deletions
This file was deleted.

‎configure

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.69 for PostgreSQL 9.6.1.
3+
# Generated by GNU Autoconf 2.69 for PostgreSQL 9.6.2.
44
#
55
# Report bugs to <bugs@postgrespro.ru>.
66
#
@@ -583,8 +583,8 @@ MAKEFLAGS=
583583
# Identity of this package.
584584
PACKAGE_NAME='PostgreSQL'
585585
PACKAGE_TARNAME='postgrespro'
586-
PACKAGE_VERSION='9.6.1'
587-
PACKAGE_STRING='PostgreSQL 9.6.1'
586+
PACKAGE_VERSION='9.6.2'
587+
PACKAGE_STRING='PostgreSQL 9.6.2'
588588
PACKAGE_BUGREPORT='bugs@postgrespro.ru'
589589
PACKAGE_URL=''
590590

@@ -1406,7 +1406,7 @@ if test "$ac_init_help" = "long"; then
14061406
# Omit some internal or obsolete options to make the list less imposing.
14071407
# This message is too long to be a string in the A/UX 3.1 sh.
14081408
cat <<_ACEOF
1409-
\`configure' configures PostgreSQL 9.6.1 to adapt to many kinds of systems.
1409+
\`configure' configures PostgreSQL 9.6.2 to adapt to many kinds of systems.
14101410

14111411
Usage: $0 [OPTION]... [VAR=VALUE]...
14121412

@@ -1471,7 +1471,7 @@ fi
14711471

14721472
if test -n "$ac_init_help"; then
14731473
case $ac_init_help in
1474-
short | recursive ) echo "Configuration of PostgreSQL 9.6.1:";;
1474+
short | recursive ) echo "Configuration of PostgreSQL 9.6.2:";;
14751475
esac
14761476
cat <<\_ACEOF
14771477

@@ -1625,7 +1625,7 @@ fi
16251625
test -n "$ac_init_help" && exit $ac_status
16261626
if $ac_init_version; then
16271627
cat <<\_ACEOF
1628-
PostgreSQL configure 9.6.1
1628+
PostgreSQL configure 9.6.2
16291629
generated by GNU Autoconf 2.69
16301630

16311631
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2337,7 +2337,7 @@ cat >config.log <<_ACEOF
23372337
This file contains any messages produced by compilers while
23382338
running configure, to aid debugging if configure makes a mistake.
23392339

2340-
It was created by PostgreSQL $as_me 9.6.1, which was
2340+
It was created by PostgreSQL $as_me 9.6.2, which was
23412341
generated by GNU Autoconf 2.69. Invocation command line was
23422342

23432343
$ $0 $@
@@ -2754,7 +2754,7 @@ else
27542754
fi
27552755

27562756

2757-
PGPRO_VERSION="$PACKAGE_VERSION.3"
2757+
PGPRO_VERSION="$PACKAGE_VERSION.1"
27582758
PGPRO_PACKAGE_NAME="PostgresPro"
27592759
PGPRO_EDITION="enterprise"
27602760

@@ -7244,7 +7244,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
72447244
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
72457245

72467246
# When Autoconf chooses install-sh as install program it tries to generate
7247-
# a relative path to it in each makefile where itsubsitutes it. This clashes
7247+
# a relative path to it in each makefile where itsubstitutes it. This clashes
72487248
# with our Makefile.global concept. This workaround helps.
72497249
case $INSTALL in
72507250
*install-sh*) install_bin='';;
@@ -7388,7 +7388,7 @@ fi
73887388
$as_echo "$MKDIR_P" >&6; }
73897389

73907390
# When Autoconf chooses install-sh as mkdir -p program it tries to generate
7391-
# a relative path to it in each makefile where itsubsitutes it. This clashes
7391+
# a relative path to it in each makefile where itsubstitutes it. This clashes
73927392
# with our Makefile.global concept. This workaround helps.
73937393
case $MKDIR_P in
73947394
*install-sh*) MKDIR_P='\${SHELL} \${top_srcdir}/config/install-sh -c -d';;
@@ -18558,7 +18558,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
1855818558
# report actual input values of CONFIG_FILES etc. instead of their
1855918559
# values after options handling.
1856018560
ac_log="
18561-
This file was extended by PostgreSQL $as_me 9.6.1, which was
18561+
This file was extended by PostgreSQL $as_me 9.6.2, which was
1856218562
generated by GNU Autoconf 2.69. Invocation command line was
1856318563

1856418564
CONFIG_FILES = $CONFIG_FILES
@@ -18628,7 +18628,7 @@ _ACEOF
1862818628
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
1862918629
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
1863018630
ac_cs_version="\\
18631-
PostgreSQL config.status 9.6.1
18631+
PostgreSQL config.status 9.6.2
1863218632
configured by $0, generated by GNU Autoconf 2.69,
1863318633
with options \\"\$ac_cs_config\\"
1863418634

‎configure.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ dnl Read the Autoconf manual for details.
1717
dnl
1818
m4_pattern_forbid(^PGAC_)dnl to catch undefined macros
1919

20-
AC_INIT([PostgreSQL], [9.6.1], [bugs@postgrespro.ru],[postgrespro])
20+
AC_INIT([PostgreSQL], [9.6.2], [bugs@postgrespro.ru],[postgrespro])
2121
PACKAGE_TARNAME=postgrespro
2222

2323
m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required.
@@ -38,7 +38,7 @@ AC_DEFINE_UNQUOTED(PG_MAJORVERSION, "$PG_MAJORVERSION", [PostgreSQL major versio
3838
PGAC_ARG_REQ(with, extra-version, [STRING], [append STRING to version],
3939
[PG_VERSION="$PACKAGE_VERSION$withval"],
4040
[PG_VERSION="$PACKAGE_VERSION"])
41-
PGPRO_VERSION="$PACKAGE_VERSION.3"
41+
PGPRO_VERSION="$PACKAGE_VERSION.1"
4242
PGPRO_PACKAGE_NAME="PostgresPro"
4343
PGPRO_EDITION="enterprise"
4444
AC_SUBST(PGPRO_PACKAGE_NAME)
@@ -925,7 +925,7 @@ fi
925925

926926
AC_PROG_INSTALL
927927
# When Autoconf chooses install-sh as install program it tries to generate
928-
# a relative path to it in each makefile where itsubsitutes it. This clashes
928+
# a relative path to it in each makefile where itsubstitutes it. This clashes
929929
# with our Makefile.global concept. This workaround helps.
930930
case $INSTALL in
931931
*install-sh*) install_bin='';;
@@ -938,7 +938,7 @@ AC_PROG_LN_S
938938
AC_PROG_AWK
939939
AC_PROG_MKDIR_P
940940
# When Autoconf chooses install-sh as mkdir -p program it tries to generate
941-
# a relative path to it in each makefile where itsubsitutes it. This clashes
941+
# a relative path to it in each makefile where itsubstitutes it. This clashes
942942
# with our Makefile.global concept. This workaround helps.
943943
case $MKDIR_P in
944944
*install-sh*) MKDIR_P='\${SHELL} \${top_srcdir}/config/install-sh -c -d';;

‎contrib/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ SUBDIRS = \
5151
tablefunc\
5252
tcn\
5353
test_decoding\
54+
test_partitioning\
5455
tsm_system_rows\
5556
tsm_system_time\
5657
tsearch2\

‎contrib/aqo/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ DATA = aqo--1.0.sql
77
OBJS = aqo.o auto_tuning.o cardinality_estimation.o cardinality_hooks.o\
88
hash.o machine_learning.o path_utils.o postprocessing.o preprocessing.o\
99
selectivity_cache.o storage.o utils.o$(WIN32RES)
10-
REGRESS = aqo_disabledaqo_manual aqo_intelligent aqo_forced
10+
REGRESS = aqo_disabledaqo_controlled aqo_intelligent aqo_forced
1111

1212
MODULE_big = aqo
1313
ifdefUSE_PGXS

‎contrib/aqo/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ of per-connection.
2121
##Usage
2222

2323
Note that the extension works bad with dynamically generated views. If they
24-
appear in workload, please use "aqo.mode='manual'".
24+
appear in workload, please use "aqo.mode='controlled'".
2525

2626
This extension has intelligent self-tuning mode. If you want to rely completely
2727
on it, just add line "aqo.mode = 'intelligent'" into your postgresql.conf.
@@ -36,8 +36,8 @@ For handling workloads with dynamically generated query structures the forced
3636
mode "aqo.mode = 'forced'" is provided. We cannot guarantee performance
3737
improvement with this mode, but you may try it nevertheless.
3838

39-
If you want to completely control how PostgreSQL optimizes queries, usemanual
40-
mode "aqo.mode = 'manual'" and
39+
If you want to completely control how PostgreSQL optimizes queries, usecontrolled
40+
mode "aqo.mode = 'controlled'" and
4141
contrib/aqo/learn_queries.sh file_with_sql_queries.sql "psql -d YOUR_DATABASE"
4242
where file_with_sql_queries.sql is a textfile with queries on which AQO is
4343
supposed to learn. Please use only SELECT queries file_with_sql_queries.sql.

‎contrib/aqo/aqo.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ intaqo_mode;
1212
staticconststructconfig_enum_entryformat_options[]= {
1313
{"intelligent",AQO_MODE_INTELLIGENT, false},
1414
{"forced",AQO_MODE_FORCED, false},
15-
{"manual",AQO_MODE_MANUAL, false},
15+
{"controlled",AQO_MODE_CONTROLLED, false},
16+
{"disabled",AQO_MODE_DISABLED, false},
1617
{NULL,0, false}
1718
};
1819

@@ -42,6 +43,7 @@ boolauto_tuning;
4243
boolcollect_stat;
4344
booladding_query;
4445
boolexplain_only;
46+
boolexplain_aqo;
4547

4648
/* Query execution time */
4749
instr_timequery_starttime;
@@ -57,6 +59,7 @@ get_parameterized_baserel_size_hook_type prev_get_parameterized_baserel_size_hoo
5759
set_joinrel_size_estimates_hook_typeprev_set_joinrel_size_estimates_hook;
5860
get_parameterized_joinrel_size_hook_typeprev_get_parameterized_joinrel_size_hook;
5961
copy_generic_path_info_hook_typeprev_copy_generic_path_info_hook;
62+
ExplainOnePlan_hook_typeprev_ExplainOnePlan_hook;
6063

6164
/*****************************************************************************
6265
*
@@ -71,7 +74,7 @@ _PG_init(void)
7174
"Mode of aqo usage.",
7275
NULL,
7376
&aqo_mode,
74-
AQO_MODE_MANUAL,
77+
AQO_MODE_CONTROLLED,
7578
format_options,
7679
PGC_SUSET,
7780
0,
@@ -101,6 +104,8 @@ _PG_init(void)
101104
&aqo_get_parameterized_joinrel_size;
102105
prev_copy_generic_path_info_hook=copy_generic_path_info_hook;
103106
copy_generic_path_info_hook=&aqo_copy_generic_path_info;
107+
prev_ExplainOnePlan_hook=ExplainOnePlan_hook;
108+
ExplainOnePlan_hook=print_into_explain;
104109
init_deactivated_queries_storage();
105110
}
106111

@@ -118,6 +123,7 @@ _PG_fini(void)
118123
get_parameterized_joinrel_size_hook=
119124
prev_get_parameterized_joinrel_size_hook;
120125
copy_generic_path_info_hook=prev_copy_generic_path_info_hook;
126+
ExplainOnePlan_hook=prev_ExplainOnePlan_hook;
121127
fini_deactivated_queries_storage();
122128
}
123129

‎contrib/aqo/aqo.h

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
* "forced" mode makes no difference between query types and use AQO for them
3535
* all in the similar way. It considers each new query type as linked to special
3636
* feature space called COMMON with hash 0.
37-
* "manual" mode ignores unknown query types. In this case AQO is completely
37+
* "Controlled" mode ignores unknown query types. In this case AQO is completely
3838
* configured manually by user.
3939
* Current mode is stored in aqo.mode variable.
4040
*
@@ -121,6 +121,7 @@
121121
#include"catalog/indexing.h"
122122
#include"catalog/pg_type.h"
123123
#include"catalog/pg_operator.h"
124+
#include"commands/explain.h"
124125
#include"executor/executor.h"
125126
#include"executor/execdesc.h"
126127
#include"nodes/makefuncs.h"
@@ -147,7 +148,9 @@ typedef enum
147148
/* Treats new query types as linked to the common feature space */
148149
AQO_MODE_FORCED,
149150
/* New query types are not linked with any feature space */
150-
AQO_MODE_MANUAL,
151+
AQO_MODE_CONTROLLED,
152+
/* Aqo is disabled for all queries */
153+
AQO_MODE_DISABLED,
151154
}AQO_MODE;
152155
externintaqo_mode;
153156

@@ -193,6 +196,7 @@ extern bool auto_tuning;
193196
externboolcollect_stat;
194197
externbooladding_query;
195198
externboolexplain_only;
199+
externboolexplain_aqo;
196200

197201
/* Query execution time */
198202
externinstr_timequery_starttime;
@@ -213,6 +217,7 @@ externget_parameterized_joinrel_size_hook_type
213217
prev_get_parameterized_joinrel_size_hook;
214218
externcopy_generic_path_info_hook_type
215219
prev_copy_generic_path_info_hook;
220+
externExplainOnePlan_hook_typeprev_ExplainOnePlan_hook;
216221

217222

218223
/* Hash functions */
@@ -252,6 +257,9 @@ PlannedStmt *call_default_planner(Query *parse,
252257
PlannedStmt*aqo_planner(Query*parse,
253258
intcursorOptions,
254259
ParamListInfoboundParams);
260+
voidprint_into_explain(PlannedStmt*plannedstmt,IntoClause*into,
261+
ExplainState*es,constchar*queryString,
262+
ParamListInfoparams,constinstr_time*planduration);
255263
voiddisable_aqo_for_query(void);
256264

257265
/* Cardinality estimation hooks */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp