free(3)-ing variables in pg_dump
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi.
I'm trying to implement functionallity to dump multiple tables with multiple
"-t <table-name>" options. While digging in the source for pg_dump I see that
many local static variables are not freed( with free(3)). Is this lazy
programming because pg_dump is its own process where the kernel takes care
of cleaning up, so you don't bother to do it for some of the variables? I'm
malloc'ing some structs to build a list over tables which are marked for
dumping. Shall I bother to free(3) them?
- --
Andreas Joseph Krogh <andreak@officenet.no>
Managing Director, Senior Software Developer
OfficeNet AS
- - Writing software is more fun than working.
gpg public_key: http://dev.officenet.no/~andreak/public_key.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQE/cE2SUopImDh2gfQRAhOxAJ0Wr7s98ufN4BEckpVem/tFfekIwQCghS+3
8x/TV1Oqx++ywYDyOJxQSCU=
=uKgq
-----END PGP SIGNATURE-----
Andreas Joseph Krogh wrote:
Hi.
I'm trying to implement functionallity to dump multiple tables with multiple
"-t <table-name>" options.
excellent.
While digging in the source for pg_dump I see that
many local static variables are not freed( with free(3)). Is this lazy
programming because pg_dump is its own process where the kernel takes care
of cleaning up, so you don't bother to do it for some of the variables? I'm
malloc'ing some structs to build a list over tables which are marked for
dumping. Shall I bother to free(3) them?
I don't think it's lazy, probably just a product of the programmer's
awareness that little would be gained by it. Relying on the OS to clean
up for you is perfectly valid in a shortlived program unless you get a
major problem with memory leaks.
"If it ain't broke, don't fix it" would be my take.
(If this is not the consensus I'm going to have some more work to do in
the C port of initdb I'm working on, which is about one third done :-)
cheers
andrew
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Tuesday 23 September 2003 16:25, Andrew Dunstan wrote:
Andreas Joseph Krogh wrote:
Hi.
I'm trying to implement functionallity to dump multiple tables with
multiple "-t <table-name>" options.excellent.
While digging in the source for pg_dump I see that
many local static variables are not freed( with free(3)). Is this lazy
programming because pg_dump is its own process where the kernel takes
care of cleaning up, so you don't bother to do it for some of the
variables? I'm malloc'ing some structs to build a list over tables which
are marked for dumping. Shall I bother to free(3) them?I don't think it's lazy, probably just a product of the programmer's
awareness that little would be gained by it. Relying on the OS to clean
up for you is perfectly valid in a shortlived program unless you get a
major problem with memory leaks.
I didn't mean lazy as in bad - I ment lazy as in just what you pointed out:
little would be gained by it, so why bother.
"If it ain't broke, don't fix it" would be my take.
(If this is not the consensus I'm going to have some more work to do in
the C port of initdb I'm working on, which is about one third done :-)
:-)
- --
Andreas Joseph Krogh <andreak@officenet.no>
Managing Director, Senior Software Developer
OfficeNet AS
- - Writing software is more fun than working.
gpg public_key: http://dev.officenet.no/~andreak/public_key.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQE/cF3DUopImDh2gfQRAtR4AJ499CK4QcGO9Dc0Wato46/wZMxZ/wCaApSP
463Z/DfsEBtUvQ50h/osKAc=
=eEqD
-----END PGP SIGNATURE-----