BUG #5451: pg_restore doesn't close input .tar archive
The following bug has been logged online:
Bug reference: 5451
Logged by: Pavel Golub
Email address: pavel@microolap.com
PostgreSQL version: 8.4.x
Operating system: Windows
Description: pg_restore doesn't close input .tar archive
Details:
pg_restore doesn't close input .tar archive file after restore process.
However, file is closed after pg_restore termination, I suppose it's not
correct behaviour.
"Pavel Golub" <pavel@microolap.com> writes:
pg_restore doesn't close input .tar archive file after restore process.
However, file is closed after pg_restore termination, I suppose it's not
correct behaviour.
I'm not sure what distinction you're trying to draw. Do you want us to
add a close() just before exit()? If so, what for?
regards, tom lane
Hello, Tom.
You wrote:
TL> "Pavel Golub" <pavel@microolap.com> writes:
pg_restore doesn't close input .tar archive file after restore process.
However, file is closed after pg_restore termination, I suppose it's not
correct behaviour.
TL> I'm not sure what distinction you're trying to draw. Do you want us to
TL> add a close() just before exit()? If so, what for?
First of all, for uniformity I guess. :) .backup files are closed
properly.
And secondly, I'm using these sources in my project and I
need input file to be closed. Of course, I can find the place
where to insert close() by myself, but I beleive that this must be done in the
official release.
TL> regards, tom lane
--
With best wishes,
Pavel mailto:pavel@gf.microolap.com
Pavel Golub <pavel@microolap.com> writes:
TL> I'm not sure what distinction you're trying to draw. Do you want us to
TL> add a close() just before exit()? If so, what for?
First of all, for uniformity I guess. :) .backup files are closed
properly.
And secondly, I'm using these sources in my project and I
need input file to be closed. Of course, I can find the place
where to insert close() by myself, but I beleive that this must be done in the
official release.
I don't think so. The pg_restore code is not written to be a library.
(Some have proposed making it into one, but there's a lot of work needed
to make that happen.) Even if it were designed as a library, I don't
think it would be the library's job to close the input file --- what
if the surrounding app passes it stdin, for instance?
regards, tom lane
Hello, Tom.
You wrote:
TL> Pavel Golub <pavel@microolap.com> writes:
TL> I'm not sure what distinction you're trying to draw. Do you want us to
TL> add a close() just before exit()? If so, what for?
First of all, for uniformity I guess. :) .backup files are closed
properly.
And secondly, I'm using these sources in my project and I
need input file to be closed. Of course, I can find the place
where to insert close() by myself, but I beleive that this must be done in the
official release.
TL> I don't think so. The pg_restore code is not written to be a library.
TL> (Some have proposed making it into one, but there's a lot of work needed
TL> to make that happen.) Even if it were designed as a library, I don't
TL> think it would be the library's job to close the input file --- what
TL> if the surrounding app passes it stdin, for instance?
But .backup files are closed properly. :) What the difference?
TL> regards, tom lane
--
With best wishes,
Pavel mailto:pavel@gf.microolap.com