mirror of
https://github.com/postgres/postgres.git
synced 2025-05-03 22:24:49 +03:00
docs: properly capitalize and space kB, MB, GB, TB
This commit is contained in:
parent
af33039317
commit
ca0c37b56f
@ -177,7 +177,7 @@ CREATE INDEX
|
|||||||
query. We could reduce that by specifying a larger signature length.
|
query. We could reduce that by specifying a larger signature length.
|
||||||
In this example, creating the index with <literal>length=200</>
|
In this example, creating the index with <literal>length=200</>
|
||||||
reduced the number of false positives to 55; but it doubled the index size
|
reduced the number of false positives to 55; but it doubled the index size
|
||||||
(to 306 MB) and ended up being slower for this query (125 ms overall).
|
(to 306MB) and ended up being slower for this query (125 ms overall).
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@ -202,7 +202,7 @@ CREATE INDEX
|
|||||||
</programlisting>
|
</programlisting>
|
||||||
Although this query runs much faster than with either of the single
|
Although this query runs much faster than with either of the single
|
||||||
indexes, we pay a large penalty in index size. Each of the single-column
|
indexes, we pay a large penalty in index size. Each of the single-column
|
||||||
btree indexes occupies 214 MB, so the total space needed is over 1.2GB,
|
btree indexes occupies 214MB, so the total space needed is over 1.2GB,
|
||||||
more than 8 times the space used by the bloom index.
|
more than 8 times the space used by the bloom index.
|
||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
@ -4021,7 +4021,7 @@
|
|||||||
segments or <quote>pages</> small enough to be conveniently stored as rows
|
segments or <quote>pages</> small enough to be conveniently stored as rows
|
||||||
in <structname>pg_largeobject</structname>.
|
in <structname>pg_largeobject</structname>.
|
||||||
The amount of data per page is defined to be <symbol>LOBLKSIZE</> (which is currently
|
The amount of data per page is defined to be <symbol>LOBLKSIZE</> (which is currently
|
||||||
<literal>BLCKSZ/4</>, or typically 2 kB).
|
<literal>BLCKSZ/4</>, or typically 2kB).
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -1903,7 +1903,7 @@ include_dir 'conf.d'
|
|||||||
cache, where performance might degrade. This setting may have no
|
cache, where performance might degrade. This setting may have no
|
||||||
effect on some platforms. The valid range is between
|
effect on some platforms. The valid range is between
|
||||||
<literal>0</literal>, which disables controlled writeback, and
|
<literal>0</literal>, which disables controlled writeback, and
|
||||||
<literal>2MB</literal>. The default is <literal>512Kb</> on Linux,
|
<literal>2MB</literal>. The default is <literal>512kB</> on Linux,
|
||||||
<literal>0</> elsewhere. (Non-default values of
|
<literal>0</> elsewhere. (Non-default values of
|
||||||
<symbol>BLCKSZ</symbol> change the default and maximum.)
|
<symbol>BLCKSZ</symbol> change the default and maximum.)
|
||||||
This parameter can only be set in the <filename>postgresql.conf</>
|
This parameter can only be set in the <filename>postgresql.conf</>
|
||||||
@ -2660,7 +2660,7 @@ include_dir 'conf.d'
|
|||||||
than the OS's page cache, where performance might degrade. This
|
than the OS's page cache, where performance might degrade. This
|
||||||
setting may have no effect on some platforms. The valid range is
|
setting may have no effect on some platforms. The valid range is
|
||||||
between <literal>0</literal>, which disables controlled writeback,
|
between <literal>0</literal>, which disables controlled writeback,
|
||||||
and <literal>2MB</literal>. The default is <literal>256Kb</> on
|
and <literal>2MB</literal>. The default is <literal>256kB</> on
|
||||||
Linux, <literal>0</> elsewhere. (Non-default values of
|
Linux, <literal>0</> elsewhere. (Non-default values of
|
||||||
<symbol>BLCKSZ</symbol> change the default and maximum.)
|
<symbol>BLCKSZ</symbol> change the default and maximum.)
|
||||||
This parameter can only be set in the <filename>postgresql.conf</>
|
This parameter can only be set in the <filename>postgresql.conf</>
|
||||||
@ -2702,7 +2702,7 @@ include_dir 'conf.d'
|
|||||||
checkpoints. This is a soft limit; WAL size can exceed
|
checkpoints. This is a soft limit; WAL size can exceed
|
||||||
<varname>max_wal_size</> under special circumstances, like
|
<varname>max_wal_size</> under special circumstances, like
|
||||||
under heavy load, a failing <varname>archive_command</>, or a high
|
under heavy load, a failing <varname>archive_command</>, or a high
|
||||||
<varname>wal_keep_segments</> setting. The default is 1 GB.
|
<varname>wal_keep_segments</> setting. The default is 1GB.
|
||||||
Increasing this parameter can increase the amount of time needed for
|
Increasing this parameter can increase the amount of time needed for
|
||||||
crash recovery.
|
crash recovery.
|
||||||
This parameter can only be set in the <filename>postgresql.conf</>
|
This parameter can only be set in the <filename>postgresql.conf</>
|
||||||
@ -2723,7 +2723,7 @@ include_dir 'conf.d'
|
|||||||
always recycled for future use at a checkpoint, rather than removed.
|
always recycled for future use at a checkpoint, rather than removed.
|
||||||
This can be used to ensure that enough WAL space is reserved to
|
This can be used to ensure that enough WAL space is reserved to
|
||||||
handle spikes in WAL usage, for example when running large batch
|
handle spikes in WAL usage, for example when running large batch
|
||||||
jobs. The default is 80 MB.
|
jobs. The default is 80MB.
|
||||||
This parameter can only be set in the <filename>postgresql.conf</>
|
This parameter can only be set in the <filename>postgresql.conf</>
|
||||||
file or on the server command line.
|
file or on the server command line.
|
||||||
</para>
|
</para>
|
||||||
|
@ -1120,7 +1120,7 @@ SELECT '52093.89'::money::numeric::float8;
|
|||||||
the physical requirement on disk might be less. Very long values are also
|
the physical requirement on disk might be less. Very long values are also
|
||||||
stored in background tables so that they do not interfere with rapid
|
stored in background tables so that they do not interfere with rapid
|
||||||
access to shorter column values. In any case, the longest
|
access to shorter column values. In any case, the longest
|
||||||
possible character string that can be stored is about 1 GB. (The
|
possible character string that can be stored is about 1GB. (The
|
||||||
maximum value that will be allowed for <replaceable>n</> in the data
|
maximum value that will be allowed for <replaceable>n</> in the data
|
||||||
type declaration is less than that. It wouldn't be useful to
|
type declaration is less than that. It wouldn't be useful to
|
||||||
change this because with multibyte character encodings the number of
|
change this because with multibyte character encodings the number of
|
||||||
|
@ -8165,7 +8165,7 @@ if (*(int2 *)sqldata->sqlvar[i].sqlind != 0)
|
|||||||
<term><literal>sqlilongdata</></term>
|
<term><literal>sqlilongdata</></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
It equals to <literal>sqldata</literal> if <literal>sqllen</literal> is larger than 32KB.
|
It equals to <literal>sqldata</literal> if <literal>sqllen</literal> is larger than 32kB.
|
||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
@ -326,12 +326,12 @@ su - postgres
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Also check that you have sufficient disk space. You will need about
|
Also check that you have sufficient disk space. You will need about
|
||||||
100 MB for the source tree during compilation and about 20 MB for
|
100MB for the source tree during compilation and about 20MB for
|
||||||
the installation directory. An empty database cluster takes about
|
the installation directory. An empty database cluster takes about
|
||||||
35 MB; databases take about five times the amount of space that a
|
35MB; databases take about five times the amount of space that a
|
||||||
flat text file with the same data would take. If you are going to
|
flat text file with the same data would take. If you are going to
|
||||||
run the regression tests you will temporarily need up to an extra
|
run the regression tests you will temporarily need up to an extra
|
||||||
150 MB. Use the <command>df</command> command to check free disk
|
150MB. Use the <command>df</command> command to check free disk
|
||||||
space.
|
space.
|
||||||
</para>
|
</para>
|
||||||
</sect1>
|
</sect1>
|
||||||
@ -2241,7 +2241,7 @@ createlang: language installation failed: ERROR: could not load library "/opt/d
|
|||||||
createlang: language installation failed: ERROR: could not load library "/opt/dbs/pgsql748/lib/plperl.so": Bad address
|
createlang: language installation failed: ERROR: could not load library "/opt/dbs/pgsql748/lib/plperl.so": Bad address
|
||||||
</screen>
|
</screen>
|
||||||
Another example is out of memory errors in the PostgreSQL server
|
Another example is out of memory errors in the PostgreSQL server
|
||||||
logs, with every memory allocation near or greater than 256 MB
|
logs, with every memory allocation near or greater than 256MB
|
||||||
failing.
|
failing.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -2250,8 +2250,8 @@ createlang: language installation failed: ERROR: could not load library "/opt/d
|
|||||||
and memory model used by the server process. By default, all
|
and memory model used by the server process. By default, all
|
||||||
binaries built on AIX are 32-bit. This does not depend upon
|
binaries built on AIX are 32-bit. This does not depend upon
|
||||||
hardware type or kernel in use. These 32-bit processes are
|
hardware type or kernel in use. These 32-bit processes are
|
||||||
limited to 4 GB of memory laid out in 256 MB segments using one
|
limited to 4GB of memory laid out in 256MB segments using one
|
||||||
of a few models. The default allows for less than 256 MB in the
|
of a few models. The default allows for less than 256MB in the
|
||||||
heap as it shares a single segment with the stack.
|
heap as it shares a single segment with the stack.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@ -2282,7 +2282,7 @@ createlang: language installation failed: ERROR: could not load library "/opt/d
|
|||||||
settings to find a configuration that works satisfactorily. This
|
settings to find a configuration that works satisfactorily. This
|
||||||
use of <symbol>LDR_CNTRL</symbol> tells AIX that you want the
|
use of <symbol>LDR_CNTRL</symbol> tells AIX that you want the
|
||||||
server to have <symbol>MAXDATA</symbol> bytes set aside for the
|
server to have <symbol>MAXDATA</symbol> bytes set aside for the
|
||||||
heap, allocated in 256 MB segments. When you find a workable
|
heap, allocated in 256MB segments. When you find a workable
|
||||||
configuration,
|
configuration,
|
||||||
<command>ldedit</command> can be used to modify the binaries so
|
<command>ldedit</command> can be used to modify the binaries so
|
||||||
that they default to using the desired heap size. PostgreSQL can
|
that they default to using the desired heap size. PostgreSQL can
|
||||||
|
@ -50,8 +50,8 @@
|
|||||||
larger than a single database page into a secondary storage area per table.
|
larger than a single database page into a secondary storage area per table.
|
||||||
This makes the large object facility partially obsolete. One
|
This makes the large object facility partially obsolete. One
|
||||||
remaining advantage of the large object facility is that it allows values
|
remaining advantage of the large object facility is that it allows values
|
||||||
up to 4 TB in size, whereas <acronym>TOAST</acronym>ed fields can be at
|
up to 4TB in size, whereas <acronym>TOAST</acronym>ed fields can be at
|
||||||
most 1 GB. Also, reading and updating portions of a large object can be
|
most 1GB. Also, reading and updating portions of a large object can be
|
||||||
done efficiently, while most operations on a <acronym>TOAST</acronym>ed
|
done efficiently, while most operations on a <acronym>TOAST</acronym>ed
|
||||||
field will read or write the whole value as a unit.
|
field will read or write the whole value as a unit.
|
||||||
</para>
|
</para>
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
A <firstterm>label path</firstterm> is a sequence of zero or more
|
A <firstterm>label path</firstterm> is a sequence of zero or more
|
||||||
labels separated by dots, for example <literal>L1.L2.L3</>, representing
|
labels separated by dots, for example <literal>L1.L2.L3</>, representing
|
||||||
a path from the root of a hierarchical tree to a particular node. The
|
a path from the root of a hierarchical tree to a particular node. The
|
||||||
length of a label path must be less than 65Kb, but keeping it under 2Kb is
|
length of a label path must be less than 65kB, but keeping it under 2kB is
|
||||||
preferable. In practice this is not a major limitation; for example,
|
preferable. In practice this is not a major limitation; for example,
|
||||||
the longest label path in the DMOZ catalog (<ulink
|
the longest label path in the DMOZ catalog (<ulink
|
||||||
url="http://www.dmoz.org"></ulink>) is about 240 bytes.
|
url="http://www.dmoz.org"></ulink>) is about 240 bytes.
|
||||||
|
@ -1973,7 +1973,7 @@ The commands accepted in walsender mode are:
|
|||||||
Limit (throttle) the maximum amount of data transferred from server
|
Limit (throttle) the maximum amount of data transferred from server
|
||||||
to client per unit of time. The expected unit is kilobytes per second.
|
to client per unit of time. The expected unit is kilobytes per second.
|
||||||
If this option is specified, the value must either be equal to zero
|
If this option is specified, the value must either be equal to zero
|
||||||
or it must fall within the range from 32 kB through 1 GB (inclusive).
|
or it must fall within the range from 32kB through 1GB (inclusive).
|
||||||
If zero is passed or the option is not specified, no restriction is
|
If zero is passed or the option is not specified, no restriction is
|
||||||
imposed on the transfer.
|
imposed on the transfer.
|
||||||
</para>
|
</para>
|
||||||
|
@ -968,7 +968,7 @@ option SEMMAP=256
|
|||||||
</term>
|
</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
The default maximum segment size is 32 MB, and the
|
The default maximum segment size is 32MB, and the
|
||||||
default maximum total size is 2097152
|
default maximum total size is 2097152
|
||||||
pages. A page is almost always 4096 bytes except in unusual
|
pages. A page is almost always 4096 bytes except in unusual
|
||||||
kernel configurations with <quote>huge pages</quote>
|
kernel configurations with <quote>huge pages</quote>
|
||||||
@ -977,7 +977,7 @@ option SEMMAP=256
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
The shared memory size settings can be changed via the
|
The shared memory size settings can be changed via the
|
||||||
<command>sysctl</command> interface. For example, to allow 16 GB:
|
<command>sysctl</command> interface. For example, to allow 16GB:
|
||||||
<screen>
|
<screen>
|
||||||
<prompt>$</prompt> <userinput>sysctl -w kernel.shmmax=17179869184</userinput>
|
<prompt>$</prompt> <userinput>sysctl -w kernel.shmmax=17179869184</userinput>
|
||||||
<prompt>$</prompt> <userinput>sysctl -w kernel.shmall=4194304</userinput>
|
<prompt>$</prompt> <userinput>sysctl -w kernel.shmall=4194304</userinput>
|
||||||
@ -1032,7 +1032,7 @@ kern.sysv.shmall=1024
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<varname>SHMALL</> is measured in 4 kB pages on this platform.
|
<varname>SHMALL</> is measured in 4kB pages on this platform.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
@ -1075,7 +1075,7 @@ sysctl -w kern.sysv.shmall
|
|||||||
</term>
|
</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
In the default configuration, only 512 kB of shared memory per
|
In the default configuration, only 512kB of shared memory per
|
||||||
segment is allowed. To increase the setting, first change to the
|
segment is allowed. To increase the setting, first change to the
|
||||||
directory <filename>/etc/conf/cf.d</>. To display the current value of
|
directory <filename>/etc/conf/cf.d</>. To display the current value of
|
||||||
<varname>SHMMAX</>, run:
|
<varname>SHMMAX</>, run:
|
||||||
@ -1180,7 +1180,7 @@ project.max-msg-ids=(priv,4096,deny)
|
|||||||
<listitem>
|
<listitem>
|
||||||
<para>
|
<para>
|
||||||
On <productname>UnixWare</> 7, the maximum size for shared
|
On <productname>UnixWare</> 7, the maximum size for shared
|
||||||
memory segments is 512 kB in the default configuration.
|
memory segments is 512kB in the default configuration.
|
||||||
To display the current value of <varname>SHMMAX</>, run:
|
To display the current value of <varname>SHMMAX</>, run:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
/etc/conf/bin/idtune -g SHMMAX
|
/etc/conf/bin/idtune -g SHMMAX
|
||||||
|
@ -755,7 +755,7 @@ typedef struct spgLeafConsistentOut
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Individual leaf tuples and inner tuples must fit on a single index page
|
Individual leaf tuples and inner tuples must fit on a single index page
|
||||||
(8KB by default). Therefore, when indexing values of variable-length
|
(8kB by default). Therefore, when indexing values of variable-length
|
||||||
data types, long values can only be supported by methods such as radix
|
data types, long values can only be supported by methods such as radix
|
||||||
trees, in which each level of the tree includes a prefix that is short
|
trees, in which each level of the tree includes a prefix that is short
|
||||||
enough to fit on a page, and the final leaf level includes a suffix also
|
enough to fit on a page, and the final leaf level includes a suffix also
|
||||||
|
@ -217,11 +217,11 @@ function.
|
|||||||
</caution>
|
</caution>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
When a table or index exceeds 1 GB, it is divided into gigabyte-sized
|
When a table or index exceeds 1GB, it is divided into gigabyte-sized
|
||||||
<firstterm>segments</>. The first segment's file name is the same as the
|
<firstterm>segments</>. The first segment's file name is the same as the
|
||||||
filenode; subsequent segments are named filenode.1, filenode.2, etc.
|
filenode; subsequent segments are named filenode.1, filenode.2, etc.
|
||||||
This arrangement avoids problems on platforms that have file size limitations.
|
This arrangement avoids problems on platforms that have file size limitations.
|
||||||
(Actually, 1 GB is just the default segment size. The segment size can be
|
(Actually, 1GB is just the default segment size. The segment size can be
|
||||||
adjusted using the configuration option <option>--with-segsize</option>
|
adjusted using the configuration option <option>--with-segsize</option>
|
||||||
when building <productname>PostgreSQL</>.)
|
when building <productname>PostgreSQL</>.)
|
||||||
In principle, free space map and visibility map forks could require multiple
|
In principle, free space map and visibility map forks could require multiple
|
||||||
@ -303,7 +303,7 @@ Oversized-Attribute Storage Technique).
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
<productname>PostgreSQL</productname> uses a fixed page size (commonly
|
<productname>PostgreSQL</productname> uses a fixed page size (commonly
|
||||||
8 kB), and does not allow tuples to span multiple pages. Therefore, it is
|
8kB), and does not allow tuples to span multiple pages. Therefore, it is
|
||||||
not possible to store very large field values directly. To overcome
|
not possible to store very large field values directly. To overcome
|
||||||
this limitation, large field values are compressed and/or broken up into
|
this limitation, large field values are compressed and/or broken up into
|
||||||
multiple physical rows. This happens transparently to the user, with only
|
multiple physical rows. This happens transparently to the user, with only
|
||||||
@ -336,7 +336,7 @@ See <xref linkend="xtypes-toast"> for more detail.)
|
|||||||
<acronym>TOAST</> usurps two bits of the varlena length word (the high-order
|
<acronym>TOAST</> usurps two bits of the varlena length word (the high-order
|
||||||
bits on big-endian machines, the low-order bits on little-endian machines),
|
bits on big-endian machines, the low-order bits on little-endian machines),
|
||||||
thereby limiting the logical size of any value of a <acronym>TOAST</>-able
|
thereby limiting the logical size of any value of a <acronym>TOAST</>-able
|
||||||
data type to 1 GB (2<superscript>30</> - 1 bytes). When both bits are zero,
|
data type to 1GB (2<superscript>30</> - 1 bytes). When both bits are zero,
|
||||||
the value is an ordinary un-<acronym>TOAST</>ed value of the data type, and
|
the value is an ordinary un-<acronym>TOAST</>ed value of the data type, and
|
||||||
the remaining bits of the length word give the total datum size (including
|
the remaining bits of the length word give the total datum size (including
|
||||||
length word) in bytes. When the highest-order or lowest-order bit is set,
|
length word) in bytes. When the highest-order or lowest-order bit is set,
|
||||||
@ -344,7 +344,7 @@ the value has only a single-byte header instead of the normal four-byte
|
|||||||
header, and the remaining bits of that byte give the total datum size
|
header, and the remaining bits of that byte give the total datum size
|
||||||
(including length byte) in bytes. This alternative supports space-efficient
|
(including length byte) in bytes. This alternative supports space-efficient
|
||||||
storage of values shorter than 127 bytes, while still allowing the data type
|
storage of values shorter than 127 bytes, while still allowing the data type
|
||||||
to grow to 1 GB at need. Values with single-byte headers aren't aligned on
|
to grow to 1GB at need. Values with single-byte headers aren't aligned on
|
||||||
any particular boundary, whereas values with four-byte headers are aligned on
|
any particular boundary, whereas values with four-byte headers are aligned on
|
||||||
at least a four-byte boundary; this omission of alignment padding provides
|
at least a four-byte boundary; this omission of alignment padding provides
|
||||||
additional space savings that is significant compared to short values.
|
additional space savings that is significant compared to short values.
|
||||||
@ -420,10 +420,10 @@ bytes regardless of the actual size of the represented value.
|
|||||||
<para>
|
<para>
|
||||||
The <acronym>TOAST</> management code is triggered only
|
The <acronym>TOAST</> management code is triggered only
|
||||||
when a row value to be stored in a table is wider than
|
when a row value to be stored in a table is wider than
|
||||||
<symbol>TOAST_TUPLE_THRESHOLD</> bytes (normally 2 kB).
|
<symbol>TOAST_TUPLE_THRESHOLD</> bytes (normally 2kB).
|
||||||
The <acronym>TOAST</> code will compress and/or move
|
The <acronym>TOAST</> code will compress and/or move
|
||||||
field values out-of-line until the row value is shorter than
|
field values out-of-line until the row value is shorter than
|
||||||
<symbol>TOAST_TUPLE_TARGET</> bytes (also normally 2 kB)
|
<symbol>TOAST_TUPLE_TARGET</> bytes (also normally 2kB)
|
||||||
or no more gains can be had. During an UPDATE
|
or no more gains can be had. During an UPDATE
|
||||||
operation, values of unchanged fields are normally preserved as-is; so an
|
operation, values of unchanged fields are normally preserved as-is; so an
|
||||||
UPDATE of a row with out-of-line values incurs no <acronym>TOAST</> costs if
|
UPDATE of a row with out-of-line values incurs no <acronym>TOAST</> costs if
|
||||||
@ -491,7 +491,7 @@ containing typical HTML pages and their URLs was stored in about half of the
|
|||||||
raw data size including the <acronym>TOAST</> table, and that the main table
|
raw data size including the <acronym>TOAST</> table, and that the main table
|
||||||
contained only about 10% of the entire data (the URLs and some small HTML
|
contained only about 10% of the entire data (the URLs and some small HTML
|
||||||
pages). There was no run time difference compared to an un-<acronym>TOAST</>ed
|
pages). There was no run time difference compared to an un-<acronym>TOAST</>ed
|
||||||
comparison table, in which all the HTML pages were cut down to 7 kB to fit.
|
comparison table, in which all the HTML pages were cut down to 7kB to fit.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
@ -512,7 +512,7 @@ pointers to <firstterm>expanded</> data.
|
|||||||
Indirect <acronym>TOAST</> pointers simply point at a non-indirect varlena
|
Indirect <acronym>TOAST</> pointers simply point at a non-indirect varlena
|
||||||
value stored somewhere in memory. This case was originally created merely
|
value stored somewhere in memory. This case was originally created merely
|
||||||
as a proof of concept, but it is currently used during logical decoding to
|
as a proof of concept, but it is currently used during logical decoding to
|
||||||
avoid possibly having to create physical tuples exceeding 1 GB (as pulling
|
avoid possibly having to create physical tuples exceeding 1GB (as pulling
|
||||||
all out-of-line field values into the tuple might do). The case is of
|
all out-of-line field values into the tuple might do). The case is of
|
||||||
limited use since the creator of the pointer datum is entirely responsible
|
limited use since the creator of the pointer datum is entirely responsible
|
||||||
that the referenced data survives for as long as the pointer could exist,
|
that the referenced data survives for as long as the pointer could exist,
|
||||||
@ -703,7 +703,7 @@ an item is a row; in an index, an item is an index entry.
|
|||||||
|
|
||||||
<para>
|
<para>
|
||||||
Every table and index is stored as an array of <firstterm>pages</> of a
|
Every table and index is stored as an array of <firstterm>pages</> of a
|
||||||
fixed size (usually 8 kB, although a different page size can be selected
|
fixed size (usually 8kB, although a different page size can be selected
|
||||||
when compiling the server). In a table, all the pages are logically
|
when compiling the server). In a table, all the pages are logically
|
||||||
equivalent, so a particular item (row) can be stored in any page. In
|
equivalent, so a particular item (row) can be stored in any page. In
|
||||||
indexes, the first page is generally reserved as a <firstterm>metapage</>
|
indexes, the first page is generally reserved as a <firstterm>metapage</>
|
||||||
|
@ -475,7 +475,7 @@
|
|||||||
linkend="guc-checkpoint-timeout"> seconds, or if
|
linkend="guc-checkpoint-timeout"> seconds, or if
|
||||||
<xref linkend="guc-max-wal-size"> is about to be exceeded,
|
<xref linkend="guc-max-wal-size"> is about to be exceeded,
|
||||||
whichever comes first.
|
whichever comes first.
|
||||||
The default settings are 5 minutes and 1 GB, respectively.
|
The default settings are 5 minutes and 1GB, respectively.
|
||||||
If no WAL has been written since the previous checkpoint, new checkpoints
|
If no WAL has been written since the previous checkpoint, new checkpoints
|
||||||
will be skipped even if <varname>checkpoint_timeout</> has passed.
|
will be skipped even if <varname>checkpoint_timeout</> has passed.
|
||||||
(If WAL archiving is being used and you want to put a lower limit on how
|
(If WAL archiving is being used and you want to put a lower limit on how
|
||||||
@ -735,10 +735,10 @@
|
|||||||
<para>
|
<para>
|
||||||
<acronym>WAL</acronym> logs are stored in the directory
|
<acronym>WAL</acronym> logs are stored in the directory
|
||||||
<filename>pg_xlog</filename> under the data directory, as a set of
|
<filename>pg_xlog</filename> under the data directory, as a set of
|
||||||
segment files, normally each 16 MB in size (but the size can be changed
|
segment files, normally each 16MB in size (but the size can be changed
|
||||||
by altering the <option>--with-wal-segsize</> configure option when
|
by altering the <option>--with-wal-segsize</> configure option when
|
||||||
building the server). Each segment is divided into pages, normally
|
building the server). Each segment is divided into pages, normally
|
||||||
8 kB each (this size can be changed via the <option>--with-wal-blocksize</>
|
8kB each (this size can be changed via the <option>--with-wal-blocksize</>
|
||||||
configure option). The log record headers are described in
|
configure option). The log record headers are described in
|
||||||
<filename>access/xlogrecord.h</filename>; the record content is dependent
|
<filename>access/xlogrecord.h</filename>; the record content is dependent
|
||||||
on the type of event that is being logged. Segment files are given
|
on the type of event that is being logged. Segment files are given
|
||||||
|
Loading…
x
Reference in New Issue
Block a user