@@ -21,6 +21,8 @@ It can be done by done by typing configure, make and make install.
2121
22221. Install the Andy Piper Tools (http://www.xemacs.freeserve.co.uk/)
2323 (This may be optional.)
24+ You need at least the crypt library (also available as
25+ ftp://sourceware.cygnus.com/pub/cygwin/xfree/libcrypt-cygwin-b20.1.tar.bz2)
2426
2527---------------------------------------------------------------------------
2628
@@ -29,8 +31,8 @@ It can be done by done by typing configure, make and make install.
29311. Download the Cygwin32 IPC Package by Ludovic LANGE
3032 http://www.multione.capgemini.fr:80/tools/pack_ipc/current.tar.gz
31332. Untar the package and follow the readme instructions.
32- 3. Apply the patch pgsql/src/win32/ipc.patch to the CygWin32 sources
33- before compiling CygWin32 .
34+ 3. Apply the patch pgsql/src/win32/ipc.patch to the cygipc sources
35+ before compiling the library .
34364. I tested 1.03.
35375. I used the \cygwin-b20\h-i568-cygwin32\i586-cygwin32\lib and
3638\cygwin-b20\h-i568-cygwin32\i586-cygwin32\include\sys instead of the
@@ -79,169 +81,3 @@ environment variable to 'localhost' or supply the hostname on the
7981command line.
8082
8183Joost
82-
83-
84- ---------------------------------------------------------------------------
85-
86- FIX FOR POSTGRESQL FREEZING ON NT MACHINES - EVERYONE SHOULD APPLY THIS PATCH
87-
88-
89- From: "Hiroshi Inoue" <Inoue@tpf.co.jp>
90- To: "Horak Daniel" <horak@mmp.plzen-city.cz>, "'Tom Lane'" <tgl@sss.pgh.pa.us>
91- Cc: <pgsql-hackers@postgreSQL.org>
92- Subject: RE: [HACKERS] backend freezeing on win32 fixed (I hope ;-) )
93- Date: Wed, 18 Aug 1999 08:45:28 +0900
94- Message-ID: <000301bee90a$95d40f00$2801007e@cadzone.tpf.co.jp>
95- MIME-Version: 1.0
96- Content-Type: text/plain;
97- charset="iso-8859-1"
98- Content-Transfer-Encoding: 7bit
99- X-Priority: 3 (Normal)
100- X-MSMail-Priority: Normal
101- X-Mailer: Microsoft Outlook 8.5, Build 4.71.2173.0
102- X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4
103- In-reply-to: <2E7F82FAC1FCD2118E1500A024B3BF907DED3F@exchange.mmp.plzen-city.cz>
104- Importance: Normal
105- Sender: owner-pgsql-hackers@postgreSQL.org
106- Precedence: bulk
107- Status: RO
108-
109- > -----Original Message-----
110- > From: owner-pgsql-hackers@postgreSQL.org
111- > [mailto:owner-pgsql-hackers@postgreSQL.org]On Behalf Of Horak Daniel
112- > Sent: Tuesday, August 17, 1999 9:06 PM
113- > To: 'Tom Lane'
114- > Cc: 'pgsql-hackers@postgreSQL.org'
115- > Subject: RE: [HACKERS] backend freezeing on win32 fixed (I hope ;-) )
116-
117- Yutaka Tanida [yutaka@marin.or.jp] and I have examined IPC
118- library.
119-
120- We found that postmaster doesn't call exec() after fork() since v6.4.
121-
122- The value of static/extern variables which cygipc library holds may
123- be different from their initial values when postmaster fork()s child
124- backend processes.
125-
126- I made the following patch for cygipc library on trial.
127- This patch was effective for Yutaka's test case.
128-
129- Regards.
130-
131- Hiroshi Inoue
132- Inoue@tpf.co.jp
133-
134- *** sem.c.orig Tue Dec 01 00:16:25 1998
135- --- sem.c Tue Aug 17 13:22:06 1999
136- ***************
137- *** 58,63 ****
138- --- 58,78 ----
139- static int GFirstSem = 0; /*PCPC*/
140- static int GFdSem ; /*PCPC*/
141-
142- + static pid_t GProcessId = 0;
143- +
144- + static void init_globals(void)
145- + {
146- + pid_t pid;
147- +
148- + if (pid=getpid(), pid != GProcessId)
149- + {
150- + GFirstSem = 0;
151- + used_sems = used_semids = max_semid = 0;
152- + sem_seq = 0;
153- + GProcessId = pid;
154- + }
155- + }
156- +
157- /************************************************************************/
158- /* Demande d'acces a la zone partagee de gestion des semaphores */
159- /************************************************************************/
160- ***************
161- *** 77,82 ****
162- --- 92,98 ----
163- {
164- int LRet ;
165-
166- + init_globals();
167- if( GFirstSem == 0 )
168- {
169- if( IsGSemSemExist() )
170- *** shm.c.orig Tue Dec 01 01:04:57 1998
171- --- shm.c Tue Aug 17 13:22:27 1999
172- ***************
173- *** 59,64 ****
174- --- 59,81 ----
175- static int GFirstShm = 0; /*PCPC*/
176- static int GFdShm ; /*PCPC*/
177-
178- + /*****************************************/
179- + /* Initialization of static variables */
180- + /*****************************************/
181- + static pid_t GProcessId = 0;
182- + static void init_globals(void)
183- + {
184- + pid_t pid;
185- +
186- + if (pid=getpid(), pid != GProcessId)
187- + {
188- + GFirstShm = 0;
189- + shm_rss = shm_swp = max_shmid = 0;
190- + shm_seq = 0;
191- + GProcessId = pid;
192- + }
193- + }
194- +
195- /************************************************************************/
196- /* Demande d'acces a la zone partagee de gestion des shm */
197- /************************************************************************/
198- ***************
199- *** 82,87 ****
200- --- 99,105 ----
201- {
202- int LRet ;
203-
204- + init_globals();
205- if( GFirstShm == 0 )
206- {
207- if( IsGSemShmExist() )
208- *** msg.c.orig Tue Dec 01 00:16:09 1998
209- --- msg.c Tue Aug 17 13:20:04 1999
210- ***************
211- *** 57,62 ****
212- --- 57,77 ----
213- static int GFirstMsg = 0; /*PCPC*/
214- static int GFdMsg ; /*PCPC*/
215-
216- + /*****************************************/
217- + /* Initialization of static variables */
218- + /*****************************************/
219- + static pid_t GProcessId = 0;
220- + static void init_globals(void)
221- + {
222- + pid_t pid;
223- +
224- + if (pid=getpid(), pid != GProcessId)
225- + {
226- + GFirstMsg = 0;
227- + msgbytes = msghdrs = msg_seq = used_queues = max_msqid = 0;
228- + GProcessId = pid;
229- + }
230- + }
231- /************************************************************************/
232- /* Demande d'acces a la zone partagee de gestion des semaphores */
233- /************************************************************************/
234- ***************
235- *** 79,84 ****
236- --- 94,100 ----
237- {
238- int LRet ;
239-
240- + init_globals();
241- if( GFirstMsg == 0 )
242- {
243- if( IsGSemMsgExist() )
244-
245-
246-
247-
0 commit comments