beta testing - pg_upgrade bug fix - double free

Started by Pavel Stehulealmost 16 years ago4 messageshackers
Jump to latest
#1Pavel Stehule
pavel.stehule@gmail.com

Hello

it fixes bug

pg_upgrade(13359) malloc: *** error for object 0x801600:
non-page-aligned, non-allocated pointer being freed
*** set a breakpoint in malloc_error_break to debug

arget 03:31 /usr/local/src/postgresql/contrib/pg_upgrade git diff .
diff --git a/contrib/pg_upgrade/check.c b/contrib/pg_upgrade/check.c
index 31f12fb..f989229 100644
--- a/contrib/pg_upgrade/check.c
+++ b/contrib/pg_upgrade/check.c
@@ -154,7 +154,6 @@ issue_warnings(migratorContext *ctx, char
*sequence_script_file_name)
                                         ctx->new.bindir,
ctx->new.port, sequence_script_file_name,
                                         ctx->logfile);
                       unlink(sequence_script_file_name);
-                       pg_free(sequence_script_file_name);
                       check_ok(ctx);
               }

by Jan Matousek

Regards

Pavel

#2Robert Haas
robertmhaas@gmail.com
In reply to: Pavel Stehule (#1)
Re: beta testing - pg_upgrade bug fix - double free

On Fri, May 21, 2010 at 10:11 PM, Pavel Stehule <pavel.stehule@gmail.com> wrote:

it fixes bug

pg_upgrade(13359) malloc: *** error for object 0x801600:
non-page-aligned, non-allocated pointer being freed
*** set a breakpoint in malloc_error_break to debug

arget 03:31 /usr/local/src/postgresql/contrib/pg_upgrade git diff .
diff --git a/contrib/pg_upgrade/check.c b/contrib/pg_upgrade/check.c
index 31f12fb..f989229 100644
--- a/contrib/pg_upgrade/check.c
+++ b/contrib/pg_upgrade/check.c
@@ -154,7 +154,6 @@ issue_warnings(migratorContext *ctx, char
*sequence_script_file_name)
                                        ctx->new.bindir,
ctx->new.port, sequence_script_file_name,
                                        ctx->logfile);
                      unlink(sequence_script_file_name);
-                       pg_free(sequence_script_file_name);
                      check_ok(ctx);
              }

by Jan Matousek

This patch looks correct to me, although I haven't had a chance to test it yet.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Pavel Stehule (#1)
Re: beta testing - pg_upgrade bug fix - double free

Pavel Stehule <pavel.stehule@gmail.com> writes:

--- a/contrib/pg_upgrade/check.c
+++ b/contrib/pg_upgrade/check.c
@@ -154,7 +154,6 @@ issue_warnings(migratorContext *ctx, char
*sequence_script_file_name)
ctx->new.bindir,
ctx->new.port, sequence_script_file_name,
ctx->logfile);
unlink(sequence_script_file_name);
-                       pg_free(sequence_script_file_name);
check_ok(ctx);
}

Done, thanks.

regards, tom lane

#4Bruce Momjian
bruce@momjian.us
In reply to: Pavel Stehule (#1)
Re: beta testing - pg_upgrade bug fix - double free

Pavel Stehule wrote:

Hello

it fixes bug

pg_upgrade(13359) malloc: *** error for object 0x801600:
non-page-aligned, non-allocated pointer being freed
*** set a breakpoint in malloc_error_break to debug

arget 03:31 /usr/local/src/postgresql/contrib/pg_upgrade git diff .
diff --git a/contrib/pg_upgrade/check.c b/contrib/pg_upgrade/check.c
index 31f12fb..f989229 100644
--- a/contrib/pg_upgrade/check.c
+++ b/contrib/pg_upgrade/check.c
@@ -154,7 +154,6 @@ issue_warnings(migratorContext *ctx, char
*sequence_script_file_name)
ctx->new.bindir,
ctx->new.port, sequence_script_file_name,
ctx->logfile);
unlink(sequence_script_file_name);
-                       pg_free(sequence_script_file_name);
check_ok(ctx);
}

Thanks for the report. Tom has applied your fix.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com