Opening stdin/stdout in binary mode on Windows

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Opening stdin/stdout in binary mode on Windows
Дата
Msg-id 7945.1106693507@sss.pgh.pa.us
обсуждение исходный текст
Ответы Re: Opening stdin/stdout in binary mode on Windows  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers-win32
I wrote:
>> pg_restore: [archiver] unsupported version (1.13) in file header

> Come to think of it, I'll bet that you cannot use "> DBFile" on Windows
> because it ends up opening the archive file in text instead of binary
> mode.  SetOutput() in pg_backup_archiver.c tries to work around this by
> doing

>     fn = fileno(stdout);
>     AH->OF = fdopen(dup(fn), PG_BINARY_W);

> but it wouldn't surprise me in the least to learn that that doesn't work
> on Windows.

We now have confirmation that indeed this is the source of the pg_dump
misbehavior.  Can anyone suggest a way that does work to do binary I/O
on stdout?  What about reading from stdin?

If we can't fix this it will require some serious uglification of the
pg_dump/pg_restore docs for Windows ...

            regards, tom lane

В списке pgsql-hackers-win32 по дате отправления:

Предыдущее
От: "Magnus Hagander"
Дата:
Сообщение: Re: long sql "in" clause crashes server process (8.0 Release)
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Opening stdin/stdout in binary mode on Windows