pg_dumpall bug & feature request

Started by Ivanover 20 years ago4 messagesbugs
Jump to latest
#1Ivan
Ivan-Sun1@mail.ru

Hello,

Perhaps you missed my previous message.
pg_dumpall has not -f command line option
to specify output file - it always send output
to standart output. But there is an issue with
it in Windows (I described it earlier) - function's
line endings are changed from 0D 0A to 0D 0D 0A.

Could you please add -f option to pg_dumpall,
because it's very inconvenient to replace these
character sequences in hex editor all the time.

Thank you for support!

--
Best regards,
Ivan mailto:Ivan-Sun1@mail.ru

#2Alvaro Herrera
alvherre@2ndquadrant.com
In reply to: Ivan (#1)
Re: pg_dumpall bug & feature request

Ivan wrote:

Hi,

Perhaps you missed my previous message.
pg_dumpall has not -f command line option
to specify output file - it always send output
to standart output. But there is an issue with
it in Windows (I described it earlier) - function's
line endings are changed from 0D 0A to 0D 0D 0A.

Hmm, what do you need that for? Why don't you directly restore the
binary dump to a database by using option -d?

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

#3Ivan
Ivan-Sun1@mail.ru
In reply to: Alvaro Herrera (#2)
Re: pg_dumpall bug & feature request

Hello Alvaro,

Thursday, November 3, 2005, 3:28:41 PM, you wrote:

AH> Ivan wrote:

AH> Hi,

Perhaps you missed my previous message.
pg_dumpall has not -f command line option
to specify output file - it always send output
to standart output. But there is an issue with
it in Windows (I described it earlier) - function's
line endings are changed from 0D 0A to 0D 0D 0A.

AH> Hmm, what do you need that for? Why don't you directly restore the
AH> binary dump to a database by using option -d?

I don't need to restore binary dump. I need to make a dump of the
whole database cluster to plain sql file (what pg_dumpall does).
So I have to redirect pg_dumpall's output to a file
pg_dump [options] > cluster_dump.sql
When I do it on Windows, it creates cluster_dump.sql file
BUT in that file all sql and plpgsql function bodies are corrupted! -
each line in the body ends with 0D 0D 0A sequence instead of 0D 0A -
therefor functions after restoring looks like:

CREATE OR REPLACE FUNCTION "foo"()
RETURNS bar AS
$$

select * from "bar"

where bla-bla

order by bla-bla;

$$
LANGUAGE 'sql' VOLATILE;

instead of

CREATE OR REPLACE FUNCTION "foo"()
RETURNS bar AS
$$
select * from "bar"
where bla-bla
order by bla-bla;
$$
LANGUAGE 'sql' VOLATILE;

- extra blank lines are added.

So it would be great if the output redirection ">" will be workaround
for example the same way like in pg_dump it is done - via -f file
option.

Thank you for support.

--
Best regards,
Ivan mailto:Ivan-Sun1@mail.ru

#4Alvaro Herrera
alvherre@2ndquadrant.com
In reply to: Ivan (#3)
Re: pg_dumpall bug & feature request

Ivan wrote:

Hi,

Thursday, November 3, 2005, 3:28:41 PM, you wrote:

Perhaps you missed my previous message.
pg_dumpall has not -f command line option
to specify output file - it always send output
to standart output. But there is an issue with
it in Windows (I described it earlier) - function's
line endings are changed from 0D 0A to 0D 0D 0A.

AH> Hmm, what do you need that for? Why don't you directly restore the
AH> binary dump to a database by using option -d?

I don't need to restore binary dump. I need to make a dump of the
whole database cluster to plain sql file (what pg_dumpall does).
So I have to redirect pg_dumpall's output to a file
pg_dump [options] > cluster_dump.sql

Hum, doh! I misread your message as thought it referred to pg_restore
rather than pg_dumpall. Not sure why. Certainly pg_dumpall needs a
redirecting feature. I imagine there must be a way to tell the shell
not to do newline translation, but I wouldn't know it.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.