postgresql/doc/README.NT

247 lines
6.9 KiB
Plaintext
Raw Normal View History

1999-06-16 20:09:59 +02:00
From: "Joost Kraaijeveld" <JKraaijeveld@askesis.nl>
To: "Pgsql-Ports@Postgresql. Org" <pgsql-ports@postgreSQL.org>
Subject: RE: [PORTS] Re: psql under win32
Date: Wed, 21 Apr 1999 07:07:47 +0200
Message-ID: <000001be8bb4$e59b0ab0$0300a8c0@abraracourcix.askesis.nl>
MIME-Version: 1.0
Installing PostgreSQL on NT:
---------------------------------------------------------------------------
It can be done by done by typing configure, make and make install.
1. Install the Cygwin package
2. Update to EGCS 1.1.2
1999-07-07 18:41:18 +02:00
(This may be optional.)
1999-06-16 20:09:59 +02:00
1999-09-27 21:55:48 +02:00
---------------------------------------------------------------------------
OPTIONAL
1999-07-07 18:41:18 +02:00
1. Install the Andy Piper Tools (http://www.xemacs.freeserve.co.uk/)
(This may be optional.)
1999-06-16 20:09:59 +02:00
1999-09-27 21:55:48 +02:00
---------------------------------------------------------------------------
CYGWIN32 INSTALLATION
1999-07-07 18:41:18 +02:00
1. Download the Cygwin32 IPC Package by Ludovic LANGE
1999-07-18 20:03:50 +02:00
http://www.multione.capgemini.fr:80/tools/pack_ipc/current.tar.gz
1999-06-16 20:09:59 +02:00
2. Untar the package and follow the readme instructions.
1999-09-27 21:55:48 +02:00
3. Apply the patch from the file.
4. I tested 1.03.
5. I used the \cygwin-b20\h-i568-cygwin32\i586-cygwin32\lib and
1999-06-16 20:09:59 +02:00
\cygwin-b20\h-i568-cygwin32\i586-cygwin32\include\sys instead of the
/usr/local/lib and usr/local/include/sys.
1999-09-27 21:55:48 +02:00
NOTE:
Also, the cygnus-bindir has to be placed in the path before the
NT-directories, because the sort.exe has to be taken for cygnus, not
NT.
---------------------------------------------------------------------------
POSTGRESQL INSTALL WITH NT SPECIFICS
1999-07-07 18:41:18 +02:00
1. Download the current version of PostgreSQL.
1999-06-16 20:09:59 +02:00
2. Untar the package.
3. Copy the files from \pgsql\src\win32 according to the readme file.
1999-09-27 21:55:48 +02:00
4. Edit \pgsql\src\template\cygwin32 if needed (I had to adjust the YFLAGS
1999-06-16 20:09:59 +02:00
path).
1999-09-27 21:55:48 +02:00
5. ./configure
6. make
7. create the directory /usr/local/pgsql manually: the mkdir cannot create a
1999-06-16 20:09:59 +02:00
directory 2 levels deep in one step.
1999-09-27 21:55:48 +02:00
8. make install
9. cd /usr/lical/pgsql/doc
10. make install
11. Set the environmental data
12. Initdb --username=jkr (do not run this command as administrator)
1999-06-16 20:09:59 +02:00
1999-09-27 21:55:48 +02:00
13. Open a new Cygwin command prompt
14. Start "ipc-deamon&" (background proces)
15. Start "postmaster -i 2>&1 > /tmp/postgres.log &" (background proces)
16. Start "tail -f /tmp/postgres.log" to see the messages
1999-06-16 20:09:59 +02:00
1999-09-27 21:55:48 +02:00
17. cd /usr/src/pgsql/src/test/regress
18. make all runtest
1999-06-16 20:09:59 +02:00
All test should be run, allthought the latest snapshot I tested (18-4)
appears to have some problems with locking.
1999-09-27 21:55:48 +02:00
NOTE:
By default, PostgreSQL clients like psql communicate using unix domain
sockets, which don't work on NT. Start the postmaster with -i, and
when connecting to the database from a client, set the PGHOST
1999-07-09 23:46:14 +02:00
environment variable to 'localhost' or supply the hostname on the
command line.
1999-06-16 20:09:59 +02:00
1999-09-27 21:55:48 +02:00
Joost
1999-08-01 16:48:50 +02:00
1999-09-27 20:32:58 +02:00
---------------------------------------------------------------------------
1999-09-27 21:55:48 +02:00
FIX FOR POSTGRESQL FREEZING ON NT MACHINES - EVERYONE SHOULD APPLY THIS PATCH
1999-09-27 20:32:58 +02:00
From: "Hiroshi Inoue" <Inoue@tpf.co.jp>
To: "Horak Daniel" <horak@mmp.plzen-city.cz>, "'Tom Lane'" <tgl@sss.pgh.pa.us>
Cc: <pgsql-hackers@postgreSQL.org>
Subject: RE: [HACKERS] backend freezeing on win32 fixed (I hope ;-) )
Date: Wed, 18 Aug 1999 08:45:28 +0900
Message-ID: <000301bee90a$95d40f00$2801007e@cadzone.tpf.co.jp>
MIME-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook 8.5, Build 4.71.2173.0
X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4
In-reply-to: <2E7F82FAC1FCD2118E1500A024B3BF907DED3F@exchange.mmp.plzen-city.cz>
Importance: Normal
Sender: owner-pgsql-hackers@postgreSQL.org
Precedence: bulk
Status: RO
> -----Original Message-----
> From: owner-pgsql-hackers@postgreSQL.org
> [mailto:owner-pgsql-hackers@postgreSQL.org]On Behalf Of Horak Daniel
> Sent: Tuesday, August 17, 1999 9:06 PM
> To: 'Tom Lane'
> Cc: 'pgsql-hackers@postgreSQL.org'
> Subject: RE: [HACKERS] backend freezeing on win32 fixed (I hope ;-) )
Yutaka Tanida [yutaka@marin.or.jp] and I have examined IPC
library.
We found that postmaster doesn't call exec() after fork() since v6.4.
The value of static/extern variables which cygipc library holds may
be different from their initial values when postmaster fork()s child
backend processes.
I made the following patch for cygipc library on trial.
This patch was effective for Yutaka's test case.
Regards.
Hiroshi Inoue
Inoue@tpf.co.jp
*** sem.c.orig Tue Dec 01 00:16:25 1998
--- sem.c Tue Aug 17 13:22:06 1999
***************
*** 58,63 ****
--- 58,78 ----
static int GFirstSem = 0; /*PCPC*/
static int GFdSem ; /*PCPC*/
+ static pid_t GProcessId = 0;
+
+ static void init_globals(void)
+ {
+ pid_t pid;
+
+ if (pid=getpid(), pid != GProcessId)
+ {
+ GFirstSem = 0;
+ used_sems = used_semids = max_semid = 0;
+ sem_seq = 0;
+ GProcessId = pid;
+ }
+ }
+
/************************************************************************/
/* Demande d'acces a la zone partagee de gestion des semaphores */
/************************************************************************/
***************
*** 77,82 ****
--- 92,98 ----
{
int LRet ;
+ init_globals();
if( GFirstSem == 0 )
{
if( IsGSemSemExist() )
*** shm.c.orig Tue Dec 01 01:04:57 1998
--- shm.c Tue Aug 17 13:22:27 1999
***************
*** 59,64 ****
--- 59,81 ----
static int GFirstShm = 0; /*PCPC*/
static int GFdShm ; /*PCPC*/
+ /*****************************************/
+ /* Initialization of static variables */
+ /*****************************************/
+ static pid_t GProcessId = 0;
+ static void init_globals(void)
+ {
+ pid_t pid;
+
+ if (pid=getpid(), pid != GProcessId)
+ {
+ GFirstShm = 0;
+ shm_rss = shm_swp = max_shmid = 0;
+ shm_seq = 0;
+ GProcessId = pid;
+ }
+ }
+
/************************************************************************/
/* Demande d'acces a la zone partagee de gestion des shm */
/************************************************************************/
***************
*** 82,87 ****
--- 99,105 ----
{
int LRet ;
+ init_globals();
if( GFirstShm == 0 )
{
if( IsGSemShmExist() )
*** msg.c.orig Tue Dec 01 00:16:09 1998
--- msg.c Tue Aug 17 13:20:04 1999
***************
*** 57,62 ****
--- 57,77 ----
static int GFirstMsg = 0; /*PCPC*/
static int GFdMsg ; /*PCPC*/
+ /*****************************************/
+ /* Initialization of static variables */
+ /*****************************************/
+ static pid_t GProcessId = 0;
+ static void init_globals(void)
+ {
+ pid_t pid;
+
+ if (pid=getpid(), pid != GProcessId)
+ {
+ GFirstMsg = 0;
+ msgbytes = msghdrs = msg_seq = used_queues = max_msqid = 0;
+ GProcessId = pid;
+ }
+ }
/************************************************************************/
/* Demande d'acces a la zone partagee de gestion des semaphores */
/************************************************************************/
***************
*** 79,84 ****
--- 94,100 ----
{
int LRet ;
+ init_globals();
if( GFirstMsg == 0 )
{
if( IsGSemMsgExist() )