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

Commit6d5be22

Browse files
committed
Merged current state of REL_9_5_STABLE. Including newer version of Artur Zakirov sscanf patch
2 parentsb82f06c +2ce19f8 commit6d5be22

File tree

15 files changed

+170
-129
lines changed

15 files changed

+170
-129
lines changed

‎doc/src/sgml/planstats.sgml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ SELECT relpages, reltuples FROM pg_class WHERE relname = 'tenk1';
6767
not requiring a table scan). If that is different from
6868
<structfield>relpages</structfield> then
6969
<structfield>reltuples</structfield> is scaled accordingly to
70-
arrive at a current number-of-rows estimate. Inthis case the value of
70+
arrive at a current number-of-rows estimate. Inthe example above, the value of
7171
<structfield>relpages</structfield> is up-to-date so the rows estimate is
7272
the same as <structfield>reltuples</structfield>.
7373
</para>

‎doc/src/sgml/ref/create_index.sgml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
453453
When this option is used,
454454
<productname>&productname;</> must perform two scans of the table, and in
455455
addition it must wait for all existing transactions that could potentially
456-
use the index to terminate. Thus
456+
modify oruse the index to terminate. Thus
457457
this method requires more total work than a standard index build and takes
458458
significantly longer to complete. However, since it allows normal
459459
operations to continue while the index is built, this method is useful for
@@ -464,12 +464,15 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
464464
<para>
465465
In a concurrent index build, the index is actually entered into
466466
the system catalogs in one transaction, then two table scans occur in
467-
two more transactions. Any transaction active when the second table
468-
scan starts can block concurrent index creation until it completes,
469-
even transactions that only reference the table after the second table
470-
scan starts. Concurrent index creation serially waits for each old
471-
transaction to complete using the method outlined in section <xref
472-
linkend="view-pg-locks">.
467+
two more transactions. Before each table scan, the index build must
468+
wait for existing transactions that have modified the table to terminate.
469+
After the second scan, the index build must wait for any transactions
470+
that have a snapshot (see <xref linkend="mvcc">) predating the second
471+
scan to terminate. Then finally the index can be marked ready for use,
472+
and the <command>CREATE INDEX</> command terminates.
473+
Even then, however, the index may not be immediately usable for queries:
474+
in the worst case, it cannot be used as long as transactions exist that
475+
predate the start of the index build.
473476
</para>
474477

475478
<para>

‎doc/src/sgml/ref/pg_ctl-ref.sgml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,9 @@ doc/src/sgml/ref/pg_ctl-ref.sgml
362362
<listitem>
363363
<para>
364364
The maximum number of seconds to wait when waiting for startup or
365-
shutdown to complete. The default is 60 seconds.
365+
shutdown to complete. Defaults to the value of the
366+
<envar>PGCTLTIMEOUT</> environment variable or, if not set, to 60
367+
seconds.
366368
</para>
367369
</listitem>
368370
</varlistentry>
@@ -486,6 +488,17 @@ doc/src/sgml/ref/pg_ctl-ref.sgml
486488
<title>Environment</title>
487489

488490
<variablelist>
491+
<varlistentry>
492+
<term><envar>PGCTLTIMEOUT</envar></term>
493+
494+
<listitem>
495+
<para>
496+
Default limit on the number of seconds to wait when waiting for startup
497+
or shutdown to complete. If not set, the default is 60 seconds.
498+
</para>
499+
</listitem>
500+
</varlistentry>
501+
489502
<varlistentry>
490503
<term><envar>PGDATA</envar></term>
491504

‎doc/src/sgml/release-9.5.sgml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1770,7 +1770,7 @@ Add GUC and storage parameter to set the maximum size of GIN pending list.
17701770

17711771
<listitem>
17721772
<!--
1773-
2015-06-21 [ad89a5d] Alvaro..:Add transforms to pg_get_object_address and fr..
1773+
2014-12-23 [7eca575] Alvaro..:get_object_address: separate domain constraints..
17741774
-->
17751775
<para>
17761776
Support comments on <link linkend="SQL-CREATEDOMAIN">domain

‎doc/src/sgml/runtime.sgml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -645,13 +645,13 @@ psql: could not connect to server: No such file or directory
645645
<row>
646646
<entry><varname>SEMMNI</></>
647647
<entry>Maximum number of semaphore identifiers (i.e., sets)</>
648-
<entry>at least <literal>ceil((max_connections + autovacuum_max_workers +4) / 16)</literal></>
648+
<entry>at least <literal>ceil((max_connections + autovacuum_max_workers +max_worker_processes + 5) / 16)</literal></>
649649
</row>
650650

651651
<row>
652652
<entry><varname>SEMMNS</></>
653653
<entry>Maximum number of semaphores system-wide</>
654-
<entry><literal>ceil((max_connections + autovacuum_max_workers +4) / 16) * 17</literal> plus room for other applications</>
654+
<entry><literal>ceil((max_connections + autovacuum_max_workers +max_worker_processes + 5) / 16) * 17</literal> plus room for other applications</>
655655
</row>
656656

657657
<row>
@@ -698,21 +698,23 @@ psql: could not connect to server: No such file or directory
698698
</para>
699699

700700
<para>
701-
<productname>&productname;</> uses one semaphore per allowed connection
702-
(<xref linkend="guc-max-connections">) and allowed autovacuum worker
703-
process (<xref linkend="guc-autovacuum-max-workers">), in sets of 16.
701+
<productname>PostgreSQL</> uses one semaphore per allowed connection
702+
(<xref linkend="guc-max-connections">), allowed autovacuum worker process
703+
(<xref linkend="guc-autovacuum-max-workers">) and allowed background
704+
process (<xref linkend="guc-max-worker-processes">), in sets of 16.
704705
Each such set will
705706
also contain a 17th semaphore which contains a <quote>magic
706707
number</quote>, to detect collision with semaphore sets used by
707708
other applications. The maximum number of semaphores in the system
708709
is set by <varname>SEMMNS</>, which consequently must be at least
709710
as high as <varname>max_connections</> plus
710-
<varname>autovacuum_max_workers</>, plus one extra for each 16
711+
<varname>autovacuum_max_workers</> plus <varname>max_worker_processes</>,
712+
plus one extra for each 16
711713
allowed connections plus workers (see the formula in <xref
712714
linkend="sysvipc-parameters">). The parameter <varname>SEMMNI</>
713715
determines the limit on the number of semaphore sets that can
714716
exist on the system at one time. Hence this parameter must be at
715-
least <literal>ceil((max_connections + autovacuum_max_workers +4) / 16)</>.
717+
least <literal>ceil((max_connections + autovacuum_max_workers +max_worker_processes + 5) / 16)</>.
716718
Lowering the number
717719
of allowed connections is a temporary workaround for failures,
718720
which are usually confusingly worded <quote>No space

‎src/backend/regex/regc_lex.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -792,13 +792,13 @@ lexescape(struct vars * v)
792792
break;
793793
caseCHR('u'):
794794
c=lexdigits(v,16,4,4);
795-
if (ISERR()||c<CHR_MIN||c>CHR_MAX)
795+
if (ISERR()||!CHR_IS_IN_RANGE(c))
796796
FAILW(REG_EESCAPE);
797797
RETV(PLAIN,c);
798798
break;
799799
caseCHR('U'):
800800
c=lexdigits(v,16,8,8);
801-
if (ISERR()||c<CHR_MIN||c>CHR_MAX)
801+
if (ISERR()||!CHR_IS_IN_RANGE(c))
802802
FAILW(REG_EESCAPE);
803803
RETV(PLAIN,c);
804804
break;
@@ -816,7 +816,7 @@ lexescape(struct vars * v)
816816
caseCHR('x'):
817817
NOTE(REG_UUNPORT);
818818
c=lexdigits(v,16,1,255);/* REs >255 long outside spec */
819-
if (ISERR()||c<CHR_MIN||c>CHR_MAX)
819+
if (ISERR()||!CHR_IS_IN_RANGE(c))
820820
FAILW(REG_EESCAPE);
821821
RETV(PLAIN,c);
822822
break;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp