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;
  }
  
