Thread

  1. BUG #1337: Problem running PostgreSQL as service, incl. fix

    PostgreSQL Bugs List <pgsql-bugs@postgresql.org> — 2004-12-05T09:43:19Z

    The following bug has been logged online:
    
    Bug reference:      1337
    Logged by:          PJMODOS
    
    Email address:      pjmodos@parba.cz
    
    PostgreSQL version: 8.0 Beta
    
    Operating system:   Windows 2000
    
    Description:        Problem running PostgreSQL as service, incl. fix
    
    Details: 
    
    In 8.0 RC1, because of bug in -D parsing in pg_ctl I am unable to run 
    postgres as service when I have space in data path - when i register it with 
    pg_ctl register -D "C:\Program Files\PostgreSQL\data" and try to run it then 
    it won't work and in event log I have this: pg_ctl: no database directory 
    specified and environment variable PGDATA unset. 
    
    
    I have found very simple solution, just added + 1 in one of xmallocs and it 
    seems to work, diff follows: 
    
    --- pg_ctl.c	Sat Nov 27 19:51:06 2004
    +++ pg_ctl_new.c	Sun Dec 05 10:21:40 2004
    @@ -1289,7 +1289,7 @@
     			{
     				case 'D':
     					{
    -						char	   *pgdata_D = xmalloc(strlen(optarg));
    +						char	   *pgdata_D = xmalloc(strlen(optarg) + 1);
     						char	   *env_var = xmalloc(strlen(optarg) + 8);
     
     						strcpy(pgdata_D, optarg);
    
    
    
    
  2. Re: BUG #1337: Problem running PostgreSQL as service, incl.

    Neil Conway <neilc@samurai.com> — 2004-12-06T01:12:04Z

    On Sun, 2004-12-05 at 09:43 +0000, PostgreSQL Bugs List wrote:
    > In 8.0 RC1, because of bug in -D parsing in pg_ctl I am unable to run 
    > postgres as service when I have space in data path - when i register it with 
    > pg_ctl register -D "C:\Program Files\PostgreSQL\data" and try to run it then 
    > it won't work and in event log I have this: pg_ctl: no database directory 
    > specified and environment variable PGDATA unset.
    > 
    > I have found very simple solution, just added + 1 in one of xmallocs and it 
    > seems to work, diff follows: 
    
    Thanks, fixed. (I used a slightly different fix: xstrdup() rather than
    xmalloc() + strcpy() ).
    
    -Neil