nrp.diff

text/x-patch

Filename: nrp.diff
Type: text/x-patch
Part: 0
Message: Re: Named restore points

Patch

Same data as JSON: GET /api/v1/attachments/:id/patch the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes. API reference →
Format: unified
File+
doc/src/sgml/func.sgml 0 0
src/backend/access/transam/xlog.c 0 0
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 736eb67..fe7e42b 100644
*** a/doc/src/sgml/func.sgml
--- b/doc/src/sgml/func.sgml
*************** postgres=# select pg_start_backup('label
*** 14070,14075 ****
--- 14070,14084 ----
     </para>
  
     <para>
+    <function>pg_create_restore_point</> creates a named transaction log record
+    that can be used as recovery point, and then returns the transaction log
+    record location. The given name can be used in <xref
+    linkend="recovery-target-name"> that specifies the point up to which recovery
+    will proceed. Avoid creating restore points that have the same name, recovery
+    stops at the first one.
+    </para>
+ 
+    <para>
      <function>pg_current_xlog_location</> displays the current transaction log write
      location in the same format used by the above functions.  Similarly,
      <function>pg_current_xlog_insert_location</> displays the current transaction log
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index 3ba1f29..b4eb4ac 100644
*** a/src/backend/access/transam/xlog.c
--- b/src/backend/access/transam/xlog.c
*************** XLogRestorePoint(const char *rpName)
*** 8144,8149 ****
--- 8144,8153 ----
  
  	RecPtr = XLogInsert(RM_XLOG_ID, XLOG_RESTORE_POINT, &rdata);
  
+ 	ereport(LOG,
+ 			(errmsg("restore point \"%s\" created at %X/%X",
+ 					rpName,	RecPtr.xlogid, RecPtr.xrecoff)));
+ 
  	return RecPtr;
  }