diff options
Diffstat (limited to 'doc/src')
| -rw-r--r-- | doc/src/sgml/func.sgml | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 1cd8b11334d..1f63dc6dbac 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -26101,6 +26101,22 @@ LOG: Grand total: 1651920 bytes in 201 blocks; 622360 free (88 chunks); 1029560 <row> <entry role="func_table_entry"><para role="func_signature"> <indexterm> + <primary>pg_dissect_walfile_name</primary> + </indexterm> + <function>pg_dissect_walfile_name</function> ( <parameter>file_name</parameter> <type>text</type> ) + <returnvalue>record</returnvalue> + ( <parameter>segno</parameter> <type>numeric</type>, + <parameter>timeline_id</parameter> <type>bigint</type> ) + </para> + <para> + Extracts the file sequence number and timeline ID from a WAL file + name. + </para></entry> + </row> + + <row> + <entry role="func_table_entry"><para role="func_signature"> + <indexterm> <primary>pg_wal_lsn_diff</primary> </indexterm> <function>pg_wal_lsn_diff</function> ( <parameter>lsn1</parameter> <type>pg_lsn</type>, <parameter>lsn2</parameter> <type>pg_lsn</type> ) @@ -26155,6 +26171,23 @@ postgres=# SELECT * FROM pg_walfile_name_offset((pg_backup_stop()).lsn); needs to be archived. </para> + <para> + <function>pg_dissect_walfile_name</function> is useful to compute a + <acronym>LSN</acronym> from a file offset and WAL file name, for example: +<programlisting> +postgres=# \set file_name '000000010000000100C000AB' +postgres=# \set offset 256 +postgres=# SELECT '0/0'::pg_lsn + pd.segno * ps.setting::int + :offset AS lsn + FROM pg_dissect_walfile_name(:'file_name') pd, + pg_show_all_settings() ps + WHERE ps.name = 'wal_segment_size'; + lsn +--------------- + C001/AB000100 +(1 row) +</programlisting> + </para> + </sect2> <sect2 id="functions-recovery-control"> |
