pg_upgrade bugs

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2012-09-03T01:11:42Z
Lists: pgsql-hackers

Attachments

I have been wrestling for a couple of days trying to get pg_upgrade 
testing working on Windows, with a view to having it tested on the 
buildfarm. The test script has its own issues, which I'll deal with 
separately, but there are two issues in pg_upgrade's exec.c that make me 
suspect that if pg_upgrade has ever worked at all on Windows it is a 
matter of sheer luck. The attached patch fixes these. The first issue is 
a plain miscall to stlcpy(), where the length argument is wrong. The 
second is where exec_prog tries to open a log file after the system call 
returns. This will fail if the command was a 'pg_ctl start', as the 
running postmaster will have the log file open, so I have simply 
#ifdef'd it out for the Windows case, as the code does nothing except 
add a couple of line feeds to the log, missing which won't affect 
anything much.

Barring objection I will commit this before long.

cheers

andrew

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. pg_upgrade: Fix exec_prog API to be less flaky