diff options
author | Vadim B. Mikheev <vadim4o@yahoo.com> | 2000-12-03 10:27:29 +0000 |
---|---|---|
committer | Vadim B. Mikheev <vadim4o@yahoo.com> | 2000-12-03 10:27:29 +0000 |
commit | 65b362fae15aba68d5cd7d4204b8224c3e1c2c07 (patch) | |
tree | a601515ed9642733b646cb5a9f0a8f0671494c50 /src/backend/access/nbtree/nbtinsert.c | |
parent | 5e3bc5ebcddf00ba33d1483bab2a5a2d62c65120 (diff) | |
download | postgresql-65b362fae15aba68d5cd7d4204b8224c3e1c2c07.tar.gz postgresql-65b362fae15aba68d5cd7d4204b8224c3e1c2c07.zip |
Disable elog(ERROR|FATAL) in signal handlers in
critical sections of code.
Diffstat (limited to 'src/backend/access/nbtree/nbtinsert.c')
-rw-r--r-- | src/backend/access/nbtree/nbtinsert.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/backend/access/nbtree/nbtinsert.c b/src/backend/access/nbtree/nbtinsert.c index f00b1e79188..0aa49475247 100644 --- a/src/backend/access/nbtree/nbtinsert.c +++ b/src/backend/access/nbtree/nbtinsert.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.69 2000/11/30 08:46:21 vadim Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.70 2000/12/03 10:27:26 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -772,6 +772,7 @@ _bt_split(Relation rel, Buffer buf, OffsetNumber firstright, * NO ELOG(ERROR) till right sibling is updated. * */ + START_CRIT_CODE; { char xlbuf[sizeof(xl_btree_split) + sizeof(CommandId) + sizeof(RelFileNode) + BLCKSZ]; @@ -870,6 +871,7 @@ _bt_split(Relation rel, Buffer buf, OffsetNumber firstright, /* write and release the old right sibling */ _bt_wrtbuf(rel, sbuf); } + END_CRIT_CODE; /* split's done */ return rbuf; @@ -1162,6 +1164,7 @@ _bt_newroot(Relation rel, Buffer lbuf, Buffer rbuf) metabuf = _bt_getbuf(rel, BTREE_METAPAGE,BT_WRITE); /* NO ELOG(ERROR) from here till newroot op is logged */ + START_CRIT_CODE; /* set btree special data */ rootopaque = (BTPageOpaque) PageGetSpecialPointer(rootpage); @@ -1248,6 +1251,7 @@ _bt_newroot(Relation rel, Buffer lbuf, Buffer rbuf) _bt_wrtbuf(rel, metabuf); } + END_CRIT_CODE; /* write and let go of the new root buffer */ _bt_wrtbuf(rel, rootbuf); |