Re: parallel restore vs. windows

From: Andrew Chernow <ac(at)esilo(dot)com>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: parallel restore vs. windows
Date: 2008-12-09 02:19:45
Message-ID: 493DD5C1.6060106@esilo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andrew Dunstan wrote:
>
> OK, after quite some trying I have hit a brick wall. I have been unable
> to get parallel restore to work with Windows threading. No doubt I am
> missing something, but I really don't know what. Unless someone can tell
> me what I am doing wrong, I have these possibilities:
>
> * run parallel steps on Windows in separate processes rather than
> threads, similar to what we do in the server, or
> * disable parallel restore on Windows for now.
>
>
> Time is unfortunately running very short.
>
> Latest attempt is attached.
>
>

We use _beginthread. I don't remember exactely how it broke, but it did. Try
using the below instead of CreateThread.

// NOTE: if you don't need the returned handle, close it or
// leaks will occur. Closing it doesn't kill the thread.
HANDLE h = (HANDLE)_beginthreadex(NULL, 0, thread_start, arg, 0, NULL);
if(h)
CloseHandle(h);

From MSDN:
"A thread in an executable that calls the C run-time library (CRT) should use
the _beginthread and _endthread functions for thread management rather than
CreateThread and ExitThread;"

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2008-12-09 02:39:29 Re: Synchronous replication: sleeping
Previous Message Andrew Dunstan 2008-12-09 02:08:39 parallel restore vs. windows