Opened 8 years ago

Closed 7 years ago

#1781 closed defect (worksforme)

Window installer freezes with blank password

Reported by: realityexists Owned by: pramsey
Priority: medium Milestone: PostGIS 2.0.1
Component: postgis Version: 2.0.x
Keywords: Cc:

Description

Run the Windows installer for 2.0.0, PostgreSQL 9.1, 32-bit and leave the password blank for the postgres user when prompted. If the actual password is not blank the installer freezes at "Checking for existing PostGIS installation...". I can see in Process Explorer that it's running

"C:\Program Files (x86)\PostgreSQL\9.1\bin\psql.exe"  -d template_postgis_20 -U postgres -h localhost -c "SELECT version();" 

which is probably trying to prompt for a password, but doesn't have any visible window. Even the cancel button is disabled, so I had to kill psql.exe to abort.

Change History (9)

comment:1 Changed 8 years ago by robe

Which one are you using? I repackaged setup files. I'll test again. I know the one I had originally had issues. The latest one is called (has a -2)

http://www.postgis.org/download/windows/pg91/postgis-pg91-setup-2.0.0-2.exe

comment:2 Changed 8 years ago by robe

just tried the above on my server again and seems to go thru fine but that may not mean anything.

Also looks like you have a 64-bit system :) Can you do me a favor and try out the 64-bit installer as well? You'll need ot install 64-bit postgresql if you don't have it. It should automatically detect the right port etc.

comment:3 Changed 8 years ago by realityexists

Yes, that was the installer I used. Incidentally, if I entered an incorrect password it proceeded anyway. (Well, tried to - it failed for another reason: libgeos DLL in use. So I had to stop the PostgreSQL service, ran the installer and it installed but failed to create the template DB, started the service, ran the installer again and it finally succeeded.)

Yes, I'm running Windows 7 x64. The x64 installer ran fine for me even without entering a password. That was a brand new installation of PostgreSQL, though. The 32-bit one had beta versions of PostGIS installed many times, spatially-enabled DBs with open connections to them, probably some config changes, etc.

comment:4 Changed 8 years ago by robe

hmm so yours could be an isolated incident because you had dlls in use? I tried on a windows 2003 64-bit and a 2008 64-bit the 32-bit and it seemed to run okay on both of those.

Regarding the proceeding with the wrong password. That's expected if you have your local set to trust. Then it actually doesn't matter which password you type in since postgresql will accept it.

comment:5 Changed 8 years ago by realityexists

The DLL in use error was after the freeze, so that's separate. (I didn't raise another ticket about it, because I didn't note down the exact error message, but I presume the DLL was in use by PostGIS itself, which wouldn't be unexpected.)

I don't have "trust" configured in pg_hba.conf, but somehow psql.exe allows user postgres in without a password. I just realised why that may be: the password for that user is now the same as for the PostgreSQL service Windows account. It wasn't before and that was when the freezing issue occurred. While trying to repro it I realised I don't actually know the postgres user password and changed it (using another superuser account) to be the same as the service user password. After that it went through fine with any password.

comment:6 Changed 8 years ago by robe

Hmm that still doesn't make sense since PostGIS only cares about the postgres database account, not the service one. You sure you don't have a ::1/128 set to trust or possibly you have it set to ident. ident would then work if the account you are logging in with is the same as the postgres service account. Then again if you are running the install as administrator, ident wouldn't let you get by without a password either.

I think windows 7 uses by default IPv6 not IPV4. so it would use the entry marked ::1/128

comment:7 Changed 8 years ago by realityexists

No, this is what I have:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

comment:8 Changed 8 years ago by realityexists

Wait, I figured it out. I have the password saved in pgpass.conf under my user profile. When I delete it from there psql.exe prompts for a password. It probably was not saved in there before, when the freeze occurred.

comment:9 Changed 7 years ago by robe

Resolution: worksforme
Status: newclosed

can't replicate this issue

Note: See TracTickets for help on using tickets.