Re: Postgresql under cygwin just stopped working. - Mailing list pgsql-cygwin

From Frank Seesink
Subject Re: Postgresql under cygwin just stopped working.
Date
Msg-id cd5468$e9$1@sea.gmane.org
Whole thread Raw
In response to Postgresql under cygwin just stopped working.  ("Martin Husted Hartvig" <mh@ctek.dk>)
List pgsql-cygwin
Ok, as for the whole ipc-daemon vs. ipc-daemon2 vs. cygserver thing,
note I'm always using the binary version of PostgreSQL as installed by
the Cygwin setup utility.  This means reading the appropriate README and
using the IPC service that a given version of PostgreSQL was built
against.  For example, v7.4.1 was built against ipc-daemon2 and v7.4.3-1
is built against cygserver.

Assuming you're using the right version of IPC, here's what I'd look at
if PostgreSQL died on me:

1.  Check if the PID file is still laying around from the last run.

     This will definitely prevent PostgreSQL from starting up, unless
     you're starting PostgreSQL via a script which checks for and removes
     any leftover PID file.  Typically you'll find this where your data
     is located (/var/postgresql/data/postmaster.pid for v7.4.3 if you
     used the README suggested location)

2.  Remove any temp files related to PostgreSQL and/or IPC.

     Basically, 'cd /tmp' and make sure there are no leftover files
     from PostgreSQL, like the lock files

    .s.PGSQL.5432
    .s.PGSQL.5432.lock

     and be sure to delete and files related to IPC.  I can't recall the
     filenames offhand, but they should stand out.  Note if you fire up
     different versions of IPC (ipc-daemon2, cygserver), you really want
     to be sure to 'clean house' before you fire up a different one.
     And of course never run two simultaneously.  Bad idea.  But if you
     remove the files they use, should help a good bit.

3.  Make sure your general binary file permissions are set right.  I
     find this to get mangled when I update features of Cygwin via its
     setup.exe program.  My usual steps once I do an update are

    # check that all packages installed are "ok"; if not, run
    # setup again and repeat
    cygcheck -c > packages.lst
    less packages.lst

    #set file permissions on binaries so they can execute
    chmod a+x /usr/bin /usr/bin/*

     This may or may not help in your case.

4.  Make sure your PostgreSQL config hasn't changed.

     Be sure to check your PostgreSQL config files

    pg_hba.conf       == access to PostgreSQL
    postgresql.conf   == general config

     found in /var/postgresql/data (default location for v7.4.3) and
     verify your setup.

5.  Possibly remove and reinstall the necessary services (assuming you
     are running PostgreSQL as an NT Service).  This means doing things
     like

    ipc-daemon2 --remove-as-service
    ipc-daemon2 --install-as-service

     or

    cygrunsrv --remove cygserver
    /bin/cygserver-config

     and

    cygrunsrv --remove postmaster
    # see PostgreSQL Cygwin README for install step

If none of these help put you on the right path, not sure what else
might have happened, unless somehow the Windows update mangled the file
permissions somewhere down the path to your PostgreSQL data, in which
case you may want to login as your postgres user (the Windows user you
run PostgreSQL under if it's an NT service), then work your way down and
make sure you can actually access the files that make up the PostgreSQL
database.

Not sure what else to tell you.  Best of luck.


Martin Husted Hartvig wrote:

> Hello List,
>
> I have been using PostgreSQL under CygWin for some time now and have
> been  very glad, but this day it just stopped working. I can't see what
> the  problem is, but 3 things has happend since yesterday where is ran
> fine:
>  1. I installed CygWin/X
>  2. My my laptop did'nt wake up after hypernate so I had to turn it off
>  3. I have just installed the Windows XP service upgrade
>
>
> I was using the IPC daemon2 as an NT service, but I have also tryed
> using  the cygserver.
>
> When I try to start this happens:
>
> $postmaster -D /var/postgres/data/
> Bad system call
>
>
> and with debug level 5:
>
> $ postmaster -d 5 -D /var/postgres/data/
> [4004] DEBUG:  postmaster: PostmasterMain: initial environ dump:
> [4004] DEBUG:  -----------------------------------------
> [4004] DEBUG:   !::=::\
> [4004] DEBUG:   !C:=C:\cygwin\bin
> [4004] DEBUG:   ALLUSERSPROFILE=C:\Documents and Settings\All Users
> [4004] DEBUG:   ANT_HOME=C:\java\apache-ant-1.6.1
> [4004] DEBUG:   APPDATA=C:\Documents and Settings\mh\Application Data
> [4004] DEBUG:   CLIENTNAME=Console
> [4004] DEBUG:   COMMONPROGRAMFILES=C:\Program Files\Common Files
> [4004] DEBUG:   COMPUTERNAME=MH2
> [4004] DEBUG:   COMSPEC=C:\WINDOWS\system32\cmd.exe
> [4004] DEBUG:   CVS_RSH=/bin/ssh
> [4004] DEBUG:   CYGSERVER=server
> [4004] DEBUG:   CYGWIN=tty
> [4004] DEBUG:   HOME=/home/mh
> [4004] DEBUG:   HOMEDRIVE=C:
> [4004] DEBUG:   HOMEPATH=\Documents and Settings\mh
> [4004] DEBUG:   HOSTNAME=MH2
> [4004] DEBUG:
> INFOPATH=/usr/local/info:/usr/info:/usr/share/info:/usr/autotool
> /devel/info:/usr/autotool/stable/info:
> [4004] DEBUG:   JAVA_HOME=C:\j2sdk1.4.2
> [4004] DEBUG:   LOGONSERVER=\\MH2
> [4004] DEBUG:   MAKE_MODE=unix
> [4004] DEBUG:
> MANPATH=/usr/local/man:/usr/man:/usr/share/man:/usr/autotool/dev
> el/man::/usr/ssl/man:/usr/X11R6/man
> [4004] DEBUG:   NUMBER_OF_PROCESSORS=1
> [4004] DEBUG:   OLDPWD=/usr/bin
> [4004] DEBUG:   OS=Windows_NT
> [4004] DEBUG:
> PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/WIN
> DOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/
>
> Program Files/Common Files/Adaptec
> Shared/System:/cygdrive/c/PROGRA~1/ULTRAE~1:/
> cygdrive/c/Program Files/nasm:/cygdrive/c/Program
> Files/cdrecord:/cygdrive/c/j2s
> dk1.4.2/bin:/cygdrive/c/java/apache-ant-1.6.1/bin:/usr/bin
> [4004] DEBUG:   PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
> [4004] DEBUG:   PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig
> [4004] DEBUG:   PROCESSOR_ARCHITECTURE=x86
> [4004] DEBUG:   PROCESSOR_IDENTIFIER=x86 Family 6 Model 9 Stepping 5,
> GenuineInt
> el
> [4004] DEBUG:   PROCESSOR_LEVEL=6
> [4004] DEBUG:   PROCESSOR_REVISION=0905
> [4004] DEBUG:   PROGRAMFILES=C:\Program Files
> [4004] DEBUG:   PROMPT=$P$G
> [4004] DEBUG:   PS1=\[\033]0;\w\007
>         \033[32m\]\u@\h \[\033[33m\w\033[0m\]
>         $
> [4004] DEBUG:   PWD=/home/mh
> [4004] DEBUG:   SESSIONNAME=Console
> [4004] DEBUG:   SHLVL=1
> [4004] DEBUG:   SYSTEMDRIVE=C:
> [4004] DEBUG:   SYSTEMROOT=C:\WINDOWS
> [4004] DEBUG:   TEMP=/cygdrive/c/DOCUME~1/mh/LOCALS~1/Temp
> [4004] DEBUG:   TERM=cygwin
> [4004] DEBUG:   TMP=/cygdrive/c/DOCUME~1/mh/LOCALS~1/Temp
> [4004] DEBUG:   USER=mh
> [4004] DEBUG:   USERDOMAIN=MH2
> [4004] DEBUG:   USERNAME=mh
> [4004] DEBUG:   USERPROFILE=C:\Documents and Settings\mh
> [4004] DEBUG:   WINDIR=C:\WINDOWS
> [4004] DEBUG:   _=/usr/bin/postmaster
> [4004] DEBUG:   TZ=RST-1RST-2,M3.5.0/2,M10.5.0/3
> [4004] DEBUG:  -----------------------------------------
> [4004] DEBUG:  searching PATH for executable
> [4004] DEBUG:  could not stat "/usr/local/bin/postgres": No such file
> or  directo
> ry
> [4004] DEBUG:  found "/usr/bin/postgres" using PATH
> [4004] DEBUG:  invoking IpcMemoryCreate(size=10461184)
> Bad system call
>
> I tryed reinstalling the postgresql packages (7.3.1) from cygwin, but I
> have not ran a initdb yet. Any idea's?
> I would be very glad for any reply that could help solving this. Thanks.
>
> Regards,
> Martin
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
>      joining column's datatypes do not match
>

pgsql-cygwin by date:

Previous
From: mike g
Date:
Subject: Re: Cyrwin reliable ? Win XP Home edition
Next
From: "Martin Husted Hartvig"
Date:
Subject: Re: Postgresql under cygwin just stopped working.