Commit 94f610b1 authored by Heikki Linnakangas's avatar Heikki Linnakangas

Forbid setval() during recovery. This prevents the PANIC reported by

Erik Rijkers. Patch by Andres Freund.
parent 2f6b4560
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/commands/sequence.c,v 1.166 2010/02/14 18:42:14 rhaas Exp $ * $PostgreSQL: pgsql/src/backend/commands/sequence.c,v 1.167 2010/02/19 06:29:19 heikki Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -736,6 +736,9 @@ do_setval(Oid relid, int64 next, bool iscalled) ...@@ -736,6 +736,9 @@ do_setval(Oid relid, int64 next, bool iscalled)
Buffer buf; Buffer buf;
Form_pg_sequence seq; Form_pg_sequence seq;
/* setval() writes to database and must be prevented during recovery */
PreventCommandDuringRecovery();
/* open and AccessShareLock sequence */ /* open and AccessShareLock sequence */
init_sequence(relid, &elm, &seqrel); init_sequence(relid, &elm, &seqrel);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment