Re: parallel restore vs. windows - Mailing list pgsql-hackers

From Andrew Chernow
Subject Re: parallel restore vs. windows
Date
Msg-id 493EA5AD.7080803@esilo.com
Whole thread Raw
In response to Re: parallel restore vs. windows  (Andrew Dunstan <andrew@dunslane.net>)
Responses Re: parallel restore vs. windows  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-hackers
> 
> Parts of AH need deep cloning, notably the formatData member, which is 
> done in _ReopenArchive().
> 

Is it okay to clone this from within the thread?

The reopen() appears to mess with AH->FH, which mutltiple threads are 
calling fclose on.  The second thread is going to fail and the first 
fclose() will close the main threads handle.

+ #ifndef WIN32
+     if (fclose(AH->FH) != 0)
+         die_horribly(AH, modulename, "could not close archive file: %s\n",
+                      strerror(errno));
+ #else

How are things failing?  Core dump, maybe you are seeing the above 
error?  The non-windows path is safe from this because a) it never does 
an fclose and b) its a fork and has its own copy of the FH.

-- 
Andrew Chernow
eSilo, LLC
every bit counts
http://www.esilo.com/


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: cvs head initdb hangs on unixware
Next
From: "Radek Strnad"
Date:
Subject: Parser - keyword cathegory