aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFujii Masao <fujii@postgresql.org>2014-08-11 23:19:23 +0900
committerFujii Masao <fujii@postgresql.org>2014-08-11 23:19:23 +0900
commita91fcd93ca038e60034efdf681c9323e4bce4385 (patch)
tree3e3f1a5ef189589fd75b67639c911055b7e51560
parent79b0bc1e9530c05dbeb5c91232faf3ee184439f3 (diff)
downloadpostgresql-a91fcd93ca038e60034efdf681c9323e4bce4385.tar.gz
postgresql-a91fcd93ca038e60034efdf681c9323e4bce4385.zip
Fix failure to follow the directions when "init" fork was added.
Specifically this commit updates forkname_to_number() so that the HINT message includes "init" fork, and also adds the description of "init" fork into pg_relation_size() document. This is a part of the commit 2d00190495b22e0d0ba351b2cda9c95fb2e3d083 which has fixed the same oversight in master and 9.4. Back-patch to 9.1 where "init" fork was added.
-rw-r--r--doc/src/sgml/func.sgml8
-rw-r--r--src/backend/catalog/catalog.c3
2 files changed, 9 insertions, 2 deletions
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 86d3a917b92..ac25d920358 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -15596,7 +15596,7 @@ postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup());
<entry><type>bigint</type></entry>
<entry>
Disk space used by the specified fork (<literal>'main'</literal>,
- <literal>'fsm'</literal> or <literal>'vm'</>)
+ <literal>'fsm'</literal>, <literal>'vm'</>, or <literal>'init'</>)
of the specified table or index
</entry>
</row>
@@ -15730,6 +15730,12 @@ postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup());
(see <xref linkend="storage-vm">) associated with the relation.
</para>
</listitem>
+ <listitem>
+ <para>
+ <literal>'init'</literal> returns the size of the initialization fork,
+ if any, (see <xref linkend="storage-init">) associated with the relation.
+ </para>
+ </listitem>
</itemizedlist>
</para>
diff --git a/src/backend/catalog/catalog.c b/src/backend/catalog/catalog.c
index ea888448904..d021a3894c4 100644
--- a/src/backend/catalog/catalog.c
+++ b/src/backend/catalog/catalog.c
@@ -61,7 +61,8 @@ forkname_to_number(char *forkName)
ereport(ERROR,
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
errmsg("invalid fork name"),
- errhint("Valid fork names are \"main\", \"fsm\", and \"vm\".")));
+ errhint("Valid fork names are \"main\", \"fsm\", "
+ "\"vm\", and \"init\".")));
return InvalidForkNumber; /* keep compiler quiet */
}