Обсуждение: BUG #5667: install failure
The following bug has been logged online: Bug reference: 5667 Logged by: Roedy Green Email address: roedyg@mindprod.com PostgreSQL version: 9.0.0. Operating system: Windows 7, 64 bit Description: install failure Details: I executed postgresql-9.0.0-1-windows_x64.exe It died with a message: "An error occured executing VC++ runtime installer." I had similar problems with version 8. People gave me various things to try. None of it worked. I gave up on PostgresSQL. I decided to try again with v 9.0.0. I would really like it you stopped using this flaky installer.
On 21/09/2010 4:49 AM, Roedy Green wrote: > > The following bug has been logged online: > > Bug reference: 5667 > Logged by: Roedy Green > Email address: roedyg@mindprod.com > PostgreSQL version: 9.0.0. > Operating system: Windows 7, 64 bit > Description: install failure > Details: > > I executed postgresql-9.0.0-1-windows_x64.exe > It died with a message: > > "An error occured executing VC++ runtime installer." > > I had similar problems with version 8. People gave me various things to > try. None of it worked. I gave up on PostgresSQL. I decided to try again > with v 9.0.0. > > I would really like it you stopped using this flaky installer. One might perhaps question whether your system has a part in the flakiness. Your experience is unusual, not the norm, and there is something odd going on with your machine if the VC++ runtime won't install. I don't see your name in my local mailing list archives, but they only go back some 3 months. A Google search and an online archives search for your name and "runtime installer" doesn't find anything relevant. Can you provide a link to your previous question(s) in the archives so we can get some background on this issue? It'd also help to know: - If you run the installer from the command line as: postgresql-9.0.0-1-windows.exe --install_runtimes 0 does it install without error? - If the VC++ runtime installer executes successfully when run stand- alone? You can unpack the VC++ runtime installer by running the Pg installer as: postgresql-9.0.0-1-windows.exe --extract-only 1 --prefix "%TEMP%\pg9" Now you can open an Administrator-rights cmd.exe window by hitting Start, entering "command", waiting until "command prompt" appears, right-clicking on it and choosing "run as administrator". Into the cmd.exe window that appears enter: cd "%TEMP%\pg9\installer" dir You'll see the Visual C++ runtime installer (vcredist) and the vbscript used to invoke it. Run the vbcscript by typing "install" and pressing tab, pressing space, typing "vcredist" and pressing tab, then pressing enter. You should get a message saying vcredist is being installed, a progress bar, then a message saying it installed successfully. - If you have a virus scanner or software firewall on your system. - If you have the same problem on a clean Windows 7 install, prior to adding a virus scanner or other local software. I realise this might not be practical for you to test, but it'd be useful for diagnostic purposes. -- Craig Ringer Tech-related writing at http://soapyfrogs.blogspot.com/
On Mon, Sep 20, 2010 at 4:49 PM, Roedy Green <roedyg@mindprod.com> wrote: > I executed =A0postgresql-9.0.0-1-windows_x64.exe > It died with a message: > > "An error occured executing VC++ runtime installer." > > I had similar problems with version 8. =A0People gave me various things to > try. None of it worked. =A0I gave up on PostgresSQL. =A0I decided to try = again > with v 9.0.0. > > I would really like it you stopped using this flaky installer. Hmm, if by that you mean 8.0, a lot of things have changed since then. I'm not even sure we're using the same installer technology now that we did then. But in any case it does work for an awful lot of other people. I installed 9.0rc1 on a Windows 7 VM just a few weeks ago, and it worked fine. Of course, that does nothing to solve your problem. But we do need to try to understand what is different about your system than the systems of people who are not having this problem, because otherwise it's pretty hard to fix. --=20 Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise Postgres Company
Roedy replied only to me, not to the list, so I'm reproducing his post verbatim below. Sorry about the top-post, but I want to preserve his reply intact. Roedy: please use "reply all" so others can benefit from the discussion too. Roedy notes in his mail that "I use the Take Command command interpreter from JPSoft to launch the exe". Presumably the installer executable, though it'd be nice to confirm this. I'm wondering if Take Command might be messing up the environment, possibly in a way that's causing vbs execution to fail. A good start would be to take this Take Command software out of the equation completely and see if the problem can still be reproduced. Roedy: please try running the installer directly from the normal Windows shell, or preferably on a machine without Take Command on it, and see if you can reproduce the problem. On 21/09/2010 1:53 PM, Roedy Green wrote: > On 2010-09-20 10:20 PM, Craig Ringer wrote: >> On 21/09/2010 4:49 AM, Roedy Green wrote: >>> >>> The following bug has been logged online: >>> >>> Bug reference: 5667 >>> Logged by: Roedy Green >>> Email address: roedyg@mindprod.com >>> PostgreSQL version: 9.0.0. >>> Operating system: Windows 7, 64 bit >>> Description: install failure >>> Details: >>> >>> I executed postgresql-9.0.0-1-windows_x64.exe >>> It died with a message: >>> >>> "An error occured executing VC++ runtime installer." >>> >>> I had similar problems with version 8. People gave me various things to >>> try. None of it worked. I gave up on PostgresSQL. I decided to try again >>> with v 9.0.0. >>> >>> I would really like it you stopped using this flaky installer. >> >> One might perhaps question whether your system has a part in the flakiness. >> Your experience is unusual, not the norm, and there is something odd going on >> with your machine if the VC++ runtime won't install. > > It is a quite vanilla machine. About the only thing that could be a problem is > having some older VC++ runtimes installed. When I was discussing this before, > people seemed to think the problems I was having were common, though for some > reason mine were intractable. I just thought of something else unusual. I use > the Take Command command interpreter from JPSoft to launch the exe. Since there > are no scripts, I don't see how that would give trouble. > > > >> >> I don't see your name in my local mailing list archives, but they only go back >> some 3 months. A Google search and an online archives search for your name and >> "runtime installer" doesn't find anything relevant. Can you provide a link to >> your previous question(s) in the archives so we can get some background on >> this issue? > > I'm sorry I don't remember. I would have simply googled PostgresSQL Forum and > asked there. The behaviour I am getting now seems the same as I got with > version 8. > >> >> >> >> It'd also help to know: >> >> >> >> - If you run the installer from the command line as: >> >> postgresql-9.0.0-1-windows.exe --install_runtimes 0 >> >> does it install without error? > > I get much further, however it still fails. > > [A screenshot is included at this point of a Pg error dialog reporting:] > > "Problem running post-install step. Installation may not complete correctly. The database cluster initialisation failed." >> >> >> >> - If the VC++ runtime installer executes successfully when run stand- >> alone? You can unpack the VC++ runtime installer by running the Pg >> installer as: >> >> postgresql-9.0.0-1-windows.exe --extract-only 1 --prefix "%TEMP%\pg9" >> >> Now you can open an Administrator-rights cmd.exe window by hitting >> Start, entering "command", waiting until "command prompt" appears, >> right-clicking on it and choosing "run as administrator". Into the >> cmd.exe window that appears enter: >> >> cd "%TEMP%\pg9\installer" >> dir > > >> >> You'll see the Visual C++ runtime installer (vcredist) and the >> vbscript used to invoke it. >> >> Run the vbcscript by typing "install" and pressing tab, pressing >> space, typing "vcredist" and pressing tab, then pressing enter. >> >> You should get a message saying vcredist is being installed, a >> progress bar, then a message saying it installed successfully. >> > > I have not tried this yet. I gather I was only supposed to do it the installer > succeeded. > > >> - If you have a virus scanner or software firewall on your system. > no. I just run defender in batch mode. > >> >> >> - If you have the same problem on a clean Windows 7 install, prior to adding a >> virus scanner or other local software. I realise this might not be practical >> for you to test, but it'd be useful for diagnostic purposes > I dread that. It takes days to get everything tweaked again. Would a safe-mode > install help? > > > > -- Craig Ringer Tech-related writing at http://soapyfrogs.blogspot.com/
On 28/09/10 15:51, Roedy Green wrote: > >>>> >>>> It'd also help to know: >>>> >>>> >>>> >>>> - If you run the installer from the command line as: >>>> >>>> postgresql-9.0.0-1-windows.exe --install_runtimes 0 >>>> >>>> does it install without error? >>> > I ran this using the standard Windows cmd processor. I got exactly the > same behaviour as with JPSoft Take Command. I assume you mean "the same behaviour as the above command run with Take Command" - because the initial issue you reported was with the runtimes failing to install, and the above command shouldn't have attempted to install the runtimes. Did you try running the installer in extract-only mode, and then running the runtime install script manually? This would be a useful diagnostic test. I explained it in my previous mail, but you said you hadn't tried it yet because you thought it only had to be done when the installer succeeded. The point is that you run the installer in extract-only mode, which should succeed if the problem is in fact with the scripts, then you run the scripts manually. I'll quote what I said earlier: ------------------------------ - Does the VC++ runtime installer executes successfully when run stand- alone? You can unpack the VC++ runtime installer by running the Pg installer as: postgresql-9.0.0-1-windows.exe --extract-only 1 --prefix "%TEMP%\pg9" This should succeed, even if the installer normally fails. If it still fails, please mention that along with the error it reports, and don't try to continue with these instructions. If the extract-only installer run does succeed: Now you can open an Administrator-rights cmd.exe window by hitting Start, entering "command", waiting until "command prompt" appears, right-clicking on it and choosing "run as administrator". Into the cmd.exe window that appears enter: cd "%TEMP%\pg9\installer" dir You'll see the Visual C++ runtime installer (vcredist) and the vbscript used to invoke it. Run the vbcscript by typing "install" and pressing tab, pressing space, typing "vcredist" and pressing tab, then pressing enter. You should get a message saying vcredist is being installed, a progress bar, then a message saying it installed successfully. ------------------------------ Anyway, this is looking pretty strange. It's really hard to know what on your machine is throwing the installer out of whack, and without knowing what's going on it's hard to know what if anything can be done to make the installer more robust. Do you have any Group Policy on the machine, by any chance? There seems to be something wrong with execution of the vbs scripts on your machine, but it's not clear what exactly it is. I wonder how many of the other installer-related issues are with vbs script execution too? At this point it's beyond anything I can do without access to your machine and/or the installer sources. I don't have either. If I were sitting at your machine right now, I'd be firing up Process Monitor from sysinternals and leaving it to run for a little while to build an impression of the background activity on the machine. Then I'd fire up the PostgreSQL installer and record the activity in Process Monitor. After that I'd spend an extended period of rather tedious time poring over the logs trying to see what might be going wrong. I guess you could possibly install Process Monitor and the rest of the sysinternals suite from: http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx then collect the process monitor data, export it, upload it somewhere, and post a link on the list. I seem to remember that process monitor's export format is MUCH less useful than it's live format, though, so I don't know if it'll be much help. Hopefully one of the EnterpriseDB folks will be able to look into what's happening here, time permitting. They're doing the Windows installer as a free service to the community after all. I'm toward the end of what I can do in terms of diagnosis and data collection. -- Craig Ringer Tech-related writing: http://soapyfrogs.blogspot.com/
On Tue, Sep 28, 2010 at 9:04 AM, Craig Ringer <craig@postnewspapers.com.au> wrote: > Hopefully one of the EnterpriseDB folks will be able to look into what's > happening here, time permitting. They're doing the Windows installer as > a free service to the community after all. I'm toward the end of what I > can do in terms of diagnosis and data collection. Thanks Craig - I've been keeping half an eye on this thread, but otherwise leaving you to it :-) Can you post the logfile from %TEMP% please Roedy? Also, is there anything on your machine that would prevent vbscripts from running in the cscript.exe scripting host? -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise Postgres Company