diff --git a/HISTORY b/HISTORY
index 966760965cf..43b847260d2 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,3 +1,10 @@
+PostgreSQL 6.5 Fri Apr 23 17:40:19 EDT 1999
+=========================================================
+
+A dump/restore is required.
+
+PLACE HOLDER
+
PostgreSQL 6.4.2 Sat Jan 2 11:04:05 EST 1999
=========================================================
diff --git a/doc/src/sgml/install.sgml b/doc/src/sgml/install.sgml
index aa62649aa56..eeb747df773 100644
--- a/doc/src/sgml/install.sgml
+++ b/doc/src/sgml/install.sgml
@@ -4,7 +4,7 @@
Complete installation instructions for
-Postgres v6.4.
+Postgres v6.5.
@@ -167,8 +167,8 @@ remaining steps in the installation will happen in this account.
Ftp file
-
- ftp://ftp.postgresql.org/pub/postgresql-v6.4.tar.gz
+
+ ftp://ftp.postgresql.org/pub/postgresql-v6.5.tar.gz
from the Internet. Store it in your home directory.
@@ -268,7 +268,7 @@ from the new distribution:
$ cd
-$ gunzip -c postgresql-v6.4.tar.gz \
+$ gunzip -c postgresql-v6.5.tar.gz \
| tar xvf - src/bin/pg_dump/pg_dumpall
$ chmod a+x src/bin/pg_dump/pg_dumpall
$ src/bin/pg_dump/pg_dumpall -z > db.out
@@ -411,7 +411,7 @@ $ exit
Unzip and untar the new source file. Type
$ cd /usr/src/pgsql
-$ gunzip -c ~/postgresql-v6.4.tar.gz | tar xvf -
+$ gunzip -c ~/postgresql-v6.5.tar.gz | tar xvf -
@@ -989,17 +989,7 @@ For example,
For a i686/Linux-ELF platform, no tests failed since this is the
- v6.4 regression testing reference platform.
-
-
-
-
-
- For the SPARC/Linux-ELF platform, using the 970525 beta version of
- Postgres v6.2 the following tests "failed":
- float8 and geometry "failed" due to minor precision differences in
- floating point numbers. select_views produces massively different output,
- but the differences are due to minor floating point differences.
+ v6.5 regression testing reference platform.
@@ -1109,11 +1099,11 @@ VACUUM;
Clean up after yourself. Type
-$ rm -rf /usr/src/pgsql_6_0
-$ rm -rf /usr/local/pgsql_6_0
+$ rm -rf /usr/src/pgsql_6_5
+$ rm -rf /usr/local/pgsql_6_5
# Also delete old database directory tree if it is not in
-# /usr/local/pgsql_6_0/data
-$ rm ~/postgresql-v6.2.1.tar.gz
+# /usr/local/pgsql_6_5/data
+$ rm ~/postgresql-v6.5.tar.gz
@@ -1160,7 +1150,7 @@ $ lpr -l -s -r manpage.hp
-The version of Postgres (v6.4, 6.3.2, beta 981014, etc.).
+The version of Postgres (v6.5, 6.4.2, beta 981014, etc.).
diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index c35bf8d825b..889f24b8325 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -6,7 +6,7 @@
# Copyright (c) 1998, Regents of the University of California
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.7 1999/03/14 16:02:57 momjian Exp $
+# $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.8 1999/04/30 02:04:49 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -86,14 +86,14 @@ ifeq ($(PORTNAME), bsdi)
ifdef BSD_SHLIB
ifeq ($(DLSUFFIX), .so)
install-shlib-dep := install-shlib
- shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL += -shared
CFLAGS += $(CFLAGS_SL)
endif
ifeq ($(DLSUFFIX), .o)
install-shlib-dep := install-shlib
- shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
- LD := shlicc
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LD := shlicc
LDFLAGS_SL += -O -r
CFLAGS += $(CFLAGS_SL)
endif
diff --git a/src/backend/storage/lmgr/lock.c b/src/backend/storage/lmgr/lock.c
index 2f822add66d..4c387643742 100644
--- a/src/backend/storage/lmgr/lock.c
+++ b/src/backend/storage/lmgr/lock.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/lock.c,v 1.46 1999/03/06 21:17:44 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/lock.c,v 1.47 1999/04/30 02:04:50 momjian Exp $
*
* NOTES
* Outside modules can create a lock table and acquire/release
@@ -820,13 +820,17 @@ LockResolveConflicts(LOCKMETHOD lockmethod,
/* ------------------------
* If someone with a greater priority is waiting for the lock,
* do not continue and share the lock, even if we can. bjm
+ * Don't do this if the process already has some locks, because
+ * this could hold up other people waiting on our locks, causing
+ * a priority inversion. bjm
* ------------------------
*/
int myprio = LockMethodTable[lockmethod]->ctl->prio[lockmode];
PROC_QUEUE *waitQueue = &(lock->waitProcs);
PROC *topproc = (PROC *) MAKE_PTR(waitQueue->links.prev);
- if (waitQueue->size && topproc->prio > myprio)
+ if (SHMQueueEmpty(lockQueue) && waitQueue->size &&
+ topproc->prio > myprio)
{
XID_PRINT("LockResolveConflicts: higher priority proc waiting",
result);
@@ -1595,7 +1599,7 @@ DeadLockCheck(SHM_QUEUE *lockQueue, LOCK *findlock, bool skip_check)
*
* The lock we are waiting for is already in MyProc->lockQueue so we
* need to skip it here. We are trying to find it in someone
- * else's lockQueue.
+ * else's lockQueue. bjm
*/
if (lock == findlock && !skip_check)
return true;
@@ -1625,7 +1629,7 @@ DeadLockCheck(SHM_QUEUE *lockQueue, LOCK *findlock, bool skip_check)
*
* Basically, the test is, "Do we both hold some lock on
* findlock, and we are both waiting in the lock
- * queue?"
+ * queue?" bjm
*/
Assert(skip_check);
@@ -1672,7 +1676,7 @@ DeadLockCheck(SHM_QUEUE *lockQueue, LOCK *findlock, bool skip_check)
* hold locks and are waiting. Now we check for
* cases where we have two or more tables in a
* deadlock. We do this by continuing to search
- * for someone holding a lock
+ * for someone holding a lock bjm
*/
if (DeadLockCheck(&(proc->lockQueue), findlock, false))
return true;
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c
index cc5233b0764..229a78587cb 100644
--- a/src/backend/storage/lmgr/proc.c
+++ b/src/backend/storage/lmgr/proc.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/proc.c,v 1.52 1999/03/28 20:32:26 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/proc.c,v 1.53 1999/04/30 02:04:51 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -46,7 +46,7 @@
* This is so that we can support more backends. (system-wide semaphore
* sets run out pretty fast.) -ay 4/95
*
- * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/proc.c,v 1.52 1999/03/28 20:32:26 vadim Exp $
+ * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/proc.c,v 1.53 1999/04/30 02:04:51 momjian Exp $
*/
#include
#include
@@ -516,8 +516,7 @@ ProcSleep(PROC_QUEUE *waitQueue,/* lock->waitProcs */
* In a full queue, we would have a reader holding a lock, then a writer
* gets the lock, then a bunch of readers, made up of readers who
* could not share the first readlock because a writer was waiting,
- * and new readers arriving while the writer had the lock.
- *
+ * and new readers arriving while the writer had the lock. bjm
*/
proc = (PROC *) MAKE_PTR(waitQueue->links.prev);